- Jul 20, 2023
-
-
This commit adds similar name suggestions when importing. For example module A where { spelling = 'o' } module B where { import B ( speling ) } will give rise to the error message: Module ‘A’ does not export ‘speling’. Suggested fix: Perhaps use ‘spelling’ This also provides hints when users try to import record fields defined with NoFieldSelectors. (cherry picked from commit 1af2e773)
-
In an import declaration such as import M ( var ) the import of the variable "var" should **not** bring into scope record fields named "var" which are defined with NoFieldSelectors. Doing so can cause spurious "unused import" warnings, as reported in ticket #23557. Fixes #23557 (cherry picked from commit c7bbad9a)
-
This commit consolidates all the logic for looking up something in the Global Reader Environment into the single function lookupGRE. This allows us to declaratively specify all the different modes of looking up in the GlobalRdrEnv, and avoids manually passing around filtering functions as was the case in e.g. the function GHC.Rename.Env.lookupSubBndrOcc_helper. ------------------------- Metric Decrease: T8095 ------------------------- ------------------------- Metric Increase: T8095 ------------------------- (cherry picked from commit 7f0a86ed)
-
These are simple helper functions that wrap the internal field names gre_info, gre_par. (cherry picked from commit 6fd8f566)
-
Commit 3f374399 inadvertently broke the deprecation/warning mechanism for record fields due to its introduction of record field namespaces. This patch ensures that, when a top-level deprecation is applied to an identifier, it applies to all the record fields as well. This is achieved by refactoring GHC.Rename.Env.lookupLocalTcNames, and GHC.Rename.Env.lookupBindGroupOcc, to not look up a fixed number of NameSpaces but to look up all NameSpaces and filter out the irrelevant ones. (cherry picked from commit 6143838a)
-
Ryan Scott authored
The `'[]` case in `tc_infer_hs_type` is smart enough to handle arity-0 uses of `'[]` (see the newly added `T23543` test case for an example), but the `'[]` case in `tc_hs_type` was not. We fix this by changing the `tc_hs_type` case to invoke `tc_infer_hs_type`, as prescribed in `Note [Future-proofing the type checker]`. There are some benign changes to test cases' expected output due to the new code path using `forall a. [a]` as the kind of `'[]` rather than `[k]`. Fixes #23543. (cherry picked from commit c335fb7c)
-
This implements GHC proposal https://github.com/ghc-proposals/ghc-proposals/pull/596 Also add support for Int64# and Word64#; see testcase ShowPrim. (cherry picked from commit 787bae96)
-
Sylvain Henry authored
(cherry picked from commit b55a8ea7)
-
Add the missing changelog.md entries and @since-annotations. (cherry picked from commit 7f13acbf)
-
Found by Simon in ghc/ghc#23567 (comment 507834) The testcase isn't ideal because it doesn't detect the bug in master, unless doNotUnbox is removed as in ghc/ghc#23567 (comment 507692). But I have confirmed that with that modification, it fails before and passes afterwards. (cherry picked from commit bf9b9de0)
-
deb9 is now EOL so it's time to upgrade the i386 bindist to use deb10 Fixes #23585 (cherry picked from commit c39f279b)
-
The function GHC.Tc.Errors.validHoleFits would end up panicking when encountering a Given constraint. To fix this, it suffices to filter out the Givens before continuing. Fixes #22684 (cherry picked from commit 630e3026)
-
Sylvain Henry authored
(cherry picked from commit 550af505)
-
The GREInfo for a record field should include the collection of all the data constructors of the parent TyCon that have this record field. This information was being incorrectly computed in the tyThingLocalGREs function for a DataCon, as we were not taking into account other DataCons with the same parent TyCon. Fixes #23546 (cherry picked from commit 61b1932e)
-
There was an oversight in the driver which assumed that you would always produce a `.o` file when compiling a .cmm file. Fixes #23610 (cherry picked from commit 76983a0d)
-
This extra bit of information was accidentally being discarded after a refactoring of the way we reported problems when unifying a type variable with another type. This patch rectifies that. (cherry picked from commit 2b55cb5f)
-
(cherry picked from commit 4af7eac2)
-
Polymorphic specialisation has led to a number of hard to diagnose incorrect runtime result bugs (see #23469, #23109, #21229, #23445) so this commit introduces a flag `-fpolymorhphic-specialisation` which allows users to turn on this experimental optimisation if they are willing to buy into things going very wrong. Ticket #23469 (cherry picked from commit 9f01d14b)
-
(cherry picked from commit 4457da2a)
-
Sylvain Henry authored
(cherry picked from commit 78b2f3cc)
-
Ben Gamari authored
-
Ben Gamari authored
-
- Jul 19, 2023
-
-
Ben Gamari authored
-
Ben Gamari authored
When the Win32 threaded IO manager shuts down, `ioManagerDie` sends an `IO_MANAGER_DIE` event to the IO manager thread using the `io_manager_event` event object. Finally, it will closes the event object, and invalidate `io_manager_event`. Previously, `readIOManagerEvent` would see that `io_manager_event` is invalid and return `0`, suggesting that everything is right with the world. This meant that if `ioManagerDie` invalidated the handle before the event manager was blocked on the event we would end up in a situation where the event manager would never realize it was asked to shut down. Fix this by ensuring that `readIOManagerEvent` instead returns `IO_MANAGER_DIE` when we detect that the event object has been invalidated by `ioManagerDie`. Fixes #23691.
-
Ben Gamari authored
-
- Jul 13, 2023
-
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
-
Ben Gamari authored
This test passes on dynamically-linked Alpine.
-
Ben Gamari authored
Due to spurious output changes described in #23648.
-
Ben Gamari authored
Metric Increase: T6048
-
Ben Gamari authored
To freeze emsdk, avoiding #23641.
-
- Jul 12, 2023
-
-
Ben Gamari authored
x86-64/Darwin's toolchain inexplicably warns that collectFreshWeakPtrs needs to be a prototype. (cherry picked from commit bb0ed354)
-
Ben Gamari authored
-
GHC.Rename.Utils concrete helpers instead of wrapGenSpan + HS AST constructors (cherry picked from commit dd782343)
-
(cherry picked from commit 3efe7f39)
-
This fixes #23492. The problem was that we used the real source span of the field declaration for the generated catch-all case in the selector function, in particular in the generated call to `recSelError`, which meant it was included in the HIE output. Using `generatedSrcSpan` instead means that it is not included. (cherry picked from commit 356a2692)
-