[Git][ghc/ghc][wip/ghc-9.10] 26 commits: base: Use strerror_r instead of strerror

Ben Gamari (@bgamari) gitlab at gitlab.haskell.org
Fri Mar 8 23:52:50 UTC 2024



Ben Gamari pushed to branch wip/ghc-9.10 at Glasgow Haskell Compiler / GHC


Commits:
2859a637 by Ben Gamari at 2024-03-08T18:26:47-05:00
base: Use strerror_r instead of strerror

As noted by #24344, `strerror` is not necessarily thread-safe.
Thankfully, POSIX.1-2001 has long offered `strerror_r`, which is
safe to use.

Fixes #24344.

CLC discussion: https://github.com/haskell/core-libraries-committee/issues/249

- - - - -
e2ea2ce8 by Ben Gamari at 2024-03-08T18:28:35-05:00
rts/CloneStack: Bounds check array write

- - - - -
23f81003 by Ben Gamari at 2024-03-08T18:28:35-05:00
rts/CloneStack: Don't expose helper functions in header

- - - - -
c34a51b6 by Ben Gamari at 2024-03-08T18:28:35-05:00
base: Move internals of GHC.InfoProv into GHC.InfoProv.Types

Such that we can add new helpers into GHC.InfoProv.Types without
breakage.

- - - - -
c2608564 by Ben Gamari at 2024-03-08T18:28:35-05:00
rts: Lazily decode IPE tables

Previously we would eagerly allocate `InfoTableEnt`s for each
info table registered in the info table provenance map. However, this
costs considerable memory and initialization time. Instead we now
lazily decode these tables. This allows us to use one-third the memory
*and* opens the door to taking advantage of sharing opportunities within
a module.

This required considerable reworking since lookupIPE now must be passed
its result buffer.

- - - - -
a983949a by Ben Gamari at 2024-03-08T18:28:35-05:00
rts/IPE: Don't expose helper in header

- - - - -
00b4fe2e by Ben Gamari at 2024-03-08T18:28:35-05:00
rts/IPE: Share module_name within a Node

This allows us to shave a 64-bit word off of the packed IPE entry size.

- - - - -
69118f5f by Ben Gamari at 2024-03-08T18:28:36-05:00
IPE: Expose unit ID in InfoTableProv

Here we add the unit ID to the info table provenance structure.

- - - - -
13568b23 by Ben Gamari at 2024-03-08T18:28:36-05:00
rts: Refactor GHC.Stack.CloneStack.decode

Don't allocate a Ptr constructor per frame.

- - - - -
0c93142d by Ben Gamari at 2024-03-08T18:28:36-05:00
base: Do not expose whereFrom# from GHC.Exts

- - - - -
6d4bdf9e by Jade at 2024-03-08T18:28:37-05:00
Error messages: Improve Error messages for Data constructors in type signatures.

This patch improves the error messages from invalid type signatures by
trying to guess what the user did and suggesting an appropriate fix.

Partially fixes: #17879

- - - - -
a930b2fd by Patrick at 2024-03-08T18:28:38-05:00
HieAst: add module name #24493

The main purpose of this is to tuck the module name `xxx` in `module xxx where` into the hieAst.
It should fix #24493.

The following have been done:
1. Renamed and update the `tcg_doc_hdr :: Maybe (LHsDoc GhcRn)` to `tcg_hdr_info :: (Maybe (LHsDoc GhcRn), Maybe (XRec GhcRn ModuleName))`
   To store the located module name information.
2. update the `RenamedSource` and `RenamedStuff` with extra `Maybe (XRec GhcRn ModuleName)` located module name information.
3. add test `testsuite/tests/hiefile/should_compile/T24493.hs` to ensure the module name is added and update several relevent tests.
4. accompanied submodule haddoc test update MR in https://gitlab.haskell.org/ghc/haddock/-/merge_requests/53

- - - - -
0852436a by Vaibhav Sagar at 2024-03-08T18:28:42-05:00
GHC.Utils.Binary: fix a couple of typos

- - - - -
52525fcc by Ben Gamari at 2024-03-08T18:28:42-05:00
rts: Drop .wasm suffix from .prof file names

This replicates the behavior on Windows, where `Hi.exe` will produce
profiling output named `Hi.prof` instead of `Hi.exe.prof`.

