diff options
author | Alan Zimmerman <alan.zimm@gmail.com> | 2019-02-03 10:27:42 +0200 |
---|---|---|
committer | Marge Bot <ben+marge-bot@smart-cactus.org> | 2019-02-08 11:00:22 -0500 |
commit | c1cf2693d6efddeeeb813cd8995a1be136800d17 (patch) | |
tree | 24130e1f3f9b697e7cb622ebf780f36f2271c5f0 /rts/ProfilerReportJson.c | |
parent | 5e9888bd9c22a1315a703f638591b50e657317c4 (diff) | |
download | haskell-c1cf2693d6efddeeeb813cd8995a1be136800d17.tar.gz |
Lexer: Alternate Layout Rule injects actual not virtual braces
When the alternate layout rule is activated via a pragma, it injects
tokens for { and } to make sure that the source is parsed properly.
But it injects ITocurly and ITccurly, rather than their virtual
counterparts ITvocurly and ITvccurly.
This causes problems for ghc-exactprint, which tries to print these.
Likewise, any injected ITsemi should have a zero-width SrcSpan.
Test case (the existing T13087.hs)
{-# LANGUAGE AlternativeLayoutRule #-}
{-# LANGUAGE LambdaCase #-}
isOne :: Int -> Bool
isOne = \case 1 -> True
_ -> False
main = return ()
Closes #16279
Diffstat (limited to 'rts/ProfilerReportJson.c')
0 files changed, 0 insertions, 0 deletions