[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 24 commits: compiler: Turn `FinderCache` into a record of operations so that GHC API clients can
Marge Bot (@marge-bot)
gitlab at gitlab.haskell.org
Thu Jul 4 01:51:37 UTC 2024
Marge Bot pushed to branch wip/marge_bot_batch_merge_job at Glasgow Haskell Compiler / GHC
Commits:
8fb629b9 by Zubin Duggal at 2024-07-03T21:51:09-04:00
compiler: Turn `FinderCache` into a record of operations so that GHC API clients can
have full control over how its state is managed by overriding `hsc_FC`.
Also removes the `uncacheModule` function as this wasn't being used by anything
since 1893ba12fe1fa2ade35a62c336594afcd569736e
Fixes #23604
- - - - -
7539d874 by Oleg Grenrus at 2024-07-03T21:51:11-04:00
Add reflections of GHC.TypeLits/Nats type families
-------------------------
Metric Increase:
ghc_experimental_dir
ghc_experimental_so
-------------------------
- - - - -
ca2881a4 by Teo Camarasu at 2024-07-03T21:51:11-04:00
Deprecate PrimTyConI
- We produce `TyConI` for types where we used to use `PrimTyConI`.
- We add a deprecation warning to `PrimTyConI`
- We add a test case to ensure we can actually reify primitive types.
Resolves #24031
- - - - -
49be7fb6 by Adam Gundry at 2024-07-03T21:51:13-04:00
Correct -Wpartial-fields warning to say "Definition" rather than "Use"
Fixes #24710. The message and documentation for `-Wpartial-fields` were
misleading as (a) the warning occurs at definition sites rather than use
sites, and (b) the warning relates to the definition of a field independently
of the selector function (e.g. because record updates are also partial).
- - - - -
3df08208 by Max Ulidtko at 2024-07-03T21:51:15-04:00
GHCi: Support local Prelude
Fixes #10920, an issue where GHCi bails out when started alongside a
file named Prelude.hs or Prelude.lhs (even empty file suffices).
The in-source Note [GHCi and local Preludes] documents core reasoning.
Supplementary changes:
* add debug traces for module lookups under -ddump-if-trace;
* drop stale comment in GHC.Iface.Load;
* reduce noise in -v3 traces from GHC.Utils.TmpFs;
* new test, which also exercizes HomeModError.
- - - - -
8b0dd1e6 by Ryan Scott at 2024-07-03T21:51:15-04:00
Add missing gParPat in cvtp's ViewP case
When converting a `ViewP` using `cvtp`, we need to ensure that the view pattern
is parenthesized so that the resulting code will parse correctly when
roundtripped back through GHC's parser.
Fixes #24894.
- - - - -
1141c3a1 by Adam Gundry at 2024-07-03T21:51:15-04:00
Use structured error representation for module cycle errors (see #18516)
This removes the re-export of cyclicModuleErr from the top-level GHC module.
- - - - -
714586ab by Adam Gundry at 2024-07-03T21:51:15-04:00
Use structured error representation when reloading a nonexistent module
- - - - -
720fa1a3 by sheaf at 2024-07-03T21:51:15-04:00
Use structured errors for a Backpack instantiation error
- - - - -
c82f336a by sheaf at 2024-07-03T21:51:15-04:00
Move mkFileSrcSpan to GHC.Unit.Module.Location
- - - - -
689313dc by Adriaan Leijnse at 2024-07-03T21:51:16-04:00
ttg: Remove SourceText from OverloadedLabel
Progress towards #21592
- - - - -
a0b0ef66 by Alexander Foremny at 2024-07-03T21:51:16-04:00
AST: GHC.Prelude -> Prelude
Refactor occurrences to GHC.Prelude with Prelude within
Language/Haskell.
Progress towards #21592
- - - - -
03f0543f by Alexander Foremny at 2024-07-03T21:51:16-04:00
AST: remove occurrences of GHC.Unit.Module.ModuleName
`GHC.Unit.Module` re-exports `ModuleName` from
`Language.Haskell.Syntax.Module.Name`.
Progress towards #21592
- - - - -
cc0eaddc by Fabian Kirchner at 2024-07-03T21:51:16-04:00
AST: move Data instance definition for ModuleName to GHC.Unit.Types
To remove the dependency on GHC.Utils.Misc inside
Language.Haskell.Syntax.Module.Name, the instance definition is moved
from there into GHC.Unit.Types.
Progress towards #21592
- - - - -
bb3dae58 by Fabian Kirchner at 2024-07-03T21:51:16-04:00
AST: move negateOverLitVal into GHC.Hs.Lit
The function negateOverLitVal is not used within Language.Haskell and
therefore can be moved to the respective module inside GHC.Hs.
Progress towards #21592
- - - - -
619d983b by Fabian Kirchner at 2024-07-03T21:51:16-04:00
AST: move conDetailsArity into GHC.Rename.Module
The function conDetailsArity is only used inside GHC.Rename.Module. We
therefore move it there from Language.Haskell.Syntax.Lit.
Progress towards #21592
- - - - -
67a82e31 by Mauricio at 2024-07-03T21:51:16-04:00
AST: Remove GHC.Utils.Assert from GHC
Simple cleanup.
Progress towards #21592
- - - - -
31e44262 by Fabian Kirchner at 2024-07-03T21:51:16-04:00
ttg: extract Specificity, ForAllTyFlag and helper functions from GHC.Types.Var
Progress towards #21592
Specificity, ForAllTyFlag and its' helper functions are extracted from
GHC.Types.Var and moved into a new module Language.Haskell.Syntax.Specificity.
Note: Eventually (i.e. after Language.Haskell.Syntax.Decls does not depend on
GHC.* anymore) these should be moved into Language.Haskell.Syntax.Decls.
At this point, this would cause cyclic dependencies.
- - - - -
e520dbb5 by Adowrath at 2024-07-03T21:51:16-04:00
ttg: Split HsSrcBang, remove ref to DataCon from Syntax.Type
Progress towards #21592
This splits HsSrcBang up, creating the new HsBang within
`Language.Haskell.Syntax.Basic`. `HsBang` holds the unpackedness
and strictness information, while `HsSrcBang` only adds the SourceText
for usage within the compiler directly.
Inside the AST, to preserve the SourceText, it is hidden behind the
pre-existing extension point `XBindTy`. All other occurrences of
`HsSrcBang` were adapted to deconstruct the inner `HsBang`, and when
interacting with the `BindTy` constructor, the hidden `SourceText` is
extracted/inserted into the `XBindTy` extension point.
`GHC.Core.DataCon` exports both `HsSrcBang` and `HsBang` for
convenience. A constructor function `mkHsSrcBang` that takes all
individual components has been added.
Two exceptions has been made though:
- The `Outputable HsSrcBang` instance is replaced by
`Outputable HsBang`. While being only GHC-internal, the only place
it's used is in outputting `HsBangTy` constructors -- which already
have `HsBang`. It wouldn't make sense to reconstruct a `HsSrcBang` just
to ignore the `SourceText` anyway.
- The error `TcRnUnexpectedAnnotation` did not use the `SourceText`,
so it too now only holds a `HsBang`.
- - - - -
cfbbc858 by Mauricio at 2024-07-03T21:51:16-04:00
AST: Moved definitions that use GHC.Utils.Panic to GHC namespace
Progress towards #21592
- - - - -
ef2a2d40 by Mike Pilgrem at 2024-07-03T21:51:21-04:00
Fix #25032 Refer to Cabal's `includes` field, not `include-files`
- - - - -
875aa5ef by Matthew Pickering at 2024-07-03T21:51:22-04:00
ci: Use nixpkgs-20.04-darwin channel for darwin toolchain
We are currently seeing a couple of errors on darwin machines after I
bumped the toolchain commit.
```
last 10 log lines:
> from .extern.jaraco.text import yield_lines
> File "/private/tmp/nix-build-python3.11-setuptools-69.5.1.drv-0/source/setuptools/_vendor/jaraco/text/__init__.py", line 12, in <module>
> from setuptools.extern.jaraco.context import ExceptionTrap
> File "/private/tmp/nix-build-python3.11-setuptools-69.5.1.drv-0/source/setuptools/_vendor/jaraco/context.py", line 11, in <module>
> import urllib.request
> File "/nix/store/z3ccgikilqsd1kzjf1sr03wbnjyga4hh-python3-minimal-3.11.9/lib/python3.11/urllib/request.py", line 2656, in <module>
> from _scproxy import _get_proxy_settings, _get_proxies
> ModuleNotFoundError: No module named '_scproxy'
>
> ERROR Backend 'setuptools.build_meta' is not available.
```
In theory this channel should be tested so it should work?
- - - - -
7579de42 by Andrew Lelechenko at 2024-07-03T21:51:22-04:00
base: fix more missing changelog entries
- - - - -
1024576a by Bryan Richter at 2024-07-03T21:51:23-04:00
Add .gitlab/README.md with creds instructions
- - - - -
30 changed files:
- + .gitlab/README.md
- .gitlab/darwin/nix/sources.json
- compiler/GHC.hs
- compiler/GHC/Builtin/Types.hs
- compiler/GHC/Core/DataCon.hs
- compiler/GHC/Core/TyCo/Rep.hs-boot
- compiler/GHC/CoreToIface.hs
- compiler/GHC/Driver/Errors/Ppr.hs
- compiler/GHC/Driver/Errors/Types.hs
- compiler/GHC/Driver/Make.hs
- compiler/GHC/Driver/MakeFile.hs
- compiler/GHC/Hs/Expr.hs
- compiler/GHC/Hs/Lit.hs
- + compiler/GHC/Hs/Specificity.hs
- compiler/GHC/Hs/Syn/Type.hs
- compiler/GHC/Hs/Type.hs
- compiler/GHC/HsToCore.hs
- compiler/GHC/HsToCore/Expr.hs
- compiler/GHC/HsToCore/Quote.hs
- compiler/GHC/Iface/Env.hs
- compiler/GHC/Iface/Load.hs
- compiler/GHC/IfaceToCore.hs
- compiler/GHC/Parser.y
- compiler/GHC/Parser/PostProcess.hs
- compiler/GHC/Rename/Expr.hs
- compiler/GHC/Rename/Module.hs
- compiler/GHC/Tc/Deriv/Generics.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Tc/Gen/Splice.hs
The diff was not included because it is too large.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/295e8964a2554ab6ccee99b5ef278506cf875a25...1024576a4c7107d9e8ede89f5849bb85c30025af
--
This project does not include diff previews in email notifications.
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/295e8964a2554ab6ccee99b5ef278506cf875a25...1024576a4c7107d9e8ede89f5849bb85c30025af
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/20240703/92a84dfc/attachment-0001.html>
More information about the ghc-commits
mailing list