While in the area I also fixed the extension-stripping logic, which
incorrectly rewrote `Hi.exefoo` to `Hi.foo`.

Closes #24515.

- - - - -
bb867146 by Cheng Shao at 2024-03-08T18:28:42-05:00
testsuite: drop exe extension from .hp & .prof filenames

See #24515 for details.

- - - - -
4e3e1f8b by Ben Gamari at 2024-03-08T18:28:43-05:00
rts/linker: Enable GOT support on all platforms

There is nothing platform-dependent about our GOT implementation and
GOT support is needed by `T24171` on i386.

- - - - -
f2b975d1 by Ben Gamari at 2024-03-08T18:36:11-05:00
ci-images: Bump Alpine image to bootstrap with 9.8.2

- - - - -
ce0fb007 by Ben Gamari at 2024-03-08T18:36:12-05:00
testsuite: Mark T24171 as fragile due to #24512

I will fix this but not in time for 9.10.1-alpha1

- - - - -
1c688389 by Ben Gamari at 2024-03-08T18:36:12-05:00
testsuite: Mark linker_unload_native as fragile

In particular this fails on platforms without `dlinfo`. I plan to
address this but not before 9.10.1-alpha1.

- - - - -
a3b450a6 by Ben Gamari at 2024-03-08T18:36:12-05:00
configure: Bump version to 9.10

- - - - -
49fd6982 by Ben Gamari at 2024-03-08T18:36:12-05:00
Bump transformers submodule to 0.6.1.1

- - - - -
7548efc0 by Ben Gamari at 2024-03-08T18:36:12-05:00
testsuite: Increase ulimit for T18623

1 MByte was just too tight and failed intermittently on some platforms
(e.g. CentOS 7). Bumping the limit to 8 MByte should provide sufficient
headroom.

Fixes #23139.

- - - - -
9752f8cd by Ben Gamari at 2024-03-08T18:52:24-05:00
base: Bump version to 4.20.0.0

- - - - -
936a0e62 by Ben Gamari at 2024-03-08T18:52:24-05:00
ghc-internal: Set initial version at 9.1001.0

This provides PVP compliance while maintaining a clear correspondence
between GHC releases and `ghc-internal` versions.

- - - - -
4576390b by Ben Gamari at 2024-03-08T18:52:24-05:00
ghc-prim: Bump version to 0.11.0

- - - - -
0ef1f84b by Ben Gamari at 2024-03-08T18:52:24-05:00
template-haskell: Bump version to 2.22.0.0

- - - - -


30 changed files:

- .gitlab-ci.yml
- compiler/GHC.hs
- compiler/GHC/Builtin/primops.txt.pp
- compiler/GHC/HsToCore/Docs.hs
- compiler/GHC/Iface/Ext/Ast.hs
- compiler/GHC/Parser/Errors/Ppr.hs
- compiler/GHC/Parser/Errors/Types.hs
- compiler/GHC/Parser/PostProcess.hs
- compiler/GHC/StgToCmm/InfoTableProv.hs
- compiler/GHC/Tc/Module.hs
- compiler/GHC/Tc/Types.hs
- compiler/GHC/Tc/Utils/Backpack.hs
- compiler/GHC/Tc/Utils/Monad.hs
- compiler/GHC/Types/Hint.hs
- compiler/GHC/Types/Hint/Ppr.hs
- compiler/GHC/Utils/Binary.hs
- compiler/ghc.cabal.in
- configure.ac
- ghc/ghc-bin.cabal.in
- libraries/array
- libraries/base/base.cabal
- libraries/base/changelog.md
- libraries/base/src/GHC/Base.hs
- libraries/base/src/GHC/Exts.hs
- libraries/deepseq
- libraries/directory
- libraries/exceptions
- libraries/filepath
- libraries/ghc-bignum/ghc-bignum.cabal
- libraries/ghc-boot-th/ghc-boot-th.cabal.in


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/9b97d2c46e2d86ba4af9c10ece9e1b29553657cc...0ef1f84b5381e189a92a8b0dd1c63796dac1cee1

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/9b97d2c46e2d86ba4af9c10ece9e1b29553657cc...0ef1f84b5381e189a92a8b0dd1c63796dac1cee1
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/20240308/60ff44c3/attachment-0001.html>


More information about the ghc-commits mailing list