-
1d99d3e4
by maralorn at 2025-06-12T03:47:39-04:00
Add necessary flag for js linking
-
974d5734
by maralorn at 2025-06-12T03:47:39-04:00
Don’t use additional linker flags to detect presence of -fno-pie in configure.ac
This mirrors the behavior of ghc-toolchain
-
1e9eb118
by Andrew Lelechenko at 2025-06-12T03:48:21-04:00
Add HasCallStack to Control.Monad.Fail.fail
CLC proposal https://github.com/haskell/core-libraries-committee/issues/327
2% compile-time allocations increase in T3064, likely because `fail`
is now marginally more expensive to compile.
Metric Increase:
T3064
-
6d12060f
by meooow25 at 2025-06-12T14:26:07-04:00
Bump containers submodule to 0.8
Also
* Disable -Wunused-imports for containers
* Allow containers-0.8 for in-tree packages
* Bump some submodules so that they allow containers-0.8. These are not
at any particular versions.
* Remove unused deps containers and split from ucd2haskell
* Fix tests affected by the new containers and hpc-bin
-
537bd233
by Peng Fan at 2025-06-12T14:27:02-04:00
NCG/LA64: Optimize code generation and reduce build-directory size.
1. makeFarBranches: Prioritize fewer instruction sequences.
2. Prefer instructions with immediate numbers to reduce register moves,
e.g. andi,ori,xori,addi.
3. Ppr: Remove unnecessary judgments.
4. genJump: Avoid "ld+jr" as much as possible.
5. BCOND and BCOND1: Implement conditional jumps with two jump ranges,
with limited choice of the shortest.
6. Implement FSQRT, CLT, CTZ.
7. Remove unnecessary code.
-
19f20861
by Simon Peyton Jones at 2025-06-13T09:51:11-04:00
Improve redundant constraints for instance decls
Addresses #25992, which showed that the default methods
of an instance decl could make GHC fail to report redundant
constraints.
Figuring out how to do this led me to refactor the computation
of redundant constraints. See the entirely rewritten
Note [Tracking redundant constraints]
in GHC.Tc.Solver.Solve
-
1d02798e
by Matthew Pickering at 2025-06-13T09:51:54-04:00
Refactor the treatment of nested Template Haskell splices
* The difference between a normal splice, a quasiquoter and implicit
splice caused by lifting is stored in the AST after renaming.
* Information that the renamer learns about splices is stored in the
relevant splice extension points (XUntypedSpliceExpr, XQuasiQuote).
* Normal splices and quasi quotes record the flavour of splice
(exp/pat/dec etc)
* Implicit lifting stores information about why the lift was attempted,
so if it fails, that can be reported to the user.
* After renaming, the decision taken to attempt to implicitly lift a
variable is stored in the `XXUntypedSplice` extension field in the
`HsImplicitLiftSplice` constructor.
* Since all the information is stored in the AST, in `HsUntypedSplice`,
the type of `PendingRnSplice` now just stores a `HsUntypedSplice`.
* Error messages since the original program can be easily
printed, this is noticeable in the case of implicit lifting.
* The user-written syntax is directly type-checked. Before, some
desugaring took place in the
* Fixes .hie files to work better with nested splices (nested splices
are not indexed)
* The location of the quoter in a quasiquote is now located, so error
messages will precisely point to it (and again, it is indexed by hie
files)
In the future, the typechecked AST should also retain information about
the splices and the specific desugaring being left to the desugarer.
Also, `runRnSplice` should call `tcUntypedSplice`, otherwise the
typechecking logic is duplicated (see the `QQError` and `QQTopError`
tests for a difference caused by this).
-
f93798ba
by Cheng Shao at 2025-06-13T09:52:35-04:00
libffi: update to 3.5.1
Bumps libffi submodule.
-
c7aa0c10
by Andreas Klebinger at 2025-06-15T05:47:24-04:00
Revert "Specialise: Don't float out constraint components."
This reverts commit c9abb87ccc0c91cd94f42b3e36270158398326ef.
Turns out two benchmarks from #19747 regresses by a factor of 7-8x if
we do not float those out.
-
fd998679
by Krzysztof Gogolewski at 2025-06-15T05:48:06-04:00
Fix EPT enforcement when mixing unboxed tuples and non-tuples
The code was assuming that an alternative cannot be returning a normal
datacon and an unboxed tuple at the same time. However, as seen in #26107,
this can happen when using a GADT to refine the representation type.
The solution is just to conservatively return TagDunno.
-
e14783a3
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
- Remove one `SrcSpan` field from `VAExpansion`. It is no longer needed.
- Make `tcExpr` take a `Maybe HsThingRn` which will be passed on to tcApp and used by splitHsApps to determine a more accurate `AppCtx`
- `tcXExpr` is less hacky now
- do not look through HsExpansion applications
- kill OrigPat and remove HsThingRn From VAExpansion
- look through XExpr ExpandedThingRn while inferring type of head
- always set in generated code after stepping inside a ExpandedThingRn
- fixing record update error messages
- remove special case of tcbody from tcLambdaMatches
- wrap last stmt expansion in a HsPar so that the error messages are prettier
- remove special case of dsExpr for ExpandedThingTc
- make EExpand (HsExpr GhcRn) instead of EExpand HsThingRn
- fixing error messages for rebindable
-
91c2d201
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
some progress on tick
-
7593d235
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
remove adhoc cases from ticks
-
74f719ce
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
fix the case where head of the application chain is an expanded expression and the argument is a type application c.f. T19167.hs
-
30967800
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
move setQLInstLevel inside tcInstFun
-
b4f58765
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
ignore ds warnings originating from gen locations
-
ca0448c1
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
filter expr stmts error msgs
-
749b439c
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
exception for AppDo while making error ctxt
-
a4fd8806
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
moving around things for locations and error ctxts
-
f03ad641
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
popErrCtxt doesn't push contexts and popErrCtxts in the first argument to bind and >> in do expansion statements
-
4b93567b
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
accept test cases with changed error messages
-------------------------
Metric Decrease:
T9020
-------------------------
-
7e6e55df
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
look through PopErrCtxt while splitting exprs in application chains
-
046b5742
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
remove special case for HsExpanded in Ticks
-
22f119ae
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
check the right origin for record selector incomplete warnings
-
77542fbb
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
kill VAExpansion
-
c945aa37
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
pass CtOrigin to tcApp for instantiateSigma
-
66dac62d
by Apoorv Ingle at 2025-06-15T21:39:01-05:00
do not suppress pprArising
-
f959d3f1
by Apoorv Ingle at 2025-06-15T21:40:24-05:00
kill VACall
-
795f9ff5
by Apoorv Ingle at 2025-06-15T21:40:30-05:00
kill AppCtxt
-
26d45bdc
by Apoorv Ingle at 2025-06-15T21:40:30-05:00
remove addHeadCtxt
-
f2648832
by Apoorv Ingle at 2025-06-15T21:40:30-05:00
fix pprArising for MonadFailErrors
-
662f38ff
by Apoorv Ingle at 2025-06-15T21:40:30-05:00
rename ctxt to sloc