[commit: ghc] master: Note about external interface changes. (3b9e45e)
git at git.haskell.org
git at git.haskell.org
Sat Oct 8 08:38:21 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/3b9e45e587447b20e7a8cbe33424f9a4b1b4ec72/ghc
>---------------------------------------------------------------
commit 3b9e45e587447b20e7a8cbe33424f9a4b1b4ec72
Author: Edward Z. Yang <ezyang at cs.stanford.edu>
Date: Mon Aug 29 21:20:58 2016 -0700
Note about external interface changes.
Signed-off-by: Edward Z. Yang <ezyang at cs.stanford.edu>
>---------------------------------------------------------------
3b9e45e587447b20e7a8cbe33424f9a4b1b4ec72
compiler/main/GhcMake.hs | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/compiler/main/GhcMake.hs b/compiler/main/GhcMake.hs
index 0705b14..0adee6e 100644
--- a/compiler/main/GhcMake.hs
+++ b/compiler/main/GhcMake.hs
@@ -601,6 +601,11 @@ unload hsc_env stable_linkables -- Unload everthing *except* 'stable_linkables'
- Note that objects are only considered stable if they only depend
on other objects. We can't link object code against byte code.
+
+ - Note that even if an object is stable, we may end up recompiling
+ if the interface is out of date because an *external* interface
+ has changed. The current code in GhcMake handles this case
+ fairly poorly, so be careful.
-}
checkStability
:: HomePackageTable -- HPT from last compilation
More information about the ghc-commits
mailing list