[Git][ghc/ghc][wip/multiline-strings] 15 commits: isIrrefutableHsPat: consider COMPLETE pragmas

Brandon Chinn (@brandonchinn178) gitlab at gitlab.haskell.org
Tue Jul 16 15:46:27 UTC 2024



Brandon Chinn pushed to branch wip/multiline-strings at Glasgow Haskell Compiler / GHC


Commits:
572fbc44 by sheaf at 2024-07-15T08:30:32-04:00
isIrrefutableHsPat: consider COMPLETE pragmas

This patch ensures we taken into account COMPLETE pragmas when we
compute whether a pattern is irrefutable. In particular, if a pattern
synonym is the sole member of a COMPLETE pragma (without a result TyCon),
then we consider a pattern match on that pattern synonym to be irrefutable.

This affects the desugaring of do blocks, as it ensures we don't use
a "fail" operation.

Fixes #15681 #16618 #22004

- - - - -
84dadea9 by Zubin Duggal at 2024-07-15T08:31:09-04:00
haddock: Handle non-hs files, so that haddock can generate documentation for modules with
foreign imports and template haskell.

Fixes #24964

- - - - -
0b4ff9fa by Zubin Duggal at 2024-07-15T12:12:30-04:00
haddock: Keep track of warnings/deprecations from dependent packages in `InstalledInterface`
and use this to propagate these on items re-exported from dependent packages.

Fixes #25037

- - - - -
b8b4b212 by Zubin Duggal at 2024-07-15T12:12:30-04:00
haddock: Keep track of instance source locations in `InstalledInterface` and use this to add
source locations on out of package instances

Fixes #24929

- - - - -
559a7a7c by Matthew Pickering at 2024-07-15T12:13:05-04:00
ci: Refactor job_groups definition, split up by platform

The groups are now split up so it's easier to see which jobs are
generated for each platform

No change in behaviour, just refactoring.

- - - - -
b6442dfb by Brandon Chinn at 2024-07-16T15:46:24+00:00
Add MultilineStrings extension

- - - - -
2aa33311 by Brandon Chinn at 2024-07-16T15:46:24+00:00
Add test cases for MultilineStrings

- - - - -
26b9647d by Brandon Chinn at 2024-07-16T15:46:24+00:00
Break out common lex_magic_hash logic for strings and chars

- - - - -
64a99afb by Brandon Chinn at 2024-07-16T15:46:24+00:00
Factor out string processing functions

- - - - -
c8e86611 by Brandon Chinn at 2024-07-16T15:46:24+00:00
Implement MultilineStrings (#24390)

Updates haddock submodule for new ITmultiline constructor

- - - - -
82103cf9 by Brandon Chinn at 2024-07-16T15:46:24+00:00
Add docs for MultilineStrings

- - - - -
05062a2b by Brandon Chinn at 2024-07-16T15:46:24+00:00
Address feedback

- - - - -
785f338b by Brandon Chinn at 2024-07-16T15:46:24+00:00
Add string literal performance test

- - - - -
a437ed4d by Brandon Chinn at 2024-07-16T15:46:24+00:00
Address feedback

- - - - -
c788c5a1 by Brandon Chinn at 2024-07-16T15:46:24+00:00
Reimplement with manual iteration

- - - - -


30 changed files:

- .gitlab/generate-ci/gen_ci.hs
- compiler/GHC/Core/ConLike.hs
- compiler/GHC/Driver/Env.hs
- compiler/GHC/Driver/Flags.hs
- compiler/GHC/Hs/Lit.hs
- compiler/GHC/Hs/Pat.hs
- compiler/GHC/Hs/Syn/Type.hs
- compiler/GHC/HsToCore/Match/Literal.hs
- compiler/GHC/HsToCore/Monad.hs
- compiler/GHC/HsToCore/Pmc/Solver.hs
- compiler/GHC/HsToCore/Pmc/Solver/Types.hs
- compiler/GHC/HsToCore/Types.hs
- compiler/GHC/HsToCore/Utils.hs
- compiler/GHC/Iface/Make.hs
- compiler/GHC/Iface/Syntax.hs
- compiler/GHC/IfaceToCore.hs
- compiler/GHC/IfaceToCore.hs-boot
- compiler/GHC/Parser.y
- compiler/GHC/Parser/CharClass.hs
- compiler/GHC/Parser/Lexer.x
- + compiler/GHC/Parser/String.hs
- compiler/GHC/Rename/Bind.hs
- compiler/GHC/Rename/Env.hs
- compiler/GHC/Rename/Expr.hs
- compiler/GHC/Rename/Module.hs
- compiler/GHC/Rename/Names.hs
- compiler/GHC/Rename/Pat.hs
- compiler/GHC/Rename/Utils.hs
- compiler/GHC/Tc/Gen/Bind.hs
- compiler/GHC/Tc/Gen/Do.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/d45104563b451983547d739bafd381f5fbb3b8a0...c788c5a1e5b18db96eb71f7add0e7aebc4101db3

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/d45104563b451983547d739bafd381f5fbb3b8a0...c788c5a1e5b18db96eb71f7add0e7aebc4101db3
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/20240716/4b5513db/attachment.html>


More information about the ghc-commits mailing list