[Git][ghc/ghc][wip/marge_bot_batch_merge_job] 4 commits: Parse qualified terms in type signatures

Marge Bot (@marge-bot) gitlab at gitlab.haskell.org
Thu Jan 12 01:16:57 UTC 2023



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


Commits:
300bcc15 by HaskellMouse at 2023-01-11T13:43:36-05:00
Parse qualified terms in type signatures

This commit allows qualified terms in type
signatures to pass the parser and to be cathced by renamer
with more informative error message. Adds a few tests.

Fixes #21605

- - - - -
964284fc by Simon Peyton Jones at 2023-01-11T13:44:12-05:00
Fix void-arg-adding mechanism for worker/wrapper

As #22725 shows, in worker/wrapper we must add the void argument
/last/, not first.  See GHC.Core.Opt.WorkWrap.Utils
Note [Worker/wrapper needs to add void arg last].

That led me to to study GHC.Core.Opt.SpecConstr
Note [SpecConstr needs to add void args first] which suggests the
opposite!  And indeed I think it's the other way round for SpecConstr
-- or more precisely the void arg must precede the "extra_bndrs".

That led me to some refactoring of GHC.Core.Opt.SpecConstr.calcSpecInfo.

- - - - -
a7ca6cb1 by Krzysztof Gogolewski at 2023-01-11T20:16:50-05:00
Add 'docWithStyle' to improve codegen

This new combinator

docWithStyle :: IsOutput doc => doc -> (PprStyle -> SDoc) -> doc

let us remove the need for code to be polymorphic in HDoc
when not used in code style.

Metric Decrease:
    ManyConstructors
    T13035
    T1969

- - - - -
a79a1722 by Simon Peyton Jones at 2023-01-11T20:16:50-05:00
Fix finaliseArgBoxities for OPAQUE function

We never do worker wrapper for OPAQUE functions, so we must
zap the unboxing info during strictness analysis.

This patch fixes #22502

- - - - -


30 changed files:

- compiler/GHC/Core/Opt/DmdAnal.hs
- compiler/GHC/Core/Opt/SpecConstr.hs
- compiler/GHC/Core/Opt/WorkWrap/Utils.hs
- compiler/GHC/Core/Type.hs
- compiler/GHC/Core/Utils.hs
- compiler/GHC/Parser.y
- compiler/GHC/Rename/Env.hs
- compiler/GHC/Rename/HsType.hs
- compiler/GHC/Rename/Unbound.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Types/CostCentre.hs
- compiler/GHC/Types/Error/Codes.hs
- compiler/GHC/Types/Name.hs
- compiler/GHC/Types/Name/Occurrence.hs
- compiler/GHC/Unit/Types.hs
- compiler/GHC/Utils/Outputable.hs
- + testsuite/tests/rename/should_fail/T21605a.hs
- + testsuite/tests/rename/should_fail/T21605a.stderr
- + testsuite/tests/rename/should_fail/T21605b.hs
- + testsuite/tests/rename/should_fail/T21605b.stderr
- + testsuite/tests/rename/should_fail/T21605c.hs
- + testsuite/tests/rename/should_fail/T21605c.stderr
- + testsuite/tests/rename/should_fail/T21605d.hs
- + testsuite/tests/rename/should_fail/T21605d.stderr
- testsuite/tests/rename/should_fail/all.T
- testsuite/tests/simplCore/should_compile/T13143.stderr
- testsuite/tests/simplCore/should_compile/T18328.stderr
- + testsuite/tests/simplCore/should_compile/T22502.hs
- + testsuite/tests/simplCore/should_compile/T22725.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5711e6b2bb69c944df04a8846fba39f055bf0481...a79a172258a36305b4af04105b1d8ce0c8c4caaf

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/5711e6b2bb69c944df04a8846fba39f055bf0481...a79a172258a36305b4af04105b1d8ce0c8c4caaf
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/20230111/a7ca8cae/attachment-0001.html>


More information about the ghc-commits mailing list