[commit: ghc] master: Honour the untouchability of kind variables (e7f0ae7)

git at git.haskell.org git at git.haskell.org
Mon Apr 14 12:04:15 UTC 2014


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

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

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

commit e7f0ae7ff4f2199abe42f20bac825a7802bff466
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date:   Mon Apr 14 13:03:40 2014 +0100

    Honour the untouchability of kind variables
    
    Trac #8985 showed up a major shortcoming in the kind unifier: it was
    ignoring untoucability.  This has unpredictably-bad consequences;
    notably, the skolem-escape check can fail.
    
    There were two things wrong
     * TcRnMonad.isTouchableTcM was returning a constant value for kind variables
       (wrong), and even worse the constant was back-to-front (it was always False).
    
     * We weren't even calling isTouchableTcM in TcType.unifyKindX.
    
    I'm not sure how this ever worked.
    
    Merge to 7.8.3 in due course.


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

e7f0ae7ff4f2199abe42f20bac825a7802bff466
 compiler/typecheck/TcRnMonad.lhs |    5 --
 compiler/typecheck/TcUnify.lhs   |  138 +++++++++++++++++++++++---------------
 2 files changed, 84 insertions(+), 59 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 e7f0ae7ff4f2199abe42f20bac825a7802bff466


More information about the ghc-commits mailing list