[commit: ghc] master: Put kind variables before type variables when specializing (0f49508)

git at git.haskell.org git at git.haskell.org
Wed Nov 11 12:04:33 UTC 2015


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

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

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

commit 0f49508399a1fc145e17950ea1591da7f0de4f2a
Author: Bartosz Nitka <niteria at gmail.com>
Date:   Wed Nov 11 12:31:55 2015 +0100

    Put kind variables before type variables when specializing
    
    When you reverse the order of uniques you get the core lint
    error from the testcase. The testcase is copied from
    tests/simplCore/should_compile/T10689a.hs.
    
    The problem is that we would put type and kind variables ordered by
    unique order, which happened to be the right order for this testcase to
    pass under normal conditions.
    
    I think it's enough to sort them with `sortQuantVars`, but I'm not
    really sure if some more sophisticated dependency analysis isn't needed.
    
    Test Plan: added a new testcase
    
    Reviewers: simonpj, goldfire, simonmar, austin, bgamari
    
    Reviewed By: bgamari
    
    Subscribers: thomie
    
    Differential Revision: https://phabricator.haskell.org/D1457


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

0f49508399a1fc145e17950ea1591da7f0de4f2a
 compiler/specialise/SpecConstr.hs                  |  11 +-
 .../should_compile/Makefile                        |   0
 testsuite/tests/determinism/should_compile/all.T   |   1 +
 .../tests/determinism/should_compile/determ004.hs  | 311 +++++++++++++++++++++
 4 files changed, 318 insertions(+), 5 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 0f49508399a1fc145e17950ea1591da7f0de4f2a


More information about the ghc-commits mailing list