diff options
author | David Feuer <david.feuer@gmail.com> | 2018-06-02 21:24:04 -0400 |
---|---|---|
committer | Ben Gamari <ben@smart-cactus.org> | 2018-06-02 23:21:01 -0400 |
commit | 5b82ee695e1dbbe355c775e265521c4c3ee8cdbb (patch) | |
tree | e688af794edd4aa7d94f670b22a9d46188298afb /compiler/parser | |
parent | 1626fe600672d3dabcf95d11a6c16da5f5ec1068 (diff) | |
download | haskell-5b82ee695e1dbbe355c775e265521c4c3ee8cdbb.tar.gz |
Remove ~# from surface syntax
For some reason, it seems that the `ConstraintKinds` commit
introduced `~#` into Haskell syntax, in a pretty broken manner.
Unless and until we have an actual story for unboxed equality,
it doesn't make sense to expose it. Moreover, the way it was
donet was wrong enough and small enough that it will probably be
easier to start over if we do that. Yank it out.
Reviewers: bgamari, RyanGlScott
Reviewed By: RyanGlScott
Subscribers: RyanGlScott, rwbarton, thomie, mpickering, carter
GHC Trac Issues: #15209
Differential Revision: https://phabricator.haskell.org/D4763
Diffstat (limited to 'compiler/parser')
-rw-r--r-- | compiler/parser/ApiAnnotation.hs | 3 | ||||
-rw-r--r-- | compiler/parser/Lexer.x | 2 | ||||
-rw-r--r-- | compiler/parser/Parser.y | 3 |
3 files changed, 1 insertions, 7 deletions
diff --git a/compiler/parser/ApiAnnotation.hs b/compiler/parser/ApiAnnotation.hs index 282d3904f8..4d1758ff3c 100644 --- a/compiler/parser/ApiAnnotation.hs +++ b/compiler/parser/ApiAnnotation.hs @@ -280,7 +280,6 @@ data AnnKeywordId | AnnThIdTySplice -- ^ '$$' | AnnThTyQuote -- ^ double ''' | AnnTilde -- ^ '~' - | AnnTildehsh -- ^ '~#' | AnnType | AnnUnit -- ^ '()' for types | AnnUsing @@ -322,7 +321,7 @@ instance Outputable AnnotationComment where -- | - 'ApiAnnotation.AnnKeywordId' : 'ApiAnnotation.AnnOpen', -- 'ApiAnnotation.AnnClose','ApiAnnotation.AnnComma', --- 'ApiAnnotation.AnnRarrow','ApiAnnotation.AnnTildehsh', +-- 'ApiAnnotation.AnnRarrow' -- 'ApiAnnotation.AnnTilde' -- - May have 'ApiAnnotation.AnnComma' when in a list type LRdrName = Located RdrName diff --git a/compiler/parser/Lexer.x b/compiler/parser/Lexer.x index fc8b988332..006faccf11 100644 --- a/compiler/parser/Lexer.x +++ b/compiler/parser/Lexer.x @@ -678,7 +678,6 @@ data Token | ITrarrow IsUnicodeSyntax | ITat | ITtilde - | ITtildehsh | ITdarrow IsUnicodeSyntax | ITminus | ITbang @@ -888,7 +887,6 @@ reservedSymsFM = listToUFM $ ,("->", ITrarrow NormalSyntax, always) ,("@", ITat, always) ,("~", ITtilde, always) - ,("~#", ITtildehsh, magicHashEnabled) ,("=>", ITdarrow NormalSyntax, always) ,("-", ITminus, always) ,("!", ITbang, always) diff --git a/compiler/parser/Parser.y b/compiler/parser/Parser.y index 533e21d0d1..af8c95fb2b 100644 --- a/compiler/parser/Parser.y +++ b/compiler/parser/Parser.y @@ -522,7 +522,6 @@ are the most common patterns, rewritten as regular expressions for clarity: '->' { L _ (ITrarrow _) } '@' { L _ ITat } '~' { L _ ITtilde } - '~#' { L _ ITtildehsh } '=>' { L _ (ITdarrow _) } '-' { L _ ITminus } '!' { L _ ITbang } @@ -3119,8 +3118,6 @@ ntgtycon :: { Located RdrName } -- A "general" qualified tycon, excluding unit | '(' '->' ')' {% ams (sLL $1 $> $ getRdrName funTyCon) [mop $1,mu AnnRarrow $2,mcp $3] } | '[' ']' {% ams (sLL $1 $> $ listTyCon_RDR) [mos $1,mcs $2] } - | '(' '~#' ')' {% ams (sLL $1 $> $ getRdrName eqPrimTyCon) - [mop $1,mj AnnTildehsh $2,mcp $3] } oqtycon :: { Located RdrName } -- An "ordinary" qualified tycon; -- These can appear in export lists |