summaryrefslogtreecommitdiff
path: root/compiler/GHC/Tc/Solver/Rewrite.hs
diff options
context:
space:
mode:
authorRichard Eisenberg <rae@richarde.dev>2021-04-05 17:40:29 -0400
committerMarge Bot <ben+marge-bot@smart-cactus.org>2021-04-10 05:29:21 -0400
commit449be647001c556bc1432287cfd70eb0fc984b18 (patch)
tree61d0a659e5ad1312e5222fc098b9e336fcda37ad /compiler/GHC/Tc/Solver/Rewrite.hs
parent7536126e90159f5f30c58f94d1459e8d6409eafb (diff)
downloadhaskell-449be647001c556bc1432287cfd70eb0fc984b18.tar.gz
Clarify commentary around the constraint solver
No changes to code; no changes to theory. Just better explanation.
Diffstat (limited to 'compiler/GHC/Tc/Solver/Rewrite.hs')
-rw-r--r--compiler/GHC/Tc/Solver/Rewrite.hs3
1 files changed, 3 insertions, 0 deletions
diff --git a/compiler/GHC/Tc/Solver/Rewrite.hs b/compiler/GHC/Tc/Solver/Rewrite.hs
index 6300215d2a..6fd4b85da1 100644
--- a/compiler/GHC/Tc/Solver/Rewrite.hs
+++ b/compiler/GHC/Tc/Solver/Rewrite.hs
@@ -333,6 +333,9 @@ forgetful -- that is, omits one or more type variables in its RHS. If so,
it expands the synonym and proceeds; if not, it simply returns the
unexpanded synonym. See also Note [Rewriting synonyms].
+Where do we actually perform rewriting within a type? See Note [Rewritable] in
+GHC.Tc.Solver.Monad.
+
Note [rewrite_args performance]
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In programs with lots of type-level evaluation, rewrite_args becomes