deriving Read fails on infix data constructors with record syntax
The example below successfully performs the show
, but reads
returns an empty list. It fails in both GHCi and GHC. It succeeds if you replaces the infix symbol with a name.
module Main where
data A = (:<>:) { x :: Int, y :: Int } deriving (Read, Show)
t :: A
t = 1 :<>: 2
s :: String
s = show t
r :: [(A,String)]
r = reads s
main :: IO ()
main = do putStrLn s
putStrLn (show r)
Trac metadata
Trac field | Value |
---|---|
Version | 6.8.3 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |