[commit: ghc] master: Apply the right substitution in ty-fam improvement (2b64e92)
git at git.haskell.org
git at git.haskell.org
Mon Jan 23 08:28:48 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/2b64e926a628fb2a3710b0360123ea73331166fe/ghc
>---------------------------------------------------------------
commit 2b64e926a628fb2a3710b0360123ea73331166fe
Author: Simon Peyton Jones <simonpj at microsoft.com>
Date: Fri Jan 20 23:47:28 2017 +0000
Apply the right substitution in ty-fam improvement
Trac #13135 showed that we were failing to apply the
correct substitution to the un-substituted tyvars during
type-family improvement using injectivity. Specifically
in TcInteractlinjImproveEqns we need to use instFlexiX.
An outright bug, easy to fix.
Slight refactoring along the way. The quantified tyars of the axiom are
readily to hand; we don't need to take the free tyvars of the LHS
>---------------------------------------------------------------
2b64e926a628fb2a3710b0360123ea73331166fe
compiler/typecheck/TcInteract.hs | 48 ++++----
compiler/typecheck/TcSMonad.hs | 26 ++---
testsuite/tests/dependent/should_fail/T13135.hs | 122 +++++++++++++++++++++
.../tests/dependent/should_fail/T13135.stderr | 10 ++
testsuite/tests/dependent/should_fail/all.T | 1 +
5 files changed, 171 insertions(+), 36 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 2b64e926a628fb2a3710b0360123ea73331166fe
More information about the ghc-commits
mailing list