Repository : ssh://darcs.haskell.org//srv/darcs/ghc

On branch  : master

http://hackage.haskell.org/trac/ghc/changeset/a0788a8b2ba19b7f3205010a71472342a75395f8

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

commit a0788a8b2ba19b7f3205010a71472342a75395f8
Author: Simon Peyton Jones <[email protected]>
Date:   Wed Aug 22 16:13:56 2012 +0100

    Fix missing case in coVarsOfTcCo
    
    Reported by Ganesh, Trac #7178.  Fix is easy.

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

 compiler/typecheck/TcEvidence.lhs |    6 ++----
 1 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/compiler/typecheck/TcEvidence.lhs 
b/compiler/typecheck/TcEvidence.lhs
index 09704fb..76408bd 100644
--- a/compiler/typecheck/TcEvidence.lhs
+++ b/compiler/typecheck/TcEvidence.lhs
@@ -245,11 +245,9 @@ coVarsOfTcCo tc_co
     go (TcLetCo {}) = emptyVarSet    -- Harumph. This does legitimately happen 
in the call
                                      -- to evVarsOfTerm in the DEBUG check of 
setEvBind
 
-    -- We expect only coercion bindings
+    -- We expect only coercion bindings, so use evTermCoercion 
     go_bind :: EvBind -> VarSet
-    go_bind (EvBind _ (EvCoercion co)) = go co
-    go_bind (EvBind _ (EvId v))        = unitVarSet v
-    go_bind other = pprPanic "coVarsOfTcCo:Bind" (ppr other)
+    go_bind (EvBind _ tm) = go (evTermCoercion tm)
 
     get_bndrs :: Bag EvBind -> VarSet
     get_bndrs = foldrBag (\ (EvBind b _) bs -> extendVarSet bs b) emptyVarSet 



_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to