[Git][ghc/ghc][wip/T23070] 3 commits: ghci: only keep the GlobalRdrEnv in ModInfo

Simon Peyton Jones (@simonpj) gitlab at gitlab.haskell.org
Tue Mar 21 11:55:31 UTC 2023



Simon Peyton Jones pushed to branch wip/T23070 at Glasgow Haskell Compiler / GHC


Commits:
19d6d039 by sheaf at 2023-03-16T21:31:22+01:00
ghci: only keep the GlobalRdrEnv in ModInfo

The datatype GHC.UI.Info.ModInfo used to store a ModuleInfo,
which includes a TypeEnv. This can easily cause space leaks as we
have no way of forcing everything in a type environment.

In GHC, we only use the GlobalRdrEnv, which we can force completely.
So we only store that instead of a fully-fledged ModuleInfo.

- - - - -
73d07c6e by Torsten Schmits at 2023-03-17T14:36:49-04:00
Add structured error messages for GHC.Tc.Utils.Backpack

Tracking ticket: #20119

MR: !10127

This converts uses of `mkTcRnUnknownMessage` to newly added constructors
of `TcRnMessage`.
One occurrence, when handing a nested error from the interface loading
machinery, was omitted. It will be handled by a subsequent changeset
that addresses interface errors.

- - - - -
f83ff87f by Simon Peyton Jones at 2023-03-21T11:57:00+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.

- - - - -


5 changed files:

- compiler/GHC.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.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/ee035eea1c4d1183f4279ac0faca0909d1faccf3...f83ff87f5b64003518d194219257267f8b177c9b

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ee035eea1c4d1183f4279ac0faca0909d1faccf3...f83ff87f5b64003518d194219257267f8b177c9b
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/20230321/f5e5e886/attachment-0001.html>


More information about the ghc-commits mailing list