[commit: ghc] wip/embelleshed-rdr: Add HsEmbellished type to hsSyn (13f79ba)
git at git.haskell.org
git at git.haskell.org
Fri Feb 17 18:08:29 UTC 2017
Repository : ssh://git@git.haskell.org/ghc
On branch : wip/embelleshed-rdr
Link : http://ghc.haskell.org/trac/ghc/changeset/13f79baf857d82abc8ab838d814ddb1ffc8a1b9f/ghc
>---------------------------------------------------------------
commit 13f79baf857d82abc8ab838d814ddb1ffc8a1b9f
Author: Alan Zimmerman <alan.zimm at gmail.com>
Date: Fri Feb 17 12:13:14 2017 +0200
Add HsEmbellished type to hsSyn
Summary:
A RdrName can be parsed with parens or backquotes if it is used prefix or infix
respectively when it is normally not used that way.
This is not captured in hsSyn, and must be inferred from the occName when pretty
printing, or using the API annotations.
Introduce a wrapper type around the name to capture this
data Embellished name
= EName name
| EParens (Located name)
| EBackquotes (Located name)
So that we now have
data HsExpr id
= HsVar (LEmbellished id) -- ^ Variable
and in the other relevant points in hsSyn.
Test Plan: ./validate
Reviewers: bgamari, austin, goldfire
Subscribers: goldfire, thomie, mpickering, snowleopard
Differential Revision: https://phabricator.haskell.org/D3145
>---------------------------------------------------------------
13f79baf857d82abc8ab838d814ddb1ffc8a1b9f
compiler/deSugar/Check.hs | 4 +-
compiler/deSugar/Coverage.hs | 2 +-
compiler/deSugar/Desugar.hs | 4 +-
compiler/deSugar/DsArrows.hs | 2 +-
compiler/deSugar/DsExpr.hs | 2 +-
compiler/deSugar/DsGRHSs.hs | 4 +-
compiler/deSugar/DsMeta.hs | 96 ++++-----
compiler/deSugar/DsUtils.hs | 2 +-
compiler/deSugar/Match.hs | 2 +-
compiler/deSugar/PmExpr.hs | 2 +-
compiler/ghc.cabal.in | 1 +
compiler/ghc.mk | 1 +
compiler/hsSyn/Convert.hs | 82 ++++----
compiler/hsSyn/HsBinds.hs | 23 ++-
compiler/hsSyn/HsDecls.hs | 35 ++--
compiler/hsSyn/HsEmbellished.hs | 63 ++++++
compiler/hsSyn/HsExpr.hs | 14 +-
compiler/hsSyn/HsPat.hs | 5 +-
compiler/hsSyn/HsSyn.hs | 2 +
compiler/hsSyn/HsTypes.hs | 28 +--
compiler/hsSyn/HsUtils.hs | 54 ++---
compiler/main/HscMain.hs | 2 +-
compiler/main/InteractiveEval.hs | 5 +-
compiler/parser/ApiAnnotation.hs | 1 -
compiler/parser/Parser.y | 220 ++++++++++-----------
compiler/parser/RdrHsSyn.hs | 92 +++++----
compiler/rename/RnBinds.hs | 69 +++----
compiler/rename/RnEnv.hs | 36 +++-
compiler/rename/RnExpr.hs | 28 +--
compiler/rename/RnNames.hs | 30 +--
compiler/rename/RnPat.hs | 45 +++--
compiler/rename/RnSource.hs | 66 ++++---
compiler/rename/RnSplice.hs | 8 +-
compiler/rename/RnTypes.hs | 17 +-
compiler/typecheck/Inst.hs | 6 +-
compiler/typecheck/TcAnnotations.hs | 3 +-
compiler/typecheck/TcBinds.hs | 31 +--
compiler/typecheck/TcClassDcl.hs | 10 +-
compiler/typecheck/TcEnv.hs | 8 +-
compiler/typecheck/TcErrors.hs | 3 +-
compiler/typecheck/TcExpr.hs | 76 +++----
compiler/typecheck/TcGenDeriv.hs | 12 +-
compiler/typecheck/TcHsSyn.hs | 23 +--
compiler/typecheck/TcHsType.hs | 2 +-
compiler/typecheck/TcInstDcls.hs | 4 +-
compiler/typecheck/TcPat.hs | 11 +-
compiler/typecheck/TcPatSyn.hs | 33 ++--
compiler/typecheck/TcRnDriver.hs | 2 +-
compiler/typecheck/TcRnTypes.hs | 5 +-
compiler/typecheck/TcSigs.hs | 34 ++--
compiler/typecheck/TcSplice.hs | 2 +-
compiler/typecheck/TcTyClsDecls.hs | 28 +--
compiler/typecheck/TcTyDecls.hs | 16 +-
ghc/GHCi/UI/Info.hs | 2 +-
testsuite/tests/ghc-api/annotations/T10357.stdout | 2 -
testsuite/tests/ghc-api/annotations/T11321.stdout | 1 -
testsuite/tests/ghc-api/annotations/T13163.stdout | 7 -
testsuite/tests/ghc-api/landmines/landmines.stdout | 2 +-
.../tests/parser/should_compile/DumpParsedAst.hs | 4 +
.../parser/should_compile/DumpParsedAst.stderr | 160 +++++++++++++--
.../parser/should_compile/DumpRenamedAst.stderr | 36 ++--
.../should_compile/DumpTypecheckedAst.stderr | 14 +-
testsuite/tests/quasiquotation/T7918.hs | 4 +-
utils/ghctags/Main.hs | 6 +-
utils/haddock | 2 +-
65 files changed, 952 insertions(+), 644 deletions(-)
Diff suppressed because of size. To see it, use:
git diff-tree --root --patch-with-stat --no-color --find-copies-harder --ignore-space-at-eol --cc 13f79baf857d82abc8ab838d814ddb1ffc8a1b9f
More information about the ghc-commits
mailing list