[commit: ghc] master: Kill off zipTopTCvSubst in favour of zipOpenTCvSubst (1c6d70c)

git at git.haskell.org git at git.haskell.org
Tue Jan 26 10:48:51 UTC 2016


Repository : ssh://git@git.haskell.org/ghc

On branch  : master
Link       : http://ghc.haskell.org/trac/ghc/changeset/1c6d70c2121fd1126fcc2458bdbcc856e19598c2/ghc

>---------------------------------------------------------------

commit 1c6d70c2121fd1126fcc2458bdbcc856e19598c2
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Tue Jan 26 09:37:06 2016 +0000

    Kill off zipTopTCvSubst in favour of zipOpenTCvSubst
    
    As Bartosz has discovered, the invariants for substitutions were
    wrong, and in particular the "mkTop...Subst" and "zipTop..Subst"
    functions were building substitutions that didn't obey even the
    old invariants.
    
    This patch kills of the bogus zipTopTCvSubst in favour of the
    more robust zipOpenTCvSubst.
    
    I tripped over this because my upcoming patch (concerning SetLevels,
    Trac #11330) triggered an ASSERT failure in the substitution
    well-formedness assertion in TyCoRep.


>---------------------------------------------------------------

1c6d70c2121fd1126fcc2458bdbcc856e19598c2
 compiler/deSugar/Check.hs     |  2 +-
 compiler/iface/BuildTyCl.hs   |  6 +++---
 compiler/typecheck/TcDeriv.hs |  4 ++--
 compiler/typecheck/TcPat.hs   |  2 +-
 compiler/typecheck/TcType.hs  |  4 ++--
 compiler/types/TyCoRep.hs     | 35 ++++++++++++++---------------------
 compiler/types/Type.hs        |  4 ++--
 7 files changed, 25 insertions(+), 32 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 1c6d70c2121fd1126fcc2458bdbcc856e19598c2


More information about the ghc-commits mailing list