patch applied (ghc): Fix an old but subtle bug in the Simplifier
Simon Peyton Jones
simonpj at microsoft.com
Mon Nov 5 11:47:18 EST 2007
Mon Nov 5 08:13:14 PST 2007 simonpj at microsoft.com
* Fix an old but subtle bug in the Simplifier
I got a Core Lint failure when compiling System.Win32.Info in the
Win32 package. It was very delicate: adding or removing a function
definition elsewhere in the module (unrelated to the error) made the
error go away.
Happily, I found it. In SimplUtils.prepareDefault I was comparing an
InId with an OutId. We were getting a spurious hit, and hence doing
a bogus CaseMerge.
This bug has been lurking ever since I re-factored the way that case
expressions were simplified, about 6 months ago!
M ./compiler/simplCore/SimplEnv.lhs -3 +5
M ./compiler/simplCore/SimplUtils.lhs -18 +17
M ./compiler/simplCore/Simplify.lhs -2 +2
More information about the Cvs-ghc
mailing list