[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 11 commits: template-haskell: Move wired-ins to ghc-internal

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Wed May 29 13:06:12 UTC 2024



Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC


Commits:
228dcae6 by Teo Camarasu at 2024-05-28T13:12:24+00:00
template-haskell: Move wired-ins to ghc-internal

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
-------------------------

- - - - -
62dded28 by Teo Camarasu at 2024-05-28T13:12:24+00:00
testsuite: mark tests broken by #24886

Now that `template-haskell` is no longer wired-in.
These tests are triggering #24886, and so need to be marked broken.

- - - - -
ffbc2d54 by Cheng Shao at 2024-05-29T09:06:02-04:00
rts: fix missing function prototypes in ClosureMacros.h

- - - - -
1c026e61 by Andreas Klebinger at 2024-05-29T09:06:03-04:00
UnliftedFFITypes: Allow `(# #)` as argument when it's the only argument.

This allows representing functions like:

    int foo(void);

to be imported like this:

    foreign import ccall "a_number_c"
      c_number :: (# #) -> Int64#

Which can be useful when the imported function isn't implicitly
stateful.

- - - - -
53c31105 by Matthew Pickering at 2024-05-29T09:06:04-04:00
ci: Update ci-images commit for fedora38 image

The fedora38 nightly job has been failing for quite a while because
`diff` was no longer installed. The ci-images bump explicitly installs
`diffutils` into these images so hopefully they now pass again.

- - - - -
0756661b by Jan Hrček at 2024-05-29T09:06:06-04:00
Update exactprint docs

- - - - -
6945a5c9 by Jan Hrček at 2024-05-29T09:06:07-04:00
Incorporate review feedback

- - - - -
8f9157ff by Jan Hrček at 2024-05-29T09:06:07-04:00
Remove no longer relevant reference to comments

- - - - -
f2ae7a6c by Jan Hrček at 2024-05-29T09:06:07-04:00
Replace outdated code example

- - - - -
73993210 by Andreas Klebinger at 2024-05-29T09:06:07-04:00
Reword error resulting from missing -XBangPatterns.

It can be the result of either a bang pattern or strict binding,
so now we say so instead of claiming it must be a bang pattern.

Fixes #21032

- - - - -
d032b1d4 by Cheng Shao at 2024-05-29T09:06:08-04:00
testsuite: bump MultiLayerModulesDefsGhciReload timeout to 10x

- - - - -


30 changed files:

- .gitignore
- .gitlab-ci.yml
- compiler/GHC/Builtin/Names/TH.hs
- compiler/GHC/Core/TyCon.hs
- compiler/GHC/Hs/Expr.hs
- compiler/GHC/HsToCore/Foreign/Call.hs
- compiler/GHC/HsToCore/Quote.hs
- compiler/GHC/Iface/Recomp.hs
- compiler/GHC/Parser/Annotation.hs
- compiler/GHC/Parser/Errors/Ppr.hs
- compiler/GHC/Plugins.hs
- compiler/GHC/Rename/Names.hs
- compiler/GHC/Rename/Splice.hs
- compiler/GHC/Runtime/Interpreter/JS.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Tc/Gen/Foreign.hs
- compiler/GHC/Tc/Gen/Splice.hs
- compiler/GHC/Tc/Gen/Splice.hs-boot
- compiler/GHC/Tc/Types/TH.hs
- compiler/GHC/ThToHs.hs
- compiler/GHC/Types/SrcLoc.hs
- compiler/GHC/Unit/State.hs
- compiler/GHC/Unit/Types.hs
- compiler/ghc.cabal.in
- docs/users_guide/9.12.1-notes.rst
- docs/users_guide/exts/ffi.rst
- hadrian/src/Packages.hs
- hadrian/src/Rules/Generate.hs
- hadrian/src/Rules/ToolArgs.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/7e50e48ac7dc70cfbe27881c80f281506c4c2743...d032b1d4be6d4757df2dd71dcb0d6101d30dcc09

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/7e50e48ac7dc70cfbe27881c80f281506c4c2743...d032b1d4be6d4757df2dd71dcb0d6101d30dcc09
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/20240529/ac95db26/attachment.html>


More information about the ghc-commits mailing list