Ditch static flags
This patch converts the 4 lasting static flags (read from the command line and unsafely stored in immutable global variables) into dynamic flags. Most use cases have been converted into reading them from a DynFlags. In cases for which we don't have easy access to a DynFlags, we read from 'unsafeGlobalDynFlags' that is set at the beginning of each 'runGhc'. It's not perfect (not thread-safe) but it is still better as we can set/unset these 4 flags before each run when using GHC API. Updates haddock submodule. Rebased and finished by: bgamari Test Plan: validate Reviewers: goldfire, erikd, hvr, austin, simonmar, bgamari Reviewed By: simonmar Subscribers: thomie Differential Revision: https://phabricator.haskell.org/D2839 GHC Trac Issues: #8440
Showing
- compiler/backpack/DriverBkp.hs 6 additions, 5 deletionscompiler/backpack/DriverBkp.hs
- compiler/basicTypes/BasicTypes.hs 3 additions, 3 deletionscompiler/basicTypes/BasicTypes.hs
- compiler/basicTypes/Id.hs 2 additions, 2 deletionscompiler/basicTypes/Id.hs
- compiler/basicTypes/RdrName.hs 3 additions, 3 deletionscompiler/basicTypes/RdrName.hs
- compiler/basicTypes/VarEnv.hs 4 additions, 4 deletionscompiler/basicTypes/VarEnv.hs
- compiler/cmm/CmmParse.y 0 additions, 1 deletioncompiler/cmm/CmmParse.y
- compiler/coreSyn/CoreLint.hs 11 additions, 9 deletionscompiler/coreSyn/CoreLint.hs
- compiler/deSugar/Coverage.hs 2 additions, 2 deletionscompiler/deSugar/Coverage.hs
- compiler/ghc.cabal.in 0 additions, 1 deletioncompiler/ghc.cabal.in
- compiler/ghc.mk 0 additions, 1 deletioncompiler/ghc.mk
- compiler/ghci/Linker.hs 5 additions, 3 deletionscompiler/ghci/Linker.hs
- compiler/ghci/RtClosureInspect.hs 12 additions, 13 deletionscompiler/ghci/RtClosureInspect.hs
- compiler/hsSyn/HsExpr.hs 8 additions, 7 deletionscompiler/hsSyn/HsExpr.hs
- compiler/hsSyn/HsTypes.hs 2 additions, 6 deletionscompiler/hsSyn/HsTypes.hs
- compiler/iface/BinIface.hs 1 addition, 1 deletioncompiler/iface/BinIface.hs
- compiler/iface/IfaceSyn.hs 1 addition, 2 deletionscompiler/iface/IfaceSyn.hs
- compiler/iface/IfaceType.hs 10 additions, 8 deletionscompiler/iface/IfaceType.hs
- compiler/iface/LoadIface.hs 7 additions, 5 deletionscompiler/iface/LoadIface.hs
- compiler/llvmGen/LlvmCodeGen/Base.hs 2 additions, 2 deletionscompiler/llvmGen/LlvmCodeGen/Base.hs
- compiler/main/CmdLineParser.hs 1 addition, 2 deletionscompiler/main/CmdLineParser.hs
Loading
Please register or sign in to comment