#7548: GHC API dependency analysis is broken
----------------------------+-----------------------------------------------
Reporter: MikolajKonarski | Owner:
Type: bug | Status: new
Priority: normal | Component: GHC API
Version: 7.4.2 | Keywords:
Os: Linux | Architecture: x86_64 (amd64)
Failure: None/Unknown | Blockedby:
Blocking: | Related:
----------------------------+-----------------------------------------------
Sometimes, when a module fails to compile, GHC API invalidates other
modules that do not depend on it (the attached example shows that) and
sometimes the opposite --- it does not invalidate modules it should (I
haven't created a standalone example with that so far). The problem is
deterministic, but depends on the order in which targets are added using
addSingle.
Generally, it seems if module B imports A, it correctly assumes A does not
depend on B, but if B does not import A, it sometimes assumes A must
depend on B, even if neither mentions the other. See comments in the
example.
To reproduce, compile the example with
ghc --make typecheck-dir.hs -package ghc-7.4.2
create directory ./tmp and run typecheck-dir. You should see that module
XXX is needlessly recompiled.
--
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/7548>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs