
#10143: Separate PprFlags (used by Outputable) from DynFlags -------------------------------------+------------------------------------- Reporter: ezyang | Owner: ezyang Type: task | Status: new Priority: normal | Milestone: Component: Compiler | Version: 7.11 Resolution: | Keywords: Operating System: Unknown/Multiple | Architecture: | Unknown/Multiple Type of failure: None/Unknown | Test Case: Blocked By: | Blocking: Related Tickets: #10961 | Differential Rev(s): Wiki Page: | -------------------------------------+------------------------------------- Comment (by dalaing): Here's the stuff currently being used in SDoc computations, pulled out into 'PprFlags': {{{ data PprFlags = PprFlags { pprCols :: Int , pprUserLength :: Int , useUnicode :: Bool , useUnicodeSyntax :: Bool , targetPlatform :: Platform , pkgState :: PackageState , suppressUniques :: Bool , suppressModulePrefixes :: Bool , suppressVarKinds :: Bool , errorSpans :: Bool , reverseErrors :: Bool , printExplicitRuntimeReps :: Bool , printExplicitCoercions :: Bool , printExplicitForalls :: Bool , printExplicitKinds :: Bool , printEqualityRelations :: Bool , suppressCoercions :: Bool , suppressTypeSignatures :: Bool , suppressTypeApplications :: Bool , suppressIdInfo :: Bool , suppressUnfoldings :: Bool , caseAsLet :: Bool , showTicks :: Bool , printTypecheckerElaboration :: Bool , sccProfilingOn :: Bool , splitSections :: Bool , impredicativeTypes :: Bool , llvmFillUndefWithGarbage :: Bool , platformConstants :: PlatformConstants } }}} There might be a few more - I was nearly done when this conversation started, and figured I should pause until it was clear that something like this was wanted. Most of the signature changes are in the CmmCode, where there are loads of functions that currently take 'DynFlags' which I changed to take 'PlatformConstants', since there are large chunks of code that only need the 'DynFlags' in order to access 'PlatformConstants', and these functions get used in the pretty printer / codegen intersection. -- Ticket URL: http://ghc.haskell.org/trac/ghc/ticket/10143#comment:16 GHC http://www.haskell.org/ghc/ The Glasgow Haskell Compiler