X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=compiler%2Fghci%2FRtClosureInspect.hs;h=f289b14adedc6941c9a76ea00b0073cbb27fbfe9;hb=347780ec5f2a3c77e58ab7c6cd06b7557f44a82c;hp=e7c85c922545d697f8751e722fbb74650726034a;hpb=ee03fe2fd35cdb33cf8b586691ab0da6d1b92153;p=ghc-hetmet.git diff --git a/compiler/ghci/RtClosureInspect.hs b/compiler/ghci/RtClosureInspect.hs index e7c85c9..f289b14 100644 --- a/compiler/ghci/RtClosureInspect.hs +++ b/compiler/ghci/RtClosureInspect.hs @@ -504,6 +504,9 @@ cvObtainTerm hsc_env force mb_ty hval = runTR hsc_env $ do clos <- trIO $ getClosureData a case tipe clos of -- Thunks we may want to force +-- NB. this won't attempt to force a BLACKHOLE. Even with :force, we never +-- force blackholes, because it would almost certainly result in deadlock, +-- and showing the '_' is more useful. t | isThunk t && force -> seq a $ go tv ty a -- We always follow indirections Indirection _ -> go tv ty $! (ptrs clos ! 0)