[GHC] #7277: Recompilation check fails for TH unless functions are inlined
GHC
cvs-ghc at haskell.org
Wed Oct 3 12:57:19 CEST 2012
#7277: Recompilation check fails for TH unless functions are inlined
---------------------------------+------------------------------------------
Reporter: orenbenkiki | Owner:
Type: bug | Status: new
Priority: high | Milestone: 7.6.2
Component: Template Haskell | Version: 7.4.2
Keywords: | Os: Unknown/Multiple
Architecture: Unknown/Multiple | Failure: Incorrect result at runtime
Difficulty: Unknown | Testcase:
Blockedby: | Blocking:
Related: 481 |
---------------------------------+------------------------------------------
Comment(by simonmar):
Yes, good bug. I think this is the result of an unsafe optimisation in
the dependency checker: it currently assumes that if none of the modules
below the current module were recompiled, then the current module does not
need to be recompiled, even if it uses TH. However this ignores the fact
that other packages may have changed, and we have no way to detect that
(the hash only records ABI changes, not semantic changes).
So I'll have to back off from this optimisation and always recompile a
module that uses TH. However I can imagine this is going to result in
complaints from users that things get recompiled even when obviously
nothing has changed. Perhaps we could record a hash of the object code
for a package or something? Ideas anyone?
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7277#comment:2>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the Glasgow-haskell-bugs
mailing list