diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-10-19 14:29:25 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2010-10-19 14:29:25 +0200 |
commit | a961aa79587ca417a9920cd2ba4df4d3144fd26d (patch) | |
tree | fbc3350cd46472344fa50199f9069aaab0f8bfc6 /gcc/ada/sinfo.ads | |
parent | 11c260d7cd8c3aaee5502f8d5ff192327b2a904d (diff) | |
download | gcc-a961aa79587ca417a9920cd2ba4df4d3144fd26d.zip gcc-a961aa79587ca417a9920cd2ba4df4d3144fd26d.tar.gz gcc-a961aa79587ca417a9920cd2ba4df4d3144fd26d.tar.bz2 |
[multiple changes]
2010-10-19 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb, exp_ch4.ads (Expand_Quantified_Expression): New procedure
* exp_util.adb (Insert_Actions): Include Quantified_Expression.
* expander.adb: Call Expand_Qualified_Expression.
* par.adb: New procedure P_Quantified_Expression. Make
P_Loop_Parameter_Specification global for use in quantified expressions.
* par-ch3.adb (P_Subtype_Mark_Resync): Allow "some" as an identifier if
version < Ada2012.
* par-ch4.adb: New procedure P_Quantified_Expression.
* par-ch5.adb: P_Loop_Parameter_Specification is now global.
* scans.adb, scans.ads: Introduce token Some. For now leave as
unreserved.
* scn.adb (Scan_Reserved_Identifier): For earlier versions of Ada,
treat Some as a regular identifier.
* sem.adb: Call Analyze_Quantified_Expression.
* sem_ch4.adb, sem_ch4.ads: New procedure Analyze_Quantified_Expression.
* sem_ch5.adb, sem_ch5.ads: Analyze_Iteration_Scheme is public, for use
in quantified expressions.
* sem_res.adb: New procedure Resolve_Qualified_Expression.
* sinfo.adb, sinfo.ads: New node N_Quantified_Expression
* snames.ads-tmpl: New name Some.
* sprint.adb: Output quantified_expression.
2010-10-19 Robert Dewar <dewar@adacore.com>
* a-exexda.adb: Minor reformatting
Minor code reorganization.
From-SVN: r165698
Diffstat (limited to 'gcc/ada/sinfo.ads')
-rw-r--r-- | gcc/ada/sinfo.ads | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/gcc/ada/sinfo.ads b/gcc/ada/sinfo.ads index fa1d6dd..556bffa 100644 --- a/gcc/ada/sinfo.ads +++ b/gcc/ada/sinfo.ads @@ -3817,6 +3817,22 @@ package Sinfo is -- point operands if the Treat_Fixed_As_Integer flag is set and will -- thus treat these nodes in identical manner, ignoring small values. + --------------------------------- + -- 4.5.9 Quantified Expression -- + --------------------------------- + + -- QUANTIFIED_EXPRESSION ::= + -- for QUANTIFIER LOOP_PARAMETER_SPECIFICATION => PREDICATE | + -- for QUANTIFIER ITERATOR_SPECIFICATION => PREDICATE + -- + -- QUANTIFIER ::= all | some + + -- N_Quantified_Expression + -- Sloc points to token for + -- Loop_Parameter_Specification (Node4) + -- Condition (Node1) + -- All_Present (Flag15) + -------------------------- -- 4.6 Type Conversion -- -------------------------- @@ -7447,6 +7463,7 @@ package Sinfo is N_Null, N_Procedure_Call_Statement, N_Qualified_Expression, + N_Quantified_Expression, -- N_Raise_xxx_Error, N_Subexpr, N_Has_Etype @@ -10473,6 +10490,13 @@ package Sinfo is 4 => True, -- Subtype_Mark (Node4) 5 => False), -- Etype (Node5-Sem) + N_Quantified_Expression => + (1 => True, -- Condition (Node1) + 2 => False, -- unused + 3 => False, -- unused + 4 => True, -- Loop_Parameter_Specification (Node4) + 5 => False), -- Etype (Node5-Sem) + N_Allocator => (1 => False, -- Storage_Pool (Node1-Sem) 2 => False, -- Procedure_To_Call (Node2-Sem) |