FIX #1653 (partially): add -X flags to completion for :set
[ghc-hetmet.git] / compiler / main / StaticFlags.hs
index e71c5c7..43f630c 100644 (file)
@@ -1,3 +1,10 @@
+{-# OPTIONS -w #-}
+-- The above warning supression flag is a temporary kludge.
+-- While working on this module you are encouraged to remove it and fix
+-- any warnings in the module. See
+--     http://hackage.haskell.org/trac/ghc/wiki/Commentary/CodingStyle#Warnings
+-- for details
+
 -----------------------------------------------------------------------------
 --
 -- Static flags
@@ -57,6 +64,7 @@ module StaticFlags (
        -- Related to linking
        opt_PIC,
        opt_Static,
+       opt_HardwireLibPaths,
 
        -- misc opts
        opt_IgnoreDotGhci,
@@ -151,7 +159,6 @@ static_flags = [
 
        ------- ways --------------------------------------------------------
   ,  ( "prof"          , NoArg (addWay WayProf) )
-  ,  ( "unreg"         , NoArg (addWay WayUnreg) )
   ,  ( "ticky"         , NoArg (addWay WayTicky) )
   ,  ( "parallel"      , NoArg (addWay WayPar) )
   ,  ( "gransim"       , NoArg (addWay WayGran) )
@@ -328,6 +335,7 @@ opt_PIC                         = True
 opt_PIC                         = lookUp FSLIT("-fPIC")
 #endif
 opt_Static                     = lookUp  FSLIT("-static")
+opt_HardwireLibPaths           = lookUp  FSLIT("-fhardwire-lib-paths")
 opt_Unregisterised             = lookUp  FSLIT("-funregisterised")
 
 -- Derived, not a real option.  Determines whether we will be compiling
@@ -368,6 +376,7 @@ isStaticFlag f =
        "fexcess-precision",
        "funfolding-update-in-place",
        "static",
+       "fhardwire-lib-paths",
        "funregisterised",
        "fext-core",
        "fcpr-off",
@@ -409,7 +418,7 @@ decodeSize str
   | c == "G" || c == "g" = truncate (n * 1000 * 1000 * 1000)
   | otherwise            = throwDyn (CmdLineError ("can't decode size: " ++ str))
   where (m, c) = span pred str
-        n      = read m  :: Double
+        n      = readRational m
        pred c = isDigit c || c == '.'
 
 
@@ -445,7 +454,6 @@ data WayName
   = WayThreaded
   | WayDebug
   | WayProf
-  | WayUnreg
   | WayTicky
   | WayPar
   | WayGran
@@ -482,7 +490,6 @@ allowed_combination way = and [ x `allowedWith` y
        _ `allowedWith` WayDebug                = True
        WayDebug `allowedWith` _                = True
 
-       WayProf `allowedWith` WayUnreg          = True
        WayProf `allowedWith` WayNDP            = True
        _ `allowedWith` _                       = False
 
@@ -552,9 +559,6 @@ way_details =
        [ "-DTICKY_TICKY"
        , "-optc-DTICKY_TICKY" ]),
 
-    (WayUnreg, Way  "u" False "Unregisterised" 
-       unregFlags ),
-
     -- optl's below to tell linker where to find the PVM library -- HWL
     (WayPar, Way  "mp" False "Parallel" 
        [ "-fparallel"