[commit: ghc] master: Rejig rejigConRes & friends, doing role checks in a second pass. (4067340)
git at git.haskell.org
git at git.haskell.org
Mon Dec 2 18:13:55 UTC 2013
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/406734066ea536b5d11373335edb8c24d0aa0834/ghc
>---------------------------------------------------------------
commit 406734066ea536b5d11373335edb8c24d0aa0834
Author: Richard Eisenberg <eir at cis.upenn.edu>
Date: Sat Nov 30 16:05:47 2013 -0500
Rejig rejigConRes & friends, doing role checks in a second pass.
This commit is just a refactoring, intended to make the use of
rejigConRes (which sorts out the return types of GADT-like constructors)
less delicate. The idea is that, if we perform role checking in a
second top-level pass, we can use checkValidDataCon to check for
valid return types. Previously, checking roles would force the
rejigConRes thunk before we knew that rejigConRes was safe to call!
>---------------------------------------------------------------
406734066ea536b5d11373335edb8c24d0aa0834
compiler/typecheck/TcEvidence.lhs | 1 -
compiler/typecheck/TcInstDcls.lhs | 26 +--
compiler/typecheck/TcTyClsDecls.lhs | 442 ++++++++++++++++++-----------------
compiler/typecheck/TcTyDecls.lhs | 5 +-
4 files changed, 240 insertions(+), 234 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 406734066ea536b5d11373335edb8c24d0aa0834
More information about the ghc-commits
mailing list