diff options
author | Matthew Pickering <matthewtpickering@gmail.com> | 2021-04-14 08:50:26 +0100 |
---|---|---|
committer | Matthew Pickering <matthewtpickering@gmail.com> | 2021-04-15 10:24:10 +0100 |
commit | d8bf3d445cbfff223b6dd917f21a638fd4e2385a (patch) | |
tree | c8a85c348e766de5e9823fac26dcfe0490d4fce6 /compiler/GHC/Driver/Session.hs | |
parent | 79e5c8674d6bc46312efb31101889001951769d7 (diff) | |
download | haskell-wip/dynamic-too-recomp-c.tar.gz |
driver: Consider dyn_o files when checking recompilation in -cwip/dynamic-too-recomp-c
When -dynamic-too is enabled, there are two result files, .o and .dyn_o,
therefore we should check both to decide whether to set SourceModified
or not.
The whole recompilation logic is very messy, a more thorough refactor
would be beneficial in this area but this is the minimal patch to fix
this more high priority problem.
Fixes #17968 and hopefully #17534
Diffstat (limited to 'compiler/GHC/Driver/Session.hs')
-rw-r--r-- | compiler/GHC/Driver/Session.hs | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/compiler/GHC/Driver/Session.hs b/compiler/GHC/Driver/Session.hs index 969d63a54b..9b6ee1b626 100644 --- a/compiler/GHC/Driver/Session.hs +++ b/compiler/GHC/Driver/Session.hs @@ -985,9 +985,8 @@ positionIndependent dflags = gopt Opt_PIC dflags || gopt Opt_PIE dflags -- Core optimisation, then the backend (from Core to object code) is executed -- twice. -- --- The implementation is currently rather hacky: recompilation avoidance is --- broken (#17968), we don't clearly separate non-dynamic and dynamic loaded --- interfaces (#9176), etc. +-- The implementation is currently rather hacky, for example, we don't clearly separate non-dynamic +-- and dynamic loaded interfaces (#9176). -- -- To make matters worse, we automatically enable -dynamic-too when some modules -- need Template-Haskell and GHC is dynamically linked (cf |