[commit: ghc] master: Refactor functional dependencies a bit (eb55ec2)
git at git.haskell.org
git at git.haskell.org
Fri Nov 25 17:47:42 UTC 2016
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/eb55ec2941239dee05afc6be818b129efe51660e/ghc
>---------------------------------------------------------------
commit eb55ec2941239dee05afc6be818b129efe51660e
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Thu Nov 24 13:47:02 2016 +0000
Refactor functional dependencies a bit
* Rename CoAxiom.Eqn = Pair Type to TypeEqn,
and use it for fundeps
* Use the FunDepEqn for injectivity, which lets us share a bit
more code, and (more important) brain cells
* When generating fundeps, take the max depth of the two
constraints. This aimed at tackling the strange loop in
Trac #12860, but there is more to come for that.
* Improve pretty-printing with -ddump-tc-trace
>---------------------------------------------------------------
eb55ec2941239dee05afc6be818b129efe51660e
compiler/typecheck/FunDeps.hs | 16 +++--
compiler/typecheck/TcInteract.hs | 141 ++++++++++++++++++++-------------------
compiler/typecheck/TcRnTypes.hs | 13 +++-
compiler/typecheck/TcSMonad.hs | 10 ++-
compiler/typecheck/TcTypeNats.hs | 4 +-
compiler/types/CoAxiom.hs | 10 +--
6 files changed, 106 insertions(+), 88 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 eb55ec2941239dee05afc6be818b129efe51660e
More information about the ghc-commits
mailing list