
Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC Commits: 444701b5 by Berk Özkütük at 2025-07-07T13:11:25-04:00 Consider `PromotedDataCon` in `tyConStupidTheta` Haddock checks data declarations for the stupid theta so as not to pretty-print them as empty contexts. Type data declarations end up as `PromotedDataCon`s by the time Haddock performs this check, causing a panic. This commit extends `tyConStupidTheta` so that it returns an empty list for `PromotedDataCon`s. This decision was guided by the fact that type data declarations never have data type contexts (see (R1) in Note [Type data declarations]). Fixes #25739. - - - - - 32beb9ab by Ryan Hendrickson at 2025-07-07T13:11:30-04:00 haddock: Document instances from other packages When attaching instances to `Interface`s, it isn't enough just to look for instances in the list of `Interface`s being processed. We also need to look in the modules on which they depend, including those outside of this package. Fixes #25147. Fixes #26079. - - - - - 3af21236 by Rodrigo Mesquita at 2025-07-07T13:11:30-04:00 hadrian: Fallback logic for internal interpreter When determining whether to build the internal interpreter, the `make` build system had a fallback case for platforms not in the list of explicitly-supported operating systems and architectures. This fallback says we should try to build the internal interpreter if building dynamic GHC programs (if the architecture is unknown). Fixes #24098 - - - - - 9bc76073 by Ben Gamari at 2025-07-07T13:11:31-04:00 users-guide: Reference Wasm FFI section - - - - - 26a51534 by Ben Gamari at 2025-07-07T13:11:31-04:00 users-guide: Fix too-short heading warning - - - - - ed8bc569 by Duncan Coutts at 2025-07-07T13:11:34-04:00 Reorganise documentation for allocate* functions Consolodate interface information into the .h file, keeping just implementation details in the .c file. Use Notes stlye in the .h file and refer to notes from the .c file. - - - - - 482f14cb by Duncan Coutts at 2025-07-07T13:11:34-04:00 Introduce common utilities for allocating arrays The intention is to share code among the several places that do this already. - - - - - fcbc0505 by Duncan Coutts at 2025-07-07T13:11:34-04:00 Use new array alloc utils in Heap.c The CMM primop can now report heap overflow. - - - - - 0ea051e9 by Duncan Coutts at 2025-07-07T13:11:34-04:00 Use new array alloc utils in ThreadLabels.c Replacing a local utility. - - - - - 07a02368 by Duncan Coutts at 2025-07-07T13:11:34-04:00 Use new array alloc utils in Threads.c Replacing local open coded version. - - - - - 6c6d7440 by Duncan Coutts at 2025-07-07T13:11:34-04:00 Add exitHeapOverflow helper utility This will be useful with the array alloc functions, since unlike allocate/allocateMaybeFail, they do not come in two versions. So if it's not convenient to propagate failure, then one can use this. - - - - - 5752dae0 by Duncan Coutts at 2025-07-07T13:11:35-04:00 Use new array alloc utils in Weak.c Also add a cpp macro CCS_SYSTEM_OR_NULL which does what it says. The benefit of this is that it allows us to referece CCS_SYSTEM even when we're not in PROFILING mode. That makes abstracting over profiling vs normal mode a lot easier. - - - - - 5fd083e7 by Duncan Coutts at 2025-07-07T13:11:35-04:00 Convert the array alloc primops to use the new array alloc utils - - - - - 88d8d365 by Duncan Coutts at 2025-07-07T13:11:35-04:00 While we're at it, add one missing 'likely' hint To a cmm primops that raises an exception, like the others now do. - - - - - c16670f6 by meooow25 at 2025-07-07T13:11:39-04:00 Keep scanl' strict in the head on rewrite `scanl'` forces elements to WHNF when the corresponding `(:)`s are forced. The rewrite rule for `scanl'` missed forcing the first element, which is fixed here with a `seq`. - - - - - 32 changed files: - compiler/GHC/Core/TyCon.hs - docs/users_guide/exts/doandifthenelse.rst - docs/users_guide/exts/ffi.rst - hadrian/src/Oracles/Flag.hs - hadrian/src/Rules/Generate.hs - hadrian/src/Settings/Builders/Cabal.hs - hadrian/src/Settings/Packages.hs - hadrian/src/Settings/Program.hs - libraries/base/changelog.md - libraries/ghc-internal/src/GHC/Internal/List.hs - + rts/AllocArray.c - + rts/AllocArray.h - rts/Heap.c - rts/PrimOps.cmm - rts/RtsUtils.c - rts/ThreadLabels.c - rts/Threads.c - rts/Weak.c - rts/include/Rts.h - rts/include/rts/prof/CCS.h - rts/include/rts/storage/GC.h - rts/include/rts/storage/Heap.h - rts/rts.cabal - rts/sm/Storage.c - utils/haddock/CHANGES.md - utils/haddock/haddock-api/src/Haddock/Interface/AttachInstances.hs - utils/haddock/haddock-api/src/Haddock/Interface/Create.hs - utils/haddock/haddock-api/src/Haddock/Types.hs - utils/haddock/haddock-test/src/Test/Haddock/Config.hs - utils/haddock/html-test/ref/Bug1004.html - + utils/haddock/html-test/ref/Bug25739.html - + utils/haddock/html-test/src/Bug25739.hs The diff was not included because it is too large. View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4141e4797b87da370c19527a795edb5... -- View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/4141e4797b87da370c19527a795edb5... You're receiving this email because of your account on gitlab.haskell.org.