[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