[Git][ghc/ghc][wip/or-pats] Implement Or Patterns (#22596)

Sebastian Graf (@sgraf812) gitlab at gitlab.haskell.org
Wed Apr 3 11:04:52 UTC 2024



Sebastian Graf pushed to branch wip/or-pats at Glasgow Haskell Compiler / GHC


Commits:
2bfed745 by David Knothe at 2024-04-03T13:04:46+02:00
Implement Or Patterns (#22596)

This commit introduces a new language extension, `-XOrPatterns`, as described in
GHC Proposal 522.

An or-pattern `pat1; ...; patk` succeeds iff one of the patterns `pat1`, ...,
`patk` succeed, in this order.

See also the summary `Note [Implmentation of OrPatterns]`.

Co-Authored-By: Sebastian Graf <sgraf1337 at gmail.com>

- - - - -


30 changed files:

- compiler/GHC/Driver/Session.hs
- compiler/GHC/Hs/Pat.hs
- compiler/GHC/Hs/Syn/Type.hs
- compiler/GHC/Hs/Utils.hs
- compiler/GHC/HsToCore/Match.hs
- compiler/GHC/HsToCore/Pmc/Check.hs
- compiler/GHC/HsToCore/Pmc/Desugar.hs
- compiler/GHC/HsToCore/Pmc/Types.hs
- compiler/GHC/Iface/Ext/Ast.hs
- compiler/GHC/Parser.y
- compiler/GHC/Parser/Errors/Ppr.hs
- compiler/GHC/Parser/Errors/Types.hs
- compiler/GHC/Parser/Lexer.x
- compiler/GHC/Parser/PostProcess.hs
- compiler/GHC/Rename/Bind.hs
- compiler/GHC/Rename/Expr.hs
- compiler/GHC/Rename/Pat.hs
- compiler/GHC/Tc/Errors/Ppr.hs
- compiler/GHC/Tc/Errors/Types.hs
- compiler/GHC/Tc/Gen/Pat.hs
- compiler/GHC/Tc/TyCl/PatSyn.hs
- compiler/GHC/Tc/Zonk/Type.hs
- compiler/GHC/Types/Error/Codes.hs
- compiler/GHC/Utils/Outputable.hs
- compiler/Language/Haskell/Syntax/Extension.hs
- compiler/Language/Haskell/Syntax/Pat.hs
- + docs/users_guide/exts/or_patterns.rst
- docs/users_guide/exts/patterns.rst
- libraries/ghc-boot-th/GHC/LanguageExtensions/Type.hs
- + testsuite/tests/deSugar/should_run/Or5.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/2bfed745a67e4b461db8ccb241bc734996972e3f

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/commit/2bfed745a67e4b461db8ccb241bc734996972e3f
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/20240403/32bde649/attachment.html>


More information about the ghc-commits mailing list