GHC doesn't respect the imprecise exceptions semantics
|Reported by:||neil||Owned by:|
|Type of failure:||None/Unknown||Test Case:||cg059|
|Related Tickets:||Differential Rev(s):|
Yhc bug 122 appears to be a GHC bug: http://code.google.com/p/yhc/issues/detail?id=122 , discussed here: http://thread.gmane.org/gmane.comp.lang.haskell.yhc/720
To reproduce: Download and install Yhc two separate times, once doing "scons" to build, once doing "scons type=release". Follow the steps outlined in the above bug report with the standard version, and it gives the correct behaviour. Try again with the release version and it gives the wrong behaviour. GHC 6.4.2 works fine. The difference between the two is that type=release builds with -O, normal doesn't.
Changing the code slightly, by introducing "obvious" assert statements in Package.hs makes the bug go away. Creating reduced tests cases didn't get very far...
This has been replicated on Mac and Windows with GHC 6.6. If you have any further questions about the code then feel free to email me or the Yhc list. Marking as severity=major because silently doing something different is about as bad as they come.
Thanks to Thorkil for doing the detective work to track this down as far as GHC.
Change History (20)
comment:9 Changed 10 years ago by
|Milestone:||6.6.1 → _|_|
|Priority:||normal → low|
|severity:||major → normal|
|Status:||closed → reopened|
comment:11 Changed 10 years ago by
|Summary:||GHC generates incorrect code with -O for Haskell 98 program → GHC doesn't respect the imprecise exceptions semantics|