Ticket #5540: TypeRepEq.2.hs

File TypeRepEq.2.hs, 483 bytes (added by guest, 3 years ago)

TypeRepEq?.hs

Line 
1import Control.Concurrent
2import Control.Exception
3import Control.Monad
4import Data.Typeable
5
6main :: IO ()
7main =
8 do { fin1 <- newEmptyMVar
9    ; fin2 <- newEmptyMVar
10
11    ; forkIO $ return (typeOf ()) >>= evaluate >>= putMVar fin1
12    ; forkIO $ return (typeOf ()) >>= evaluate >>= putMVar fin2
13   
14    ; t1 <- takeMVar fin1
15    ; t2 <- takeMVar fin2
16    ; if (t1 /= t2)
17        then putStrLn $ "typeOf " ++ show t1 ++ " /= typeOf " ++ show t2
18        else putStrLn "Ok"
19    }