Skip to content

Numeric literal printed wrong in error message

Compile the following with -Wall

default (T)

data T = T deriving (Eq, Ord, Read, Show)
instance Num T
instance Fractional T

main = interact $ show . (< 1e400) . read

The error message says

Bug.hs:7:28:
    Warning: Defaulting the following constraint(s) to type `T'
             `Fractional b'
               arising from the literal `Infinity' at Bug.hs:7:28-32

There is no literal Infinity in my program, I wrote 1e400, which could be a perfectly good literal for the type T. I don't wanted printed as Infinity.

Trac metadata
Trac field Value
Version 6.9
Type Bug
TypeOfFailure OtherFailure
Priority normal
Resolution Unresolved
Component Compiler
Test case
Differential revisions
BlockedBy
Related
Blocking
CC lennart@augustsson.net
Operating system
Architecture
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information