| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Libraries that work without any changes:
- libraries/array
- libraries/directory
- libraries/process
- libraries/stm
- libraries/unix
libraries/haskeline needs a small change
-------------------------
Metric Decrease:
T9630
Metric Increase:
LargeRecord
MultiComponentModules
MultiComponentModulesRecomp
T15703
T8095
T9872d
-------------------------
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replace raise# and raiseIO# with throw and throwIO to append backtraces.
And add tests.
The structure is now close to the proposal.
Add pretty printing of backtraces.
-------------------------
Metric Decrease:
T19695
T9630
Metric Increase:
MultiComponentModules
MultiComponentModulesRecomp
T13035
T9872d
-------------------------
|
| |
|
|
|
|
|
| |
To keep backwards compatibility, for older GHC versions
SomeExceptionWithLocation is only a synonym for SomeException.
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
ghc-prim doesn't depend on base so can't have any Monoid or Semigroup
instances. However, attempting to load these definitions ran into issues
when the interface for `GHC.Base` did exist as that would try and load
the interface for `GHC.Types` (which is the module we are trying to
compile and has no interface).
The fix is to just not do this check when we are compiling a module in
ghc-prim.
Fixes #21069
|
| |
|
| |
|
|
|
|
|
| |
Not all events start with CapNo and there's not logic I could see which
adds this to the length.
|
|
|
|
|
|
|
| |
This leads to corrupted eventlogs because the size of EVENT_MEM_RETURN is
completely wrong.
Fixes a bug introduced in 2e29edb7421c21902b47d130d45f60d3f584a0de
|
|
|
|
|
|
|
| |
This leads to corrupted eventlogs because the size of EVENT_IPE is
completely wrong.
Fixes a bug introduced in 2e29edb7421c21902b47d130d45f60d3f584a0de
|
| |
|
|
|
|
|
|
|
|
|
| |
Adapts GHC to the factoring-out of `Cabal-syntax`.
Fixes #20991.
Metric Decrease:
haddock.Cabal
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Commit ef8a3fbf1 ("ghc-boot: Fix metadata handling of writeFileAtomic")
introduced a somewhat over-engineered fix for #14017 by trying to preserve
the current permissions if the target file already exists.
The problem in the issue is simply that the package db cache file should be
world readable but isn't if umask is too restrictive. In fact the previous
fix only handles part of this problem. If the file isn't already there in a
readable configuration it wont make it so which isn't really ideal either.
Rather than all that we now simply always force all the read access bits to
allow access while leaving the owner at the system default as it's just not
our business to mess with it.
|
|
|
|
|
|
|
|
|
|
| |
Previously `addLibrarySearchPath` failed to normalise the added path to
UNC form before passing it to `AddDllDirectory`. Consequently, the call
was subject to the MAX_PATH restriction, leading to the failure of
`test-defaulting-plugin-fail`, among others. Happily, this also nicely
simplifies the implementation.
Closes #21059.
|
|
|
|
| |
We no longer support Windows Vista.
|
| |
|
|
|
|
|
| |
This allows cost centres to be inserted after the core optimization
pipeline has run.
|
|
|
|
|
|
|
|
| |
This patch adds some performance tests for programs that create
large coercions. This is useful because the existing test coverage
is not very representative of real-world situations. In particular,
this adds a test involving an extensible records library, a common
pain-point for users.
|
|
|
|
|
|
| |
Here we try to separate the policy decisions of where to place mappings
from the mechanism of creating the mappings. This makes things
significantly easier to follow.
|
|
|
|
|
|
|
|
| |
As noted in #21057, we really shouldn't be using MAP_FIXED. I would much
rather have the process crash with a "failed to map" error than randomly
overwrite existing mappings.
Closes #21057.
|
| |
|
| |
|
|
|
|
| |
They are not particularly related to linking.
|
| |
|
|
|
|
| |
See #18147
|
|
|
|
| |
Cf https://gitlab.haskell.org/ghc/ghc/-/issues/18431#note_287139
|
| |
|
|
|
|
|
|
|
|
|
| |
hptSomeThingsBelow would return a list of modules which contain the
.hs-boot file for a particular module. This caused some problems because
we would try and find the module in the HPT (but it's not there when
we're compiling the module itself).
Fixes #21058
|
|
|
|
| |
For consistency with --make and friends.
|
|
|
|
|
|
|
| |
This program was rejected by GHC 9.2, but is accepted
on newer versions of GHC. This patch adds a regression test.
Closes #21037
|
|
|
|
|
|
|
|
|
|
|
| |
Previously, surrounding a head expression with a TH splice would defeat
`tcInferAppHead_maybe`, preventing some expressions from typechecking that
used to typecheck in previous GHC versions (see #21038 for examples). This is
simple enough to fix: just look through `HsSpliceE`s in `tcInferAppHead_maybe`.
I've added some additional prose to `Note [Application chains and heads]` in
`GHC.Tc.Gen.App` to accompany this change.
Fixes #21038.
|
|
|
|
|
| |
`test A == B' is a Bash extension, which doesn't work on platforms where
/bin/sh is not Bash.
|
|
|
|
| |
and also use it from GHC.BaseDir.getBaseDir
|
| |
|
| |
|
|
|
|
| |
Fixes #21052
|
|
|
|
| |
Like -threaded, stage0 isn't guaranteed to have an event-logging RTS.
|
|
|
|
| |
Close #21056
|
|
|
|
|
|
|
|
|
|
|
| |
There appears to be some inconsistency in system-call type naming across
Darwin toolchains. Specifically:
* the `address` argument to `mach_vm_region` apparently wants to be a
`mach_vm_address_t *`, not a `vm_address_t *`
* the `vmsize` argument to `mach_vm_region` wants to be a
`mach_vm_size_t`, not a `vm_size_t`
|
|
|
|
|
| |
Recent FreeBSD versions gained the sched_getaffinity function, which made two
mutually exclusive #ifdef blocks to be enabled.
|
|
|
|
|
| |
`DynFlags` is gone, but let's move a few trivial things around to get
rid of its module too.
|
| |
|
|
|
|
|
|
|
|
|
| |
`hscSimpleIface` does not depend on or modify the `Maybe Fingerprint` it
is given, only passes it through, so get rid of the extraneous passing.
Perhaps the intent was that there would be an iface fingerprint check of
some sort? but this was never done. If/when we we want to do that, we
can add it back then.
|
| |
|
| |
|
| |
|
| |
|
| |
|