[Git][ghc/ghc][wip/reinstallable-th] Apply 1 suggestion(s) to 1 file(s)
Teo Camarasu (@teo)
gitlab at gitlab.haskell.org
Thu May 9 15:32:14 UTC 2024
Teo Camarasu pushed to branch wip/reinstallable-th at Glasgow Haskell Compiler / GHC
Commits:
d0fc16f0 by Sebastian Graf at 2024-05-09T15:32:04+00:00
Apply 1 suggestion(s) to 1 file(s)
- - - - -
1 changed file:
- compiler/GHC/Tc/Gen/Splice.hs
Changes:
=====================================
compiler/GHC/Tc/Gen/Splice.hs
=====================================
@@ -2937,13 +2937,17 @@ tcGetInterp = do
--
-- Here is how we bootstrap TH in tandem with GHC:
--
--- 1. Link the stage1 compiler against the boot `template-haskell`/`ghc-boot-th` library.
--- 2. When building the stage1 compiler, build a CPP'd version of the in-tree
--- TH (defined in `ghc-internal`) using the boot compiler under a different
--- package-id, `ghc-boot-th-next`, and build stage1 GHC against that.
--- 3. Build the in-tree TH with the stage1 compiler. From here on `ghc-boot-th`
--- re-exposes the TH modules from `ghc-internal`.
--- 4. Build and link the stage2 compiler against the in-tree TH.
+-- 1. Build the stage1 compiler with the boot compiler.
+-- The latter comes with its own boot `ghc-boot-th` library, but we do not import it.
+-- 2. Instead, the stage1 compiler depends on the in-tree `ghc-boot-th`.
+-- * To avoid clashes with the boot `ghc-boot-th`, we change its
+-- package-id `ghc-boot-th-next`.
+-- * There is a bit of CPP to vendor the stage1 TH AST defined in
+-- `ghc-internal`, which we cannot build with the boot compiler.
+-- 3. Build `ghc-internal` and in-tree `ghc-boot-th` with the stage1 compiler.
+-- From here on `ghc-boot-th` re-exposes the TH modules from `ghc-internal`.
+-- 4. Build and link the stage2 compiler against the in-tree `ghc-boot-th`.
+-- NB: No dependency on `ghc-boot-th-next`.
--
-- When we decided in favour of the current design, `template-haskell`
-- still contained the wired-in Ids that meanwhile were moved to
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/d0fc16f0fd1b99e3abe59c4c9a7a9b694f43d4dc
--
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/d0fc16f0fd1b99e3abe59c4c9a7a9b694f43d4dc
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/20240509/d9a652d6/attachment-0001.html>
More information about the ghc-commits
mailing list