summaryrefslogtreecommitdiff
path: root/compiler/simplCore
diff options
context:
space:
mode:
authorAlan Zimmerman <alan.zimm@gmail.com>2016-01-15 00:03:58 +0200
committerAlan Zimmerman <alan.zimm@gmail.com>2016-01-16 15:54:04 +0200
commit3a1babd6243edd96073ed3e3a5fb6e0aaf11350e (patch)
treee578589e61895b392c761daaa2cb14f790fac5d8 /compiler/simplCore
parent148a50b5f8a9db4c3e2724540c41a7a7a10b3194 (diff)
downloadhaskell-3a1babd6243edd96073ed3e3a5fb6e0aaf11350e.tar.gz
Work SourceText in for all integer literals
Summary: Certain syntactic elements have integers in them, such as fixity specifications, SPECIALISE pragmas and so on. The lexer will accept mult-radix literals, with arbitrary leading zeros in these. Bring in a SourceText field to each affected AST element to capture the original literal text for use with API Annotations. Affected hsSyn elements are ``` -- See note [Pragma source text] data Activation = NeverActive | AlwaysActive | ActiveBefore SourceText PhaseNum -- Active only *strictly before* this phase | ActiveAfter SourceText PhaseNum -- Active in this phase and later deriving( Eq, Data, Typeable ) -- Eq used in comparing rules in HsDecls data Fixity = Fixity SourceText Int FixityDirection -- Note [Pragma source text] deriving (Data, Typeable) ``` and ``` | HsTickPragma -- A pragma introduced tick SourceText -- Note [Pragma source text] in BasicTypes (StringLiteral,(Int,Int),(Int,Int)) -- external span for this tick ((SourceText,SourceText),(SourceText,SourceText)) -- Source text for the four integers used in the span. -- See note [Pragma source text] in BasicTypes (LHsExpr id) ``` Updates haddock submodule Test Plan: ./validate Reviewers: goldfire, bgamari, austin Reviewed By: bgamari Subscribers: thomie, mpickering Differential Revision: https://phabricator.haskell.org/D1781 GHC Trac Issues: #11430
Diffstat (limited to 'compiler/simplCore')
-rw-r--r--compiler/simplCore/SimplUtils.hs4
1 files changed, 2 insertions, 2 deletions
diff --git a/compiler/simplCore/SimplUtils.hs b/compiler/simplCore/SimplUtils.hs
index 846d1cc838..43c8cb65df 100644
--- a/compiler/simplCore/SimplUtils.hs
+++ b/compiler/simplCore/SimplUtils.hs
@@ -700,8 +700,8 @@ updModeForStableUnfoldings inline_rule_act current_mode
-- For sm_rules, just inherit; sm_rules might be "off"
-- because of -fno-enable-rewrite-rules
where
- phaseFromActivation (ActiveAfter n) = Phase n
- phaseFromActivation _ = InitialPhase
+ phaseFromActivation (ActiveAfter _ n) = Phase n
+ phaseFromActivation _ = InitialPhase
updModeForRules :: SimplifierMode -> SimplifierMode
-- See Note [Simplifying rules]