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

On branch  : type-holes-branch

http://hackage.haskell.org/trac/ghc/changeset/688f2130b8bc3599ab18ff2e7d2a6c2755f0bea4

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

commit 688f2130b8bc3599ab18ff2e7d2a6c2755f0bea4
Author: Thijs Alkemade <[email protected]>
Date:   Thu May 24 12:16:19 2012 +0200

    I think this is a hack, but it ensures the hole gets the tidied type.
    
    (For example, [a] instead of [a_d].)

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

 compiler/typecheck/TcErrors.lhs |    7 +++----
 1 files changed, 3 insertions(+), 4 deletions(-)

diff --git a/compiler/typecheck/TcErrors.lhs b/compiler/typecheck/TcErrors.lhs
index cbfeef5..a45621f 100644
--- a/compiler/typecheck/TcErrors.lhs
+++ b/compiler/typecheck/TcErrors.lhs
@@ -405,16 +405,15 @@ mkIrredErr ctxt cts
 
 \begin{code}
 mkHoleDeferredError :: Bag Ct -> ReportErrCtxt -> Ct -> TcM ErrMsg
-mkHoleDeferredError allcts ctxt ct@(CHoleCan { cc_hole_nm = nm }) = 
mkErrorReport ctxt msg
+mkHoleDeferredError allcts ctxt ct@(CHoleCan { cc_hole_nm = nm, cc_flavor = fl 
}) = mkErrorReport ctxt msg
   where
+    ty = ctFlavPred fl
     orig@(HoleOrigin _ lenv)    = ctLocOrigin (ctWantedLoc ct)
-    ty = ctPred ct
     relevant = mapBag ctPred $ filterBag isRelevant allcts
     isRelevant ct' = case classifyPredType (ctPred ct') of
                       ClassPred {} -> any (`elem` (varSetElems $ tyVarsOfCt 
ct)) (varSetElems $ tyVarsOfCt ct')
                       _ -> False
-    msg     = addArising orig $ (text "Found hole") <+> ppr nm <+> text "with 
type" <+> addclasses $$ (text "In scope:" <+> ppr lenv)
-    addclasses = if isEmptyBag relevant then ppr ty else ppr $ mkFunTys 
(bagToList relevant) ty
+    msg     = addArising orig $ (text "Found hole") <+> ppr nm <+> text "with 
type" <+> ppr ty $$ (text "In scope:" <+> ppr lenv)
 \end{code}
 
 %************************************************************************



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

Reply via email to