Skip to content
Snippets Groups Projects
  1. May 28, 2024
    • Teo Camarasu's avatar
      template-haskell: Move wired-ins to ghc-internal · 228dcae6
      Teo Camarasu authored and Teo Camarasu's avatar Teo Camarasu committed
      Thus we make `template-haskell` reinstallable and keep it as the public
      API for Template Haskell.
      All of the wired-in identifiers are moved to `ghc-internal`.
      This necessitates also moving much of `ghc-boot-th` into `ghc-internal`.
      These modules are then re-exported from `ghc-boot-th` and
      `template-haskell`.
      To avoid a dependency on `template-haskell` from `lib:ghc`, we instead
      depend on the TH ASTs via `ghc-boot-th`.
      
      As `template-haskell` no longer has special status, we can drop the
      logic adding an implicit dependency on `template-haskell` when using TH.
      We can also drop the `template-haskell-next` package, which was
      previously used when bootstrapping.
      
      When bootstrapping, we need to vendor the TH AST modules from
      `ghc-internal` into `ghc-boot-th`. This is controlled by the `bootstrap`
      cabal flag as before. See Note [Bootstrapping Template Haskell].
      
      We split out a GHC.Internal.TH.Lift module resolving #24752.
      This module is only built when not bootstrapping.
      
      Resolves #24703
      
      -------------------------
      Metric Increase:
          ghc_boot_th_dir
          ghc_boot_th_so
      -------------------------
      228dcae6
  2. May 25, 2024
  3. May 24, 2024
  4. May 23, 2024
  5. May 22, 2024
Loading