diff options
author | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-01-13 10:11:17 +0000 |
---|---|---|
committer | charlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4> | 2017-01-13 10:11:17 +0000 |
commit | e213974d17eaaf2f905d43ecee70dbb7d37e28fd (patch) | |
tree | 0e1601684725cc6bbea28850d03387ce6dcc00bb /gcc/ada/sinfo.ads | |
parent | 76af476d6c61ce656fc9fb9009a9be2ef9a20fcd (diff) | |
download | gcc-e213974d17eaaf2f905d43ecee70dbb7d37e28fd.tar.gz |
2017-01-13 Ed Schonberg <schonberg@adacore.com>
* exp_util.adb (Insert_Actions): Handle Iterated_Component_Association.
* par-ch3.adb (P_Discrete_Choice_List): An
Iterated_Component_Association is an array aggregate component.
* par-ch4.adb (P_Iterated_Component_Association): New procedure.
(Is_Quantified_Expression): New function that performs a lookahead
to distinguish quantified expressions from iterated component
associations.
(P_Aggregate_Or_Paren_Expr): Recognize iterated component
associations.
(P_Unparen_Cond_Case_Quant_Expression, P_Primary): Ditto.
* sem.adb (Analyze): Handle Iterated_Component_Association.
* sem_aggr.adb (Resolve_Array_Aggregate): Dummy handling of iterated
component associations.
* sinfo.ads, sinfo.adb: Entries for for
N_Iterated_Component_Association and its fields.
* sprint.adb (Sprint_Node_Actual): Handle
N_Iterated_Component_Association.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@244403 138bc75d-0d04-0410-961f-82ee72b054a4
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 dd1aec58036..588d02e3d16 100644 --- a/gcc/ada/sinfo.ads +++ b/gcc/ada/sinfo.ads @@ -4098,8 +4098,24 @@ package Sinfo is -- ARRAY_COMPONENT_ASSOCIATION ::= -- DISCRETE_CHOICE_LIST => EXPRESSION + -- | ITERATED_COMPONENT_ASSOCIATION -- See Record_Component_Association (4.3.1) for node structure + -- The iterated_component_association is introduced into the + -- Corrigendum of Ada_2012 by AI12-061. + + ------------------------------------------ + -- 4.3.3 Iterated component Association -- + ------------------------------------------ + + -- ITERATED_COMPONENT_ASSOCIATION ::= + -- for DEFINING_IDENTIFIER in DISCRETE_CHOICE_LIST => EXPRESSION + + -- N_Iterated_Component_Association + -- Sloc points to FOR + -- Defining_Identifier (Node1) + -- Expression (Node3) + -- Discrete_Choices (List4) -------------------------------------------------- -- 4.4 Expression/Relation/Term/Factor/Primary -- @@ -8645,6 +8661,7 @@ package Sinfo is N_Generic_Association, N_Handled_Sequence_Of_Statements, N_Index_Or_Discriminant_Constraint, + N_Iterated_Component_Association, N_Itype_Reference, N_Label, N_Modular_Type_Definition, @@ -11463,6 +11480,13 @@ package Sinfo is 4 => False, -- unused 5 => False), -- unused + N_Iterated_Component_Association => + (1 => True, -- Defining_Identifier (Node1) + 2 => False, -- unused + 3 => True, -- Expression (Node3) + 4 => True, -- Discrete_Choices (List4) + 5 => False), -- unused + N_Extension_Aggregate => (1 => True, -- Expressions (List1) 2 => True, -- Component_Associations (List2) |