[Git][ghc/ghc][wip/aforemny/parameterize-source-text-lits-over-pass] 4 commits: AST: StringLiteral -> StringLit (type)

Alexander Foremny (@aforemny) gitlab at gitlab.haskell.org
Sun Jun 9 22:37:30 UTC 2024



Alexander Foremny pushed to branch wip/aforemny/parameterize-source-text-lits-over-pass at Glasgow Haskell Compiler / GHC


Commits:
3db2fd41 by Alexander Foremny at 2024-06-10T00:18:33+02:00
AST: StringLiteral -> StringLit (type)

`GHC.Types.SourceText.StringLiteral` does not abbreviate "Literal",
while `GHC.Types.SourceText.{IntegralLit,FractionalLit}` do. To increase
consistency, `StringLiteral` was renamed to `StringLit`.

- - - - -
36bb8780 by Alexander Foremny at 2024-06-10T00:18:37+02:00
AST: StringLiteral -> SL (data constructor)

`GHC.Types.SourceText.StringLit` has data constructor `StringLiteral`,
while `GHC.Types.SourceText.{IntegralLit,FractionalLit}` have data
constructors `{IL,FL}`. To increase consistency, the data constructor
`StringLiteral` was renamed to `SL`.

- - - - -
7bf2b5df by Alexander Foremny at 2024-06-10T00:18:37+02:00
AST: use `StringLit` for `HsIsString`

While `OverLitVal`'s data constructors `HsIntegral`, `HsFractional`
carried `IntegralLit`, `FractionalLit` types, `HsIsString` carries only
`SourceText` and `FastString`. We will want to parameterize over
`SourceText`, which `StringLit`s will support. So we change `HsIsString`
to carry a `StringLit`.

- - - - -
96c93239 by Alexander Foremny at 2024-06-10T00:35:48+02:00
AST: parameterize `GHC.Types.SourceText`'s literals over `pass`

In order to move `GHC.Types.SourceText.SourceText` out of
`Language.Haskell`, we parameterize `GHC.Types.SourceText`'s literals by
`pass`, and replace, say, `IntegralLit`'s `SourceText` field by
`XIntegralLit pass`.

- - - - -


30 changed files:

- compiler/GHC.hs
- compiler/GHC/Core/InstEnv.hs
- compiler/GHC/Hs/Binds.hs
- compiler/GHC/Hs/Expr.hs
- compiler/GHC/Hs/ImpExp.hs
- compiler/GHC/Hs/Lit.hs
- compiler/GHC/Hs/Utils.hs
- compiler/GHC/HsToCore/Match.hs
- compiler/GHC/HsToCore/Match/Literal.hs
- compiler/GHC/HsToCore/Pmc/Solver/Types.hs
- compiler/GHC/HsToCore/Quote.hs
- compiler/GHC/Iface/Make.hs
- compiler/GHC/Iface/Syntax.hs
- compiler/GHC/Parser.y
- compiler/GHC/Parser/HaddockLex.x
- compiler/GHC/Parser/Header.hs
- compiler/GHC/Parser/Lexer.x
- compiler/GHC/Parser/PostProcess.hs
- compiler/GHC/Rename/Bind.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/App.hs
- compiler/GHC/Tc/Gen/Head.hs
- compiler/GHC/Tc/Gen/HsType.hs
- compiler/GHC/Tc/Utils/Instantiate.hs
- compiler/GHC/Tc/Utils/TcMType.hs
- compiler/GHC/ThToHs.hs


The diff was not included because it is too large.


View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/a0b0dccfad472073fbf2edbee68bd9e788134908...96c93239e3083abcf8f0352b490c4f8999cd3e27

-- 
View it on GitLab: https://gitlab.haskell.org/ghc/ghc/-/compare/a0b0dccfad472073fbf2edbee68bd9e788134908...96c93239e3083abcf8f0352b490c4f8999cd3e27
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/20240609/3c240903/attachment.html>


More information about the ghc-commits mailing list