X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fmain%2FStaticFlags.hs;h=c1597997427152d53213e009de5439a95d73521f;hb=1867a7bb8c59ea514b4f47f5434842543933ec9a;hp=f531a16bbe87e42bca7d102558ec7f9aab5dada4;hpb=0f5e104c36b1dc3d8deeec5fef3d65e7b3a1b5ad;p=ghc-hetmet.git diff --git a/compiler/main/StaticFlags.hs b/compiler/main/StaticFlags.hs index f531a16..c159799 100644 --- a/compiler/main/StaticFlags.hs +++ b/compiler/main/StaticFlags.hs @@ -1,3 +1,6 @@ +{-# OPTIONS -fno-cse #-} +-- -fno-cse is needed for GLOBAL_VAR's to behave properly + ----------------------------------------------------------------------------- -- -- Static flags @@ -83,7 +86,6 @@ import Util import Maybes ( firstJust ) import Panic -import Control.Exception ( throwDyn ) import Data.IORef import System.IO.Unsafe ( unsafePerformIO ) import Control.Monad ( when ) @@ -96,10 +98,10 @@ import Data.List parseStaticFlags :: [String] -> IO ([String], [String]) parseStaticFlags args = do ready <- readIORef v_opt_C_ready - when ready $ throwDyn (ProgramError "Too late for parseStaticFlags: call it before newSession") + when ready $ ghcError (ProgramError "Too late for parseStaticFlags: call it before newSession") (leftover, errs, warns1) <- processArgs static_flags args - when (not (null errs)) $ throwDyn (UsageError (unlines errs)) + when (not (null errs)) $ ghcError (UsageError (unlines errs)) -- deal with the way flags: the way (eg. prof) gives rise to -- further flags, some of which might be static. @@ -460,7 +462,7 @@ decodeSize str | c == "K" || c == "k" = truncate (n * 1000) | c == "M" || c == "m" = truncate (n * 1000 * 1000) | c == "G" || c == "g" = truncate (n * 1000 * 1000 * 1000) - | otherwise = throwDyn (CmdLineError ("can't decode size: " ++ str)) + | otherwise = ghcError (CmdLineError ("can't decode size: " ++ str)) where (m, c) = span pred str n = readRational m pred c = isDigit c || c == '.' @@ -546,7 +548,7 @@ findBuildTag = do let ws = sort (nub way_names) if not (allowed_combination ws) - then throwDyn (CmdLineError $ + then ghcError (CmdLineError $ "combination not supported: " ++ foldr1 (\a b -> a ++ '/':b) (map (wayName . lkupWay) ws))