[commit: ghc] wip/T2893: Generalise quantified constraints (c477f53)
git at git.haskell.org
git at git.haskell.org
Wed Feb 21 00:04:29 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : wip/T2893
Link : http://ghc.haskell.org/trac/ghc/changeset/c477f53799deb46b4987ac788ad67d1bcbb8eb0c/ghc
>---------------------------------------------------------------
commit c477f53799deb46b4987ac788ad67d1bcbb8eb0c
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Wed Feb 21 00:00:35 2018 +0000
Generalise quantified constraints
This patch fixes Trac #14733, by generalising quantified
consrtraints to allow type variables in the head, thus
f :: forall m a. (forall b. m b) => D (m a)
Notice the 'm' in the head of the quantified constraint, not
a class.
This entailed some re-engineering, but it's nice.
>---------------------------------------------------------------
c477f53799deb46b4987ac788ad67d1bcbb8eb0c
compiler/typecheck/TcCanonical.hs | 45 +++---
compiler/typecheck/TcInteract.hs | 305 +++++++++++++++++++++++---------------
compiler/typecheck/TcSMonad.hs | 160 ++++++++++----------
compiler/typecheck/TcValidity.hs | 50 +++----
compiler/types/Type.hs | 7 +-
5 files changed, 315 insertions(+), 252 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 c477f53799deb46b4987ac788ad67d1bcbb8eb0c
More information about the ghc-commits
mailing list