[commit: ghc] wip/gadtpm: Prune uncovered at every step (had huge space leaks) (ded5c0f)

git at git.haskell.org git at git.haskell.org
Wed Jul 8 08:17:45 UTC 2015


Repository : ssh://git@git.haskell.org/ghc

On branch  : wip/gadtpm
Link       : http://ghc.haskell.org/trac/ghc/changeset/ded5c0fe9b6cde02b4bf64458c04f0b8f5b4ced4/ghc

>---------------------------------------------------------------

commit ded5c0fe9b6cde02b4bf64458c04f0b8f5b4ced4
Author: George Karachalias <george.karachalias at gmail.com>
Date:   Wed Jul 8 10:18:17 2015 +0200

    Prune uncovered at every step (had huge space leaks)


>---------------------------------------------------------------

ded5c0fe9b6cde02b4bf64458c04f0b8f5b4ced4
 compiler/deSugar/Check.hs | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/compiler/deSugar/Check.hs b/compiler/deSugar/Check.hs
index 5150188..ec08a2a 100644
--- a/compiler/deSugar/Check.hs
+++ b/compiler/deSugar/Check.hs
@@ -1062,7 +1062,8 @@ patVectProc2 (vec,gvs) vsa = do
   (usC, usU, usD) <- getUniqueSupplyM3
   mb_c <- anySatValSetAbs (covered2   usC c_def vec vsa)
   mb_d <- anySatValSetAbs (divergent2 usD d_def vec vsa)
-  return (mb_c, mb_d, uncovered2 usU u_def vec vsa)
+  vsa' <- pruneValSetAbs  (uncovered2 usU u_def vec vsa)
+  return (mb_c, mb_d, vsa')
 
 -- Single pattern binding (let)
 checkSingle2 :: Type -> Pat Id -> DsM PmResult



More information about the ghc-commits mailing list