Wow.  Could you open a ticket?

I just tried with 8.2.2 which is what I have on this laptop, but it printed 
"all is well".  Does that mean it was fine in 8.2, went wrong in 8.4.1 and was 
fixed in 8.4.2?

Simon

| -----Original Message-----
| From: Evan Laforge <qdun...@gmail.com>
| Sent: 02 May 2018 19:39
| To: Simon Peyton Jones <simo...@microsoft.com>
| Cc: ghc-devs@haskell.org
| Subject: Re: ghc 8.4.1 and trac 13930
| 
| Ok, here's a short module:
| 
| import qualified Control.Exception as Exception
| 
| main :: IO ()
| main = do
|     unserialize
|     putStrLn "all is well"
| 
| unserialize :: IO Char
| unserialize =
|     if definitelyTrue
|         then do
|             return 'a'
|         else do
|             Exception.evaluate (error "wrong place")
| 
| {-# NOINLINE definitelyTrue #-}
| definitelyTrue :: Bool
| definitelyTrue = True
| 
| 
| When compiled with -O on 8.4.1, this should print "wrong place".
| Without -O, or with 8.4.2, or if True can be inlined, or without
| evaluate, all is well.
_______________________________________________
ghc-devs mailing list
ghc-devs@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devs

Reply via email to