module Main where

data Test = Test { field :: Int } deriving (Eq,Show,Read)

main = putStrLn $
       if read (show (Test {field=(-1)})) == Test (-1)
       then "works" else "not"

-- The point here is that if 'show' generates
--      Test { field=-1 }
-- the lexer things the '=-' is one lexeme, which does not work

