[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 11 commits: base: Propagate `error` CallStack to thrown exception

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Sat Sep 21 08:47:19 UTC 2024



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


Commits:
e7b54e36 by Ben Gamari at 2024-09-21T04:46:50-04:00
base: Propagate `error` CallStack to thrown exception

Previously `errorCallWithCallStackException` failed to propagate its
`CallStack` argument, which represents the call-chain of the preceding
`error` call, to the exception that it returned. Consequently, the
call-stack of `error` calls were quite useless.

Unfortunately, this is the second time that I have fixed this but it
seems the first must have been lost in rebasing.

Fixes #24807.

- - - - -
e20c202e by Sebastian Graf at 2024-09-21T04:46:51-04:00
Demand: Combine examples into Note (#25107)

Just a leftover from !13060.

Fixes #25107.

- - - - -
f42b26dc by sheaf at 2024-09-21T04:46:52-04:00
Use x86_64-unknown-windows-gnu target for LLVM on Windows

- - - - -
799282f6 by sheaf at 2024-09-21T04:46:52-04:00
LLVM: use -relocation-model=pic on Windows

This is necessary to avoid the segfaults reported in #22487.

Fixes #22487

- - - - -
51ab91bb by Ryan Hendrickson at 2024-09-21T04:46:53-04:00
compiler: Use type abstractions when deriving

For deriving newtype and deriving via, in order to bring type variables
needed for the coercions into scope, GHC generates type signatures for
derived class methods. As a simplification, drop the type signatures and
instead use type abstractions to bring method type variables into scope.

- - - - -
9fbd08f6 by Zubin Duggal at 2024-09-21T04:46:54-04:00
driver: Ensure we run driverPlugin for staticPlugins (#25217)

driverPlugins are only run when the plugin state changes. This meant they were
never run for static plugins, as their state never changes.

We need to keep track of whether a static plugin has been initialised to ensure
we run static driver plugins at least once. This necessitates an additional field
in the `StaticPlugin` constructor as this state has to be bundled with the plugin
itself, as static plugins have no name/identifier we can use to otherwise reference
them

- - - - -
a80f4234 by Andreas Klebinger at 2024-09-21T04:46:55-04:00
Allow unknown fd device types for setNonBlockingMode.

This allows fds with a unknown device type to have blocking mode
set. This happens for example for fds from the inotify subsystem.

Fixes #25199.

- - - - -
892fa884 by Hécate Kleidukos at 2024-09-21T04:46:59-04:00
Use Hackage version of Cabal 3.14.0.0 for Hadrian.
We remove the vendored Cabal submodule.

Also update the bootstrap plans

Fixes #25086

- - - - -
2f28bf0e by Zubin Duggal at 2024-09-21T04:46:59-04:00
ci: Ensure we source ci.sh in any jobs that run commands outside of ci.sh

ci.sh sets up the toolchain environment, including paths for the cabal directory, the
toolchain binaries etc. If we run any commands outside of ci.sh, unless we
source ci.sh we will use the wrong values for these environment variables.

In particular, I ran into an issue where the cabal invocation `hadrian/ghci` was
using an old index state despite `ci.sh setup` updating and setting the correct
index state. This is because `ci.sh` sets the `CABAL_DIR` to a different place, which
is where the index was downloaded to, but we were using the default cabal directory
outside ci.sh

The solution is to source the correct environment `ci.sh` using `. ci.sh setup`

- - - - -
1f66f3b9 by Sven Tennie at 2024-09-21T04:47:00-04:00
ghc-toolchain: Set -fuse-ld even for ld.bfd

This reflects the behaviour of the autoconf scripts.

- - - - -
2404d801 by Sylvain Henry at 2024-09-21T04:47:03-04:00
Parser: be more careful when lexing extended literals (#25258)

Previously we would lex invalid prefixes like "8#Int3" as [8#Int, 3].

A side-effect of this patch is that we now allow negative unsigned
extended literals. They trigger an overflow warning later anyway.

- - - - -


25 changed files:

- .gitignore
- .gitlab-ci.yml
- .gitlab/ci.sh
- .gitmodules
- compiler/GHC/Core/Opt/DmdAnal.hs
- compiler/GHC/Data/StringBuffer.hs
- compiler/GHC/Driver/Pipeline/Execute.hs
- compiler/GHC/Driver/Plugins.hs
- compiler/GHC/Hs/Pat.hs
- compiler/GHC/Parser.y
- compiler/GHC/Parser/Lexer.x
- compiler/GHC/Parser/PostProcess.hs
- compiler/GHC/Rename/Pat.hs
- compiler/GHC/Runtime/Loader.hs
- compiler/GHC/Tc/Deriv.hs
- compiler/GHC/Tc/Deriv/Generate.hs
- compiler/GHC/Tc/Gen/Pat.hs
- compiler/GHC/ThToHs.hs
- compiler/GHC/Types/Demand.hs
- docs/users_guide/exts/extended_literals.rst
- hadrian/bootstrap/bootstrap.py
- hadrian/bootstrap/generate_bootstrap_plans
- hadrian/bootstrap/plan-9_10_1.json
- − hadrian/bootstrap/plan-9_4_1.json
- − hadrian/bootstrap/plan-9_4_2.json


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ac820b38f632fe88aa835aed61930ce8edf598c2...2404d8013374ed12efc2a1a26ce1840529f614da

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/ac820b38f632fe88aa835aed61930ce8edf598c2...2404d8013374ed12efc2a1a26ce1840529f614da
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/20240921/5848908f/attachment.html>


More information about the ghc-commits mailing list