Remove some duplication of C flags
[ghc-hetmet.git] / compiler / main / InteractiveEval.hs
index db1fd41..3f932dc 100644 (file)
@@ -29,7 +29,6 @@ module InteractiveEval (
        showModule,
         isModuleInterpreted,
        compileExpr, dynCompileExpr,
-       lookupName,
         Term(..), obtainTermFromId, obtainTermFromVal, reconstructType,
         skolemiseSubst, skolemiseTy
 #endif
@@ -359,13 +358,13 @@ foreign import ccall "&rts_breakpoint_io_action"
 -- is not responding".
 -- 
 -- Careful here: there may be ^C exceptions flying around, so we start the new
--- thread blocked (forkIO inherits block from the parent, #1048), and unblock
+-- thread blocked (forkIO inherits mask from the parent, #1048), and unblock
 -- only while we execute the user's code.  We can't afford to lose the final
 -- putMVar, otherwise deadlock ensues. (#1583, #1922, #1946)
 sandboxIO :: DynFlags -> MVar Status -> IO [HValue] -> IO Status
 sandboxIO dflags statusMVar thing =
-   block $ do  -- fork starts blocked
-     id <- forkIO $ do res <- Exception.try (unblock $ rethrow dflags thing)
+   mask $ \restore -> do  -- fork starts blocked
+     id <- forkIO $ do res <- Exception.try (restore $ rethrow dflags thing)
                        putMVar statusMVar (Complete res) -- empty: can't block
      withInterruptsSentTo id $ takeMVar statusMVar
 
@@ -933,14 +932,6 @@ parseName str = withSession $ \hsc_env -> do
    (L _ rdr_name) <- hscParseIdentifier (hsc_dflags hsc_env) str
    ioMsgMaybe $ tcRnLookupRdrName hsc_env rdr_name
 
--- | Returns the 'TyThing' for a 'Name'.  The 'Name' may refer to any
--- entity known to GHC, including 'Name's defined using 'runStmt'.
-lookupName :: GhcMonad m => Name -> m (Maybe TyThing)
-lookupName name = withSession $ \hsc_env -> do
-  mb_tything <- ioMsg $ tcRnLookupName hsc_env name
-  return mb_tything
-  -- XXX: calls panic in some circumstances;  is that ok?
-
 -- -----------------------------------------------------------------------------
 -- Getting the type of an expression