[commit: ghc] master: Roleify TcCoercion (9d643cf)
git at git.haskell.org
git at git.haskell.org
Wed Nov 27 15:26:29 UTC 2013
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/9d643cf6f2928c6e87ef6ae55fff001a0bf4c26b/ghc
>---------------------------------------------------------------
commit 9d643cf6f2928c6e87ef6ae55fff001a0bf4c26b
Author: Joachim Breitner <mail at joachim-breitner.de>
Date: Wed Nov 27 14:21:39 2013 +0000
Roleify TcCoercion
Previously, TcCoercion were only used to represent boxed Nominal
coercions. In order to also talk about boxed Representational coercions
in the type checker, we add Roles to TcCoercion. Again, we closely
mirror Coercion.
The roles are verified by a few assertions, and at the latest after
conversion to Coercion. I have put my trust in the comprehensiveness of
the testsuite here, but any role error after desugaring popping up now
might be caused by this refactoring.
>---------------------------------------------------------------
9d643cf6f2928c6e87ef6ae55fff001a0bf4c26b
compiler/coreSyn/MkCore.lhs | 19 ++-
compiler/deSugar/DsArrows.lhs | 2 +-
compiler/deSugar/DsBinds.lhs | 86 +++++++-------
compiler/deSugar/DsExpr.lhs | 7 +-
compiler/deSugar/Match.lhs | 10 +-
compiler/hsSyn/HsUtils.lhs | 10 +-
compiler/typecheck/Inst.lhs | 3 +-
compiler/typecheck/TcArrows.lhs | 7 +-
compiler/typecheck/TcBinds.lhs | 2 +-
compiler/typecheck/TcCanonical.lhs | 28 +++--
compiler/typecheck/TcEvidence.lhs | 231 +++++++++++++++++++++++-------------
compiler/typecheck/TcExpr.lhs | 10 +-
compiler/typecheck/TcHsSyn.lhs | 41 ++++---
compiler/typecheck/TcInteract.lhs | 10 +-
compiler/typecheck/TcMType.lhs | 2 +-
compiler/typecheck/TcPat.lhs | 6 +-
compiler/typecheck/TcSMonad.lhs | 7 +-
compiler/typecheck/TcUnify.lhs | 18 +--
compiler/types/Coercion.lhs | 2 +-
compiler/types/Type.lhs | 25 +++-
20 files changed, 306 insertions(+), 220 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 9d643cf6f2928c6e87ef6ae55fff001a0bf4c26b
More information about the ghc-commits
mailing list