Prevent the binding of unboxed things by :print
authorPepe Iborra <mnislaih@gmail.com>
Sat, 8 Dec 2007 18:18:30 +0000 (18:18 +0000)
committerPepe Iborra <mnislaih@gmail.com>
Sat, 8 Dec 2007 18:18:30 +0000 (18:18 +0000)
compiler/ghci/Debugger.hs

index 72688dd..c53a739 100644 (file)
@@ -73,8 +73,10 @@ pprintClosureCommand session bindThings force str = do
    go cms id = do
        term_    <- GHC.obtainTerm cms force id
        term     <- tidyTermTyVars cms term_
    go cms id = do
        term_    <- GHC.obtainTerm cms force id
        term     <- tidyTermTyVars cms term_
-       term'    <- if not bindThings then return term
-                     else bindSuspensions cms term                       
+       term'    <- if bindThings && 
+                      Just False == isUnliftedTypeKind `fmap` termType term
+                     then bindSuspensions cms term
+                     else return term
      -- Before leaving, we compare the type obtained to see if it's more specific
      --  Then, we extract a substitution,
      --  mapping the old tyvars to the reconstructed types.
      -- Before leaving, we compare the type obtained to see if it's more specific
      --  Then, we extract a substitution,
      --  mapping the old tyvars to the reconstructed types.