[Git][ghc/ghc][wip/T23153] 4 commits: Refactor the constraint solver pipeline

Krzysztof Gogolewski (@monoidal) gitlab at gitlab.haskell.org
Wed Mar 22 19:45:07 UTC 2023



Krzysztof Gogolewski pushed to branch wip/T23153 at Glasgow Haskell Compiler / GHC


Commits:
e0b8eaf3 by Simon Peyton Jones at 2023-03-22T09:50:13+00:00
Refactor the constraint solver pipeline

The big change is to put the entire type-equality solver into
GHC.Tc.Solver.Equality, rather than scattering it over Canonical
and Interact.  Other changes

* EqCt becomes its own data type, a bit like QCInst.  This is
  great because EqualCtList is then just [EqCt]

* New module GHC.Tc.Solver.Dict has come of the class-contraint
  solver.  In due course it will be all.  One step at a time.

This MR is intended to have zero change in behaviour: it is a
pure refactor.  It opens the way to subsequent tidying up, we
believe.

- - - - -
cedf9a3b by Torsten Schmits at 2023-03-22T15:31:18-04:00
Add structured error messages for GHC.Tc.Utils.TcMType

Tracking ticket: #20119

MR: !10138

This converts uses of `mkTcRnUnknownMessage` to newly added constructors
of `TcRnMessage`.

- - - - -
30d45e97 by Sylvain Henry at 2023-03-22T15:32:01-04:00
Testsuite: use js_skip for T2615 (#22374)

- - - - -
0d2fb1b8 by Krzysztof Gogolewski at 2023-03-22T20:44:47+01:00
Show an error when we cannot default a concrete tyvar

Fixes #23153

- - - - -


6 changed files:

- compiler/GHC/Data/Bag.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Tc/Gen/HsType.hs
- compiler/GHC/Tc/Solver/Canonical.hs
- + compiler/GHC/Tc/Solver/Dict.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/c318ddb78ff7276c5721f26a530116ccd370be72...0d2fb1b848a441894e827b65158287ece9f6ffaf

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/c318ddb78ff7276c5721f26a530116ccd370be72...0d2fb1b848a441894e827b65158287ece9f6ffaf
You're receiving this email because of your account on gitlab.haskell.org.


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.haskell.org/pipermail/ghc-commits/attachments/20230322/51e87adb/attachment-0001.html>


More information about the ghc-commits mailing list