diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2017-01-23 13:07:34 +0100 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2017-01-23 13:07:34 +0100 |
commit | 9eb8d5b4e9cfb5771f333abe0bfdd9667e56537b (patch) | |
tree | 690646e0d60ca67a7d2f7ac6694350a82e4ae18a /gcc/ada/sinfo.ads | |
parent | f6b9f2ffc190054ca8f4dad110d85613964d2006 (diff) | |
download | gcc-9eb8d5b4e9cfb5771f333abe0bfdd9667e56537b.zip gcc-9eb8d5b4e9cfb5771f333abe0bfdd9667e56537b.tar.gz gcc-9eb8d5b4e9cfb5771f333abe0bfdd9667e56537b.tar.bz2 |
[multiple changes]
2017-01-23 Ed Schonberg <schonberg@adacore.com>
* par-ch4.adb (P_Aggregate_Or_Parent_Expr): Recognize delta
aggregate construct.
(P_Record_Or_Array_Component_Association): An array aggregate
can start with an Iterated_Component_Association.
* scng.adb: Modify error message on improper use of @ in earlier
versions of the language.
* sinfo.ads: New node kind N_Delta_Aggregate.
* sinfo.adb: An N_Delta_Aggregate has component associations and
an expression.
* sem_res.adb (Resolve): Call Resolve_Delta_Aggregate.
* sem_aggr.ads, sem_aggr.adb (Resolve_Iterated_Component_Association):
Create a new index for each one of the choices in the association,
to prevent spurious homonyms in the scope.
(Resolve_Delta_Aggregate): New.
* sem.adb: An N_Delta_Aggregate is analyzed like an aggregate.
* exp_util.adb (Insert_Actions): Take into account
N_Delta_Aggregate.
* exp_aggr.ads: New procedure Expand_N_Delta_Aggregate.
* exp_aggr.adb: New procedure Expand_N_Delta_Aggregate,
and local procedures Expand_Delta_Array_Aggregate and
expand_Delta_Record_Aggregate.
* sprint.adb: Handle N_Delta_Aggregate.
2017-01-23 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch11.adb (Expand_N_Exception_Declaration): Generate an
empty name when the exception declaration is subject to pragma
Discard_Names.
(Null_String): New routine.
2017-01-23 Hristian Kirtchev <kirtchev@adacore.com>
* par-ch9.adb (P_Protected_Definition): Parse
any optional and potentially illegal pragmas which appear in
a protected operation declaration list.
(P_Task_Items): Parse
any optional and potentially illegal pragmas which appear in a
task item list.
From-SVN: r244794
Diffstat (limited to 'gcc/ada/sinfo.ads')
-rw-r--r-- | gcc/ada/sinfo.ads | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ada/sinfo.ads b/gcc/ada/sinfo.ads index 4ff8fb1..69f2837 100644 --- a/gcc/ada/sinfo.ads +++ b/gcc/ada/sinfo.ads @@ -4133,6 +4133,15 @@ package Sinfo is -- Note that Box_Present is always False, but it is intentionally added -- for completeness. + ---------------------------- + -- 4.3.4 Delta Aggregate -- + ---------------------------- + + -- N_Delta_Aggregate + -- Sloc points to left parenthesis + -- Expression (Node3) + -- Component_Associations (List2) + -------------------------------------------------- -- 4.4 Expression/Relation/Term/Factor/Primary -- -------------------------------------------------- @@ -8475,6 +8484,7 @@ package Sinfo is N_Aggregate, N_Allocator, N_Case_Expression, + N_Delta_Aggregate, N_Extension_Aggregate, N_Raise_Expression, N_Range, @@ -11524,6 +11534,13 @@ package Sinfo is 4 => True, -- Discrete_Choices (List4) 5 => False), -- unused + N_Delta_Aggregate => + (1 => False, -- Expressions (List1) + 2 => True, -- Component_Associations (List2) + 3 => True, -- Expression (Node3) + 4 => False, -- Unused + 5 => False), -- Etype (Node5-Sem) + N_Extension_Aggregate => (1 => True, -- Expressions (List1) 2 => True, -- Component_Associations (List2) |