Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/67c793a3a13482bc897810e3b5e13f96942afc68 >--------------------------------------------------------------- commit 67c793a3a13482bc897810e3b5e13f96942afc68 Author: Simon Peyton Jones <[email protected]> Date: Tue May 1 08:07:52 2012 +0100 Tidy up a remaining glitch in unification There was one place, in type checking parallel list comprehensions where we were unifying types, but had no convenient way to use the resulting coercion; instead we just checked that it was Refl. This was Wrong Wrong; it might fail unpredicably in a GADT-like situation, and it led to extra error-generation code used only in this one place. This patch tidies it all up, by moving the 'return' method from the *comprehension* to the ParStmtBlock. The latter is a new data type, now used for each sub-chunk of a parallel list comprehension. Because of the data type change, quite a few modules are touched, but only in a fairly trivial way. The real changes are in TcMatches (and corresponding desugaring); plus deleting code from TcUnify. This patch also fixes the pretty-printing bug in Trac #6060 compiler/deSugar/Coverage.lhs | 14 ++++---- compiler/deSugar/DsArrows.lhs | 4 +- compiler/deSugar/DsListComp.lhs | 39 ++++++++++----------- compiler/hsSyn/Convert.lhs | 4 +- compiler/hsSyn/HsExpr.lhs | 33 ++++++++++++------ compiler/hsSyn/HsUtils.lhs | 12 +++--- compiler/main/HscMain.hs | 4 +- compiler/parser/Parser.y.pp | 3 +- compiler/rename/RnExpr.lhs | 29 +++++++-------- compiler/typecheck/TcErrors.lhs | 8 ---- compiler/typecheck/TcHsSyn.lhs | 23 ++++++------ compiler/typecheck/TcMatches.lhs | 70 ++++++++++---------------------------- compiler/typecheck/TcUnify.lhs | 11 ------ 13 files changed, 104 insertions(+), 150 deletions(-) Diff suppressed because of size. To see it, use: git show 67c793a3a13482bc897810e3b5e13f96942afc68 _______________________________________________ Cvs-ghc mailing list [email protected] http://www.haskell.org/mailman/listinfo/cvs-ghc
