-----------------------------------------------------------------------------
--- $Id: InteractiveUI.hs,v 1.57 2001/03/25 13:29:54 simonmar Exp $
+-- $Id: InteractiveUI.hs,v 1.58 2001/03/27 16:55:03 simonmar Exp $
--
-- GHC Interactive User Interface
--
import Util
import Name ( Name )
import Outputable
+import CmdLineOpts ( DynFlag(..), dopt_unset )
import Panic ( GhcException(..) )
import Config
| otherwise
= do st <- getGHCiState
dflags <- io (getDynFlags)
- (new_cmstate, names) <- io (cmRunStmt (cmstate st) dflags stmt)
+ let dflags' = dopt_unset dflags Opt_WarnUnusedBinds
+ (new_cmstate, names) <- io (cmRunStmt (cmstate st) dflags' stmt)
setGHCiState st{cmstate = new_cmstate}
return (Just names)
opt_PprStyle_Debug,
dopt,
+ dopt_set,
+ dopt_unset,
-- other dynamic flags
dopt_CoreToDo,
dopt_OutName :: DynFlags -> String
dopt_OutName = hscOutName
+dopt_set :: DynFlags -> DynFlag -> DynFlags
+dopt_set dfs f = dfs{ flags = f : flags dfs }
+
+dopt_unset :: DynFlags -> DynFlag -> DynFlags
+dopt_unset dfs f = dfs{ flags = filter (/= f) (flags dfs) }
+
data HscLang
= HscC
| HscAsm
{-# OPTIONS -#include "hschooks.h" #-}
-----------------------------------------------------------------------------
--- $Id: DriverFlags.hs,v 1.49 2001/03/15 15:53:28 simonmar Exp $
+-- $Id: DriverFlags.hs,v 1.50 2001/03/27 16:55:03 simonmar Exp $
--
-- Driver flags
--
dynFlag :: (DynFlags -> a) -> IO a
dynFlag f = do dflags <- readIORef v_DynFlags; return (f dflags)
-setDynFlag f = updDynFlags (\dfs -> dfs{ flags = f : flags dfs })
-unSetDynFlag f = updDynFlags (\dfs -> dfs{ flags = filter (/= f) (flags dfs) })
+setDynFlag f = updDynFlags (\dfs -> dopt_set dfs f)
+unSetDynFlag f = updDynFlags (\dfs -> dopt_unset dfs f)
addOpt_L a = updDynFlags (\s -> s{opt_L = a : opt_L s})
addOpt_P a = updDynFlags (\s -> s{opt_P = a : opt_P s})