Repository : http://darcs.haskell.org/ghc.git/
On branch : master http://hackage.haskell.org/trac/ghc/changeset/2bd278d3f0007613c4b7129ff94eb21cae014677 >--------------------------------------------------------------- commit 2bd278d3f0007613c4b7129ff94eb21cae014677 Author: Simon Peyton Jones <[email protected]> Date: Sun Mar 3 23:04:35 2013 +0000 Comments and type signatures only >--------------------------------------------------------------- compiler/typecheck/TcInteract.lhs | 1 + compiler/typecheck/TcSMonad.lhs | 5 ++++- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/compiler/typecheck/TcInteract.lhs b/compiler/typecheck/TcInteract.lhs index fa3ba10..0a68584 100644 --- a/compiler/typecheck/TcInteract.lhs +++ b/compiler/typecheck/TcInteract.lhs @@ -238,6 +238,7 @@ thePipeline = [ ("canonicalization", TcCanonical.canonicalize) \begin{code} spontaneousSolveStage :: SimplifierStage +-- CTyEqCans are always consumed, returning Stop spontaneousSolveStage workItem = do { mb_solved <- trySpontaneousSolve workItem ; case mb_solved of diff --git a/compiler/typecheck/TcSMonad.lhs b/compiler/typecheck/TcSMonad.lhs index 2f3233a..14ec1ba 100644 --- a/compiler/typecheck/TcSMonad.lhs +++ b/compiler/typecheck/TcSMonad.lhs @@ -849,10 +849,13 @@ extractRelevantInerts :: Ct -> TcS Cts -- NB: This function contains logic specific to the constraint solver, maybe move there? extractRelevantInerts wi = modifyInertTcS (extract_relevants wi) - where extract_relevants wi is + where + extract_relevants :: Ct -> InertSet -> (Cts,InertSet) + extract_relevants wi is = let (cts,ics') = extract_ics_relevants wi (inert_cans is) in (cts, is { inert_cans = ics' }) + extract_ics_relevants :: Ct -> InertCans -> (Cts, InertCans) extract_ics_relevants (CDictCan {cc_class = cl}) ics = let (cts,dict_map) = getRelevantCts cl (inert_dicts ics) in (cts, ics { inert_dicts = dict_map }) _______________________________________________ ghc-commits mailing list [email protected] http://www.haskell.org/mailman/listinfo/ghc-commits
