[commit: ghc] master: Unwrap casts before checking vars in eager unifier (042df60)
git at git.haskell.org
git at git.haskell.org
Tue Jul 10 23:55:32 UTC 2018
Repository : ssh://git@git.haskell.org/ghc
On branch : master
Link : http://ghc.haskell.org/trac/ghc/changeset/042df603cbb5a77ec13ccfec2ce7bad2bb940aae/ghc
>---------------------------------------------------------------
commit 042df603cbb5a77ec13ccfec2ce7bad2bb940aae
Author: Richard Eisenberg <rae at cs.brynmawr.edu>
Date: Thu Jul 5 14:21:43 2018 -0400
Unwrap casts before checking vars in eager unifier
Previously, checking whether (tv |> co) ~ (tv |> co) got deferred,
because we looked for vars before stripping casts. (The left type
would get stripped, and then tv ~ (tv |> co) would scare the occurs-
checker.)
This opportunity for improvement presented itself in other work.
This is just an optimization. Some programs can now report more
errors simultaneously.
>---------------------------------------------------------------
042df603cbb5a77ec13ccfec2ce7bad2bb940aae
compiler/typecheck/TcUnify.hs | 19 ++++---
.../tests/partial-sigs/should_fail/T12634.stderr | 14 +++++
.../tests/partial-sigs/should_fail/T14040a.stderr | 37 --------------
.../tests/partial-sigs/should_fail/T14584.stderr | 46 ++++++++++++++---
testsuite/tests/polykinds/T12593.stderr | 59 +++++++++++++++++++---
testsuite/tests/polykinds/T14846.stderr | 25 +++++----
.../tests/typecheck/should_compile/T2494.stderr | 6 +--
.../tests/typecheck/should_fail/VtaFail.stderr | 22 ++++++++
8 files changed, 157 insertions(+), 71 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 042df603cbb5a77ec13ccfec2ce7bad2bb940aae
More information about the ghc-commits
mailing list