diff options
author | Sylvain Henry <sylvain@haskus.fr> | 2020-05-27 19:12:58 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2020-06-27 11:57:11 -0400 |
commit | a04020b88d4935d675f989806aff251f459561e9 (patch) | |
tree | 716aa06689f45af4fa922d89024062df60d65423 /ghc | |
parent | a74ec37c9d7679a5563ab86a8759c79c3c5de6f0 (diff) | |
download | haskell-a04020b88d4935d675f989806aff251f459561e9.tar.gz |
DynFlags: don't store buildTag
`DynFlags.buildTag` was a field created from the set of Ways in
`DynFlags.ways`. It had to be kept in sync with `DynFlags.ways` which
was fragile. We want to avoid global state like this (#17957).
Moreover in #14335 we also want to support loading units with different
ways: target units would still use `DynFlags.ways` but plugins would use
`GHC.Driver.Ways.hostFullWays`. To avoid having to deal both with build
tag and with ways, we recompute the buildTag on-the-fly (should be
pretty cheap) and we remove `DynFlags.buildTag` field.
Diffstat (limited to 'ghc')
-rw-r--r-- | ghc/Main.hs | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/ghc/Main.hs b/ghc/Main.hs index 14e2b8048c..541c07bdfa 100644 --- a/ghc/Main.hs +++ b/ghc/Main.hs @@ -198,7 +198,7 @@ main' postLoadMode dflags0 args flagWarnings = do let dflags4 = case lang of HscInterpreted | not (gopt Opt_ExternalInterpreter dflags3) -> let platform = targetPlatform dflags3 - dflags3a = updateWays $ dflags3 { ways = hostFullWays } + dflags3a = dflags3 { ways = hostFullWays } dflags3b = foldl gopt_set dflags3a $ concatMap (wayGeneralFlags platform) hostFullWays |