[commit: ghc] supercompiler: Weaken assertion in gc function (8a11d51)

Max Bolingbroke <[email protected]>
Newsgroups gmane.comp.lang.haskell.cvs.ghc
Message-ID <[email protected]>
Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : supercompiler

http://hackage.haskell.org/trac/ghc/changeset/8a11d51578423857dc85ada2e95344f7a75bf756

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

commit 8a11d51578423857dc85ada2e95344f7a75bf756
Author: Max Bolingbroke <[email protected]>
Date:   Thu Feb 2 10:50:22 2012 +0000

    Weaken assertion in gc function

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

 .../supercompile/Supercompile/Drive/Process.hs     |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/compiler/supercompile/Supercompile/Drive/Process.hs b/compiler/supercompile/Supercompile/Drive/Process.hs
index 9445c30..908639a 100644
--- a/compiler/supercompile/Supercompile/Drive/Process.hs
+++ b/compiler/supercompile/Supercompile/Drive/Process.hs
@@ -390,8 +390,8 @@ instance Monoid SCStats where
 --
 -- TODO: have the garbage collector collapse (let x = True in x) to (True) -- but note that this requires onceness analysis
 gc :: State -> State
-gc _state@(deeds0, Heap h ids, k, in_e) = ASSERT2(isEmptyVarSet (stateUncoveredVars gced_state), ppr (stateUncoveredVars gced_state, PrettyDoc (pPrintFullState quietStatePrettiness _state), PrettyDoc (pPrintFullState quietStatePrettiness gced_state)))
-                                          gced_state
+gc _state@(deeds0, Heap h ids, k, in_e) = ASSERT2(stateUncoveredVars gced_state `subVarSet` stateUncoveredVars _state, ppr (stateUncoveredVars gced_state, PrettyDoc (pPrintFullState quietStatePrettiness _state), PrettyDoc (pPrintFullState quietStatePrettiness gced_state)))
+                                          gced_state -- We do not insist that *no* variables are uncovered because when used from the speculator this may not be true
   where
     gced_state = (deeds2, Heap h' ids, k', in_e)
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.