diff options
author | Ed Schonberg <schonberg@adacore.com> | 2017-01-13 10:11:17 +0000 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2017-01-13 11:11:17 +0100 |
commit | a702c9b9eec3cf67dc205462c9d7ba5b6d62cdc8 (patch) | |
tree | 0e1601684725cc6bbea28850d03387ce6dcc00bb /gcc/ada/sinfo.adb | |
parent | 0acd830b7e91e5b2d0e20fd0f5770544fd5f16ab (diff) | |
download | gcc-a702c9b9eec3cf67dc205462c9d7ba5b6d62cdc8.zip gcc-a702c9b9eec3cf67dc205462c9d7ba5b6d62cdc8.tar.gz gcc-a702c9b9eec3cf67dc205462c9d7ba5b6d62cdc8.tar.bz2 |
exp_util.adb (Insert_Actions): Handle Iterated_Component_Association.
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.
From-SVN: r244403
Diffstat (limited to 'gcc/ada/sinfo.adb')
-rw-r--r-- | gcc/ada/sinfo.adb | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb index 2ded5b8..dbe51ec 100644 --- a/gcc/ada/sinfo.adb +++ b/gcc/ada/sinfo.adb @@ -790,6 +790,7 @@ package body Sinfo is or else NT (N).Nkind = N_Full_Type_Declaration or else NT (N).Nkind = N_Implicit_Label_Declaration or else NT (N).Nkind = N_Incomplete_Type_Declaration + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Iterator_Specification or else NT (N).Nkind = N_Loop_Parameter_Specification or else NT (N).Nkind = N_Number_Declaration @@ -879,6 +880,7 @@ package body Sinfo is pragma Assert (False or else NT (N).Nkind = N_Case_Expression_Alternative or else NT (N).Nkind = N_Case_Statement_Alternative + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Variant); return List4 (N); end Discrete_Choices; @@ -1268,6 +1270,7 @@ package body Sinfo is or else NT (N).Nkind = N_Expression_Function or else NT (N).Nkind = N_Expression_With_Actions or else NT (N).Nkind = N_Free_Statement + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Mod_Clause or else NT (N).Nkind = N_Modular_Type_Definition or else NT (N).Nkind = N_Number_Declaration @@ -4086,6 +4089,7 @@ package body Sinfo is or else NT (N).Nkind = N_Full_Type_Declaration or else NT (N).Nkind = N_Implicit_Label_Declaration or else NT (N).Nkind = N_Incomplete_Type_Declaration + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Iterator_Specification or else NT (N).Nkind = N_Loop_Parameter_Specification or else NT (N).Nkind = N_Number_Declaration @@ -4175,6 +4179,7 @@ package body Sinfo is pragma Assert (False or else NT (N).Nkind = N_Case_Expression_Alternative or else NT (N).Nkind = N_Case_Statement_Alternative + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Variant); Set_List4_With_Parent (N, Val); end Set_Discrete_Choices; @@ -4555,6 +4560,7 @@ package body Sinfo is or else NT (N).Nkind = N_Expression_Function or else NT (N).Nkind = N_Expression_With_Actions or else NT (N).Nkind = N_Free_Statement + or else NT (N).Nkind = N_Iterated_Component_Association or else NT (N).Nkind = N_Mod_Clause or else NT (N).Nkind = N_Modular_Type_Definition or else NT (N).Nkind = N_Number_Declaration |