Skip to content

-no-link doesn't remove Link nodes from ModuleGraph

The correct implementation of -no-link is to not construct a build plan/module graph which contains link nodes.

What currently happens is the build graph contains the link node (as evidenced by the 8 steps of the build plan) but the last step is just skipped.. which could be quite confusing.

[1 of 8] Compiling GHCi.UI.Info     ( ghc/GHCi/UI/Info.hs, _new/stage1/ghc/build/GHCi/UI/Info.o, _new/stage1/ghc/build/GHCi/UI/Info.dyn_o )
[2 of 8] Compiling GHCi.UI.Monad    ( ghc/GHCi/UI/Monad.hs, _new/stage1/ghc/build/GHCi/UI/Monad.o, _new/stage1/ghc/build/GHCi/UI/Monad.dyn_o )
[3 of 8] Compiling GHCi.UI.Tags     ( ghc/GHCi/UI/Tags.hs, _new/stage1/ghc/build/GHCi/UI/Tags.o, _new/stage1/ghc/build/GHCi/UI/Tags.dyn_o )
[4 of 8] Compiling GHCi.Util        ( ghc/GHCi/Util.hs, _new/stage1/ghc/build/GHCi/Util.o, _new/stage1/ghc/build/GHCi/Util.dyn_o )
[5 of 8] Compiling GHCi.Leak        ( ghc/GHCi/Leak.hs, _new/stage1/ghc/build/GHCi/Leak.o, _new/stage1/ghc/build/GHCi/Leak.dyn_o )
[6 of 8] Compiling GHCi.UI          ( ghc/GHCi/UI.hs, _new/stage1/ghc/build/GHCi/UI.o, _new/stage1/ghc/build/GHCi/UI.dyn_o )
[7 of 8] Compiling Main             ( ghc/Main.hs, _new/stage1/ghc/build/Main.o, _new/stage1/ghc/build/Main.dyn_o )
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information