summaryrefslogtreecommitdiff
path: root/compiler
diff options
context:
space:
mode:
authorEdward Z. Yang <ezyang@cs.stanford.edu>2016-08-29 21:20:58 -0700
committerEdward Z. Yang <ezyang@cs.stanford.edu>2016-10-08 00:20:34 -0700
commit3b9e45e587447b20e7a8cbe33424f9a4b1b4ec72 (patch)
tree7eced6803ba98086d47b2abc91fe1dc9306c0c5c /compiler
parent082991a89174f814ab12535a0ffbc06183d917e1 (diff)
downloadhaskell-3b9e45e587447b20e7a8cbe33424f9a4b1b4ec72.tar.gz
Note about external interface changes.
Signed-off-by: Edward Z. Yang <ezyang@cs.stanford.edu>
Diffstat (limited to 'compiler')
-rw-r--r--compiler/main/GhcMake.hs5
1 files changed, 5 insertions, 0 deletions
diff --git a/compiler/main/GhcMake.hs b/compiler/main/GhcMake.hs
index 0705b14962..0adee6e738 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