SwitchResult(..),
HscLang(..),
DynFlag(..), -- needed non-abstractly by DriverFlags
- DynFlags, -- abstract
+ DynFlags(..),
intSwitchSet,
switchIsOn,
dopt_CoreToDo,
dopt_StgToDo,
dopt_HscLang,
+ dopt_OutName,
-- profiling opts
opt_AutoSccsOnAllToplevs,
deriving (Eq)
data DynFlags = DynFlags {
- coreToDo :: CoreToDo,
- stgToDo :: StgToDo,
- hscLang :: HscLang,
- flags :: [DynFlag]
+ coreToDo :: CoreToDo,
+ stgToDo :: StgToDo,
+ hscLang :: HscLang,
+ hscOutName :: String, -- name of the file in which to place output
+ flags :: [DynFlag]
}
dopt :: DynFlag -> DynFlags -> Bool
dopt_StgToDo :: DynFlags -> StgToDo
dopt_StgToDo = stgToDo
+dopt_OutName :: DynFlags -> String
+dopt_OutName = hscOutName
+
data HscLang
- = HscC String -- String is the filename to put output into
- | HscAsm String -- ditto
- | HscJava String -- ditto
+ = HscC
+ | HscAsm
+ | HscJava
| HscInterpreter
dopt_HscLang :: DynFlags -> HscLang