summaryrefslogtreecommitdiff
path: root/compiler/GHC/Tc/Solver/Interact.hs
diff options
context:
space:
mode:
authorRichard Eisenberg <rae@richarde.dev>2021-05-28 18:00:59 -0400
committerRichard Eisenberg <rae@richarde.dev>2021-05-28 23:30:37 -0400
commitf68088f1c9d8dc7d0992218a7d7a4407818175b9 (patch)
treeb4f07b15cdf25eb5765a79e15a74340ffd252df9 /compiler/GHC/Tc/Solver/Interact.hs
parent3e4ef4b2d05ce0bdd70abd96066f0376dc0e13d6 (diff)
downloadhaskell-wip/break-up-tcs-monad.tar.gz
Rip GHC.Tc.Solver.Monad asunder (only)wip/break-up-tcs-monad
This creates new modules GHC.Tc.Solver.InertSet and GHC.Tc.Solver.Types. The Monad module is still pretty big, but this is an improvement. Moreover, it means that GHC.HsToCore.Pmc.Solver.Types no longer depends on the constraint solver (it now depends on GHC.Tc.Solver.InertSet), making the error-messages work easier. This patch thus contributes to #18516.
Diffstat (limited to 'compiler/GHC/Tc/Solver/Interact.hs')
-rw-r--r--compiler/GHC/Tc/Solver/Interact.hs4
1 files changed, 3 insertions, 1 deletions
diff --git a/compiler/GHC/Tc/Solver/Interact.hs b/compiler/GHC/Tc/Solver/Interact.hs
index efa03834dd..6e051c9ef6 100644
--- a/compiler/GHC/Tc/Solver/Interact.hs
+++ b/compiler/GHC/Tc/Solver/Interact.hs
@@ -38,6 +38,8 @@ import GHC.Tc.Types.Constraint
import GHC.Core.Predicate
import GHC.Tc.Types.Origin
import GHC.Tc.Utils.TcMType( promoteMetaTyVarTo )
+import GHC.Tc.Solver.Types
+import GHC.Tc.Solver.InertSet
import GHC.Tc.Solver.Monad
import GHC.Data.Bag
import GHC.Utils.Monad ( concatMapM, foldlM )
@@ -2389,7 +2391,7 @@ The same reasoning applies to
And less obviously to:
-* Tuple classes. For reasons described in GHC.Tc.Solver.Monad
+* Tuple classes. For reasons described in GHC.Tc.Solver.Types
Note [Tuples hiding implicit parameters], we may have a constraint
[W] (?x::Int, C a)
with an exactly-matching Given constraint. We must decompose this