summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthew Pickering <matthewtpickering@gmail.com>2022-01-17 16:59:52 +0000
committerMatthew Pickering <matthewtpickering@gmail.com>2022-01-17 17:52:54 +0000
commit12c7a860642225d206f7172e3f4e7cf0001cb8dd (patch)
tree21d4ffee8c85175a96a76ff78688905aa8ad7b0a
parenta13aff98cfccddee285b6550dd08c6ec1a3c4e17 (diff)
downloadhaskell-wip/heap-invariant.tar.gz
Add note about heap invariantwip/heap-invariant
Closed #20904
-rw-r--r--compiler/GHC/Driver/Make.hs6
1 files changed, 6 insertions, 0 deletions
diff --git a/compiler/GHC/Driver/Make.hs b/compiler/GHC/Driver/Make.hs
index afeec69c8e..fb823e842f 100644
--- a/compiler/GHC/Driver/Make.hs
+++ b/compiler/GHC/Driver/Make.hs
@@ -2663,4 +2663,10 @@ which can be checked easily using ghc-debug.
as it should be as we retain a copy of the ModDetails for too long.
Where? pruneCache in GHC.Driver.Make
+4. No TcGblEnv or TcLclEnv are live after typechecking is completed.
+ Why? By the time we get to simplification all the data structures from typechecking
+ should be eliminated.
+ Where? No one place in the compiler. These leaks can be introduced by not suitable
+ forcing functions which take a TcLclEnv as an argument.
+
-}