recompilation bug with -O
Recompilation with -O should also rebuild Main.hs in the attached test application consisting of Main.hs and X.hs.
Test case:
-
build the app with GHC --make -O Main.hs
-
run Main (output = B)
-
change and save in X.hs
x = D { f = B }
to
x = D { f = A }
-
rebuild the app with GHC --make -O Main.hs (recompiles only X.hs)
-
run Main (unexpected output = B)
-
force recompilation of both X.hs and Main.hs
-
run Main (output = A)
The bug is in -O. A similar test with f :: String instead of f :: D2 runs without problems.
Problem is tested positive on WIN GHC 7.0.2, OpenSuse GHC 6.12.3, Mac OS X GHC 7.0.3 and GHC 7.2.1 (MAC?).
for more detail see http://sourceforge.net/apps/trac/ampersand/ticket/172.
the closed #1959 (closed) and #3166 (closed) describe similar problems.
Trac metadata
Trac field | Value |
---|---|
Version | 7.2.1 |
Type | Bug |
TypeOfFailure | OtherFailure |
Priority | normal |
Resolution | Unresolved |
Component | Compiler |
Test case | |
Differential revisions | |
BlockedBy | |
Related | |
Blocking | |
CC | |
Operating system | |
Architecture |