fix for compiling the base package with --make
[ghc-hetmet.git] / ghc / compiler / main / DynFlags.hs
index 9d279d6..b1eb433 100644 (file)
@@ -41,6 +41,7 @@ module DynFlags (
        
        -- parsing DynFlags
        parseDynamicFlags,
+        allFlags,
 
        -- misc stuff
        machdepCCOpts, picCCOpts,
@@ -115,6 +116,7 @@ data DynFlag
    | Opt_D_dump_hi
    | Opt_D_dump_hi_diffs
    | Opt_D_dump_minimal_imports
+   | Opt_D_faststring_stats
    | Opt_DoCoreLinting
    | Opt_DoStgLinting
    | Opt_DoCmmLinting
@@ -763,6 +765,15 @@ getStgToDo dflags
 -- -----------------------------------------------------------------------------
 -- DynFlags parser
 
+allFlags :: [String]
+allFlags = map ('-':) $
+           [ name | (name, optkind) <- dynamic_flags, ok optkind ] ++
+           map ("fno-"++) flags ++
+           map ("f"++) flags
+    where ok (PrefixPred _ _) = False
+          ok _ = True
+          flags = map fst fFlags
+
 dynamic_flags :: [(String, OptKind DynP)]
 dynamic_flags = [
      ( "n"              , NoArg  (setDynFlag Opt_DryRun) )
@@ -899,6 +910,7 @@ dynamic_flags = [
   ,  ( "dcmm-lint",             NoArg (setDynFlag Opt_DoCmmLinting))
   ,  ( "dshow-passes",           NoArg (do unSetDynFlag Opt_RecompChecking
                                           setVerbosity "2") )
+  ,  ( "dfaststring-stats",     NoArg (setDynFlag Opt_D_faststring_stats))
 
        ------ Machine dependant (-m<blah>) stuff ---------------------------