aboutsummaryrefslogtreecommitdiff
path: root/gcc/ada/sinfo.adb
diff options
context:
space:
mode:
authorArnaud Charlet <charlet@gcc.gnu.org>2017-01-13 11:33:37 +0100
committerArnaud Charlet <charlet@gcc.gnu.org>2017-01-13 11:33:37 +0100
commitef74daead6d1668980566524b3a49dcc8f51295c (patch)
tree16e64aeaef0f64c0a97694cfa8298fdfe76681cd /gcc/ada/sinfo.adb
parentda9683f4dbc85066c290798a14d1158f804f92a2 (diff)
downloadgcc-ef74daead6d1668980566524b3a49dcc8f51295c.zip
gcc-ef74daead6d1668980566524b3a49dcc8f51295c.tar.gz
gcc-ef74daead6d1668980566524b3a49dcc8f51295c.tar.bz2
[multiple changes]
2017-01-13 Gary Dismukes <dismukes@adacore.com> * sem_ch13.adb: Minor reformatting and typo fix. 2017-01-13 Ed Schonberg <schonberg@adacore.com> * par-ch4.adb (P_Aggregate_Or_Parent_Expr): An Iterated_Component_Association is a named association in an array aggregate. * sem_aggr.adb (Resolve_Iterated_Component_Association): New procedure, subsidiary of Resolve_Array_Aggregate, to analyze and resolve the discrete choices and the expression of the new construct. * sinfo.adb, sinfo.ads: In analogy with N_Component_Association, Loop_Actions and Box_Present are attributes of N_Iterated_Component_Association nodes. Box_Present is always False in this case. * sprint.adb (Sprint_Node): An Iterated_Component_Association has a Discrete_Choices list, as specified in the RM. A Component_Association for aggregate uses instead a Choices list. We have to live with this small inconsistency because the new construct also has a defining identifier, and there is no way to merge the two node structures. From-SVN: r244410
Diffstat (limited to 'gcc/ada/sinfo.adb')
-rw-r--r--gcc/ada/sinfo.adb12
1 files changed, 8 insertions, 4 deletions
diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb
index dbe51ec..a99790b 100644
--- a/gcc/ada/sinfo.adb
+++ b/gcc/ada/sinfo.adb
@@ -366,7 +366,8 @@ package body Sinfo is
or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
or else NT (N).Nkind = N_Formal_Package_Declaration
- or else NT (N).Nkind = N_Generic_Association);
+ or else NT (N).Nkind = N_Generic_Association
+ or else NT (N).Nkind = N_Iterated_Component_Association);
return Flag15 (N);
end Box_Present;
@@ -2201,7 +2202,8 @@ package body Sinfo is
(N : Node_Id) return List_Id is
begin
pragma Assert (False
- or else NT (N).Nkind = N_Component_Association);
+ or else NT (N).Nkind = N_Component_Association
+ or else NT (N).Nkind = N_Iterated_Component_Association);
return List2 (N);
end Loop_Actions;
@@ -3665,7 +3667,8 @@ package body Sinfo is
or else NT (N).Nkind = N_Formal_Abstract_Subprogram_Declaration
or else NT (N).Nkind = N_Formal_Concrete_Subprogram_Declaration
or else NT (N).Nkind = N_Formal_Package_Declaration
- or else NT (N).Nkind = N_Generic_Association);
+ or else NT (N).Nkind = N_Generic_Association
+ or else NT (N).Nkind = N_Iterated_Component_Association);
Set_Flag15 (N, Val);
end Set_Box_Present;
@@ -5491,7 +5494,8 @@ package body Sinfo is
(N : Node_Id; Val : List_Id) is
begin
pragma Assert (False
- or else NT (N).Nkind = N_Component_Association);
+ or else NT (N).Nkind = N_Component_Association
+ or else NT (N).Nkind = N_Iterated_Component_Association);
Set_List2 (N, Val); -- semantic field, no parent set
end Set_Loop_Actions;