[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