X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Ftypecheck%2FTcRnMonad.lhs;h=ee3c6c6bf017b431f5f0bde7cb9f592848751e49;hb=e8db8f8ea957807dc6d4f134a147ef60bfd0ee93;hp=a28701442b7cbd2c0fe045e2610436e3da2c65ac;hpb=0fa697bca153468bf073aad1fe02d5b4055059f2;p=ghc-hetmet.git diff --git a/compiler/typecheck/TcRnMonad.lhs b/compiler/typecheck/TcRnMonad.lhs index a287014..ee3c6c6 100644 --- a/compiler/typecheck/TcRnMonad.lhs +++ b/compiler/typecheck/TcRnMonad.lhs @@ -152,9 +152,9 @@ initTc hsc_env hsc_src mod do_this = mkGlobalId VanillaGlobal breakpointCondJumpName (basicType (FunTy boolTy)) vanillaIdInfo; new_env = mkNameEnv [(breakpointJumpName - , AGlobal (AnId breakpointJumpType)) - ,(breakpointCondJumpName - , AGlobal (AnId breakpointCondJumpType))]; + , ATcId breakpointJumpType topLevel False) + ,(breakpointCondJumpName + , ATcId breakpointCondJumpType topLevel False)]; }; r <- tryM (updLclEnv (\gbl -> gbl{tcl_env=new_env}) do_this) #else @@ -1016,8 +1016,10 @@ forkM_maybe :: SDoc -> IfL a -> IfL (Maybe a) forkM_maybe doc thing_inside = do { unsafeInterleaveM $ do { traceIf (text "Starting fork {" <+> doc) - ; mb_res <- tryM thing_inside ; - case mb_res of + ; mb_res <- tryM $ + updLclEnv (\env -> env { if_loc = if_loc env $$ doc }) $ + thing_inside + ; case mb_res of Right r -> do { traceIf (text "} ending fork" <+> doc) ; return (Just r) } Left exn -> do {