Repository : ssh://darcs.haskell.org//srv/darcs/ghc On branch : master
http://hackage.haskell.org/trac/ghc/changeset/c8c2f6bb7d79a2a6aeaa3233363fdf0bbbfad205 >--------------------------------------------------------------- commit c8c2f6bb7d79a2a6aeaa3233363fdf0bbbfad205 Author: Simon Peyton Jones <simo...@microsoft.com> Date: Thu May 12 11:09:28 2011 +0100 The final batch of changes for the new coercion representation * Fix bugs in the packing and unpacking of data constructors with equality predicates in their types * Remove PredCo altogether; instead, coercions between predicated types (like (Eq a, [a]~b) => blah) are treated as if they were precisely their underlying representation type Eq a -> ((~) [a] b) -> blah in this case * Similarly, Type.coreView no longer treats equality predciates specially. * Implement the cast-of-coercion optimisation in Simplify.simplCoercionF Numerous other small bug-fixes and refactorings. Annoyingly, OptCoercion had Windows line endings, and this patch switches to Unix, so it looks as if every line has changed. compiler/basicTypes/DataCon.lhs | 2 +- compiler/basicTypes/MkId.lhs | 19 +++-- compiler/coreSyn/CoreFVs.lhs | 3 +- compiler/coreSyn/CoreLint.lhs | 14 ---- compiler/coreSyn/CoreSyn.lhs | 5 +- compiler/coreSyn/MkExternalCore.lhs | 7 +-- compiler/deSugar/DsUtils.lhs | 9 ++- compiler/iface/IfaceType.lhs | 1 - compiler/iface/TcIface.lhs | 3 +- compiler/main/PprTyThing.hs | 5 +- compiler/simplCore/FloatIn.lhs | 19 +++--- compiler/simplCore/SetLevels.lhs | 4 +- compiler/simplCore/SimplEnv.lhs | 27 +++++--- compiler/simplCore/SimplUtils.lhs | 8 ++ compiler/simplCore/Simplify.lhs | 91 ++++++++++++++------------ compiler/stgSyn/CoreToStg.lhs | 5 +- compiler/typecheck/TcEnv.lhs | 1 - compiler/typecheck/TcHsSyn.lhs | 3 +- compiler/typecheck/TcRnDriver.lhs | 11 +--- compiler/typecheck/TcType.lhs | 5 -- compiler/types/Coercion.lhs | 125 ++++++++++++++-------------------- compiler/types/FunDeps.lhs | 2 +- compiler/types/OptCoercion.lhs | 39 ----------- compiler/types/Type.lhs | 32 +-------- 24 files changed, 175 insertions(+), 265 deletions(-) Diff suppressed because of size. To see it, use: git show c8c2f6bb7d79a2a6aeaa3233363fdf0bbbfad205 _______________________________________________ Cvs-ghc mailing list Cvs-ghc@haskell.org http://www.haskell.org/mailman/listinfo/cvs-ghc