diff options
author | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2017-12-15 13:23:10 +0000 |
---|---|---|
committer | Pierre-Marie de Rodat <pmderodat@gcc.gnu.org> | 2017-12-15 13:23:10 +0000 |
commit | fc47ef60c5d11d0302a4f4831080fde792430781 (patch) | |
tree | 314bd05a71b7dee5b2a1f3437beb78d1bd842c0d /gcc/ada/sinfo.adb | |
parent | 71d6a38638e4188974703d3d4ffeeedb1295a70c (diff) | |
download | gcc-fc47ef60c5d11d0302a4f4831080fde792430781.zip gcc-fc47ef60c5d11d0302a4f4831080fde792430781.tar.gz gcc-fc47ef60c5d11d0302a4f4831080fde792430781.tar.bz2 |
[multiple changes]
2017-12-15 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Analyze_Initialization_Item): Remove the specialized
processing for a null initialization item. Such an item is always
illegal.
2017-12-15 Bob Duff <duff@adacore.com>
* types.ads, types.h, libgnat/a-except.adb, exp_ch11.adb
(PE_Build_In_Place_Mismatch): New reason code for raising when the
BIPalloc formal parameter is incorrect. This can happen if a compiler
bug causes a mismatch of build-in-place between caller and callee.
* exp_ch6.adb (Expand_N_Extended_Return_Statement): Use
PE_Build_In_Place_Mismatch.
2017-12-15 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.ads, exp_ch4.adb (Expand_N_Reduction_Expression): New
procedure.
* exp_util.adb (Insert_Actions): Handle N_Reduction_Expression.
* expander.adb (Expand): Call Expand_N_Reduction_Expression
* par-ch4.adb (P_Reduction_Expression): New procedure.
(P_Iterated_Component_Assoc_Or_Reduction): New precedure, extension of
P_Iterated_Component_Association.
(OK_Reduction_Expression_Parameter): New procedure.
(P_Aggregate_Or_Paren_Expr): Improve error message for malformed delta
aggregate.
* sem.adb (Analyze): Call Analyze_Reduction_Expression and
Analyze_Reduction_Expression_Parameter
* sinfo.ads, sinfo.adb: New node kinds N_Reduction_Expression and
N_Reduction_Expression_Parameter.
* sem_ch4.ads, sem_ch4.adb (Analyze_Reduction_Expression,
Analyze_Reduction_Expression_Parameter): New procedures.
* sem_res.adb (Resolve): Handle Reduction_Expression and
Reduction_Expression_Parameter
* sem_spark.adb: Dummy entries for Reduction_Expression and
Reduction_Expression_Parameter
* sprint.adb (Sprint_Node_Actual): Print Reduction_Expression,
Reduction_Expression_Parameter
From-SVN: r255693
Diffstat (limited to 'gcc/ada/sinfo.adb')
-rw-r--r-- | gcc/ada/sinfo.adb | 16 |
1 files changed, 12 insertions, 4 deletions
diff --git a/gcc/ada/sinfo.adb b/gcc/ada/sinfo.adb index 494b46a..1790b56 100644 --- a/gcc/ada/sinfo.adb +++ b/gcc/ada/sinfo.adb @@ -1279,6 +1279,8 @@ package body Sinfo is or else NT (N).Nkind = N_Qualified_Expression or else NT (N).Nkind = N_Raise_Expression or else NT (N).Nkind = N_Raise_Statement + or else NT (N).Nkind = N_Reduction_Expression + or else NT (N).Nkind = N_Reduction_Expression_Parameter or else NT (N).Nkind = N_Simple_Return_Statement or else NT (N).Nkind = N_Type_Conversion or else NT (N).Nkind = N_Unchecked_Expression @@ -2223,7 +2225,8 @@ package body Sinfo is begin pragma Assert (False or else NT (N).Nkind = N_Iteration_Scheme - or else NT (N).Nkind = N_Quantified_Expression); + or else NT (N).Nkind = N_Quantified_Expression + or else NT (N).Nkind = N_Reduction_Expression); return Node2 (N); end Iterator_Specification; @@ -2353,7 +2356,8 @@ package body Sinfo is begin pragma Assert (False or else NT (N).Nkind = N_Iteration_Scheme - or else NT (N).Nkind = N_Quantified_Expression); + or else NT (N).Nkind = N_Quantified_Expression + or else NT (N).Nkind = N_Reduction_Expression); return Node4 (N); end Loop_Parameter_Specification; @@ -4742,6 +4746,8 @@ package body Sinfo is or else NT (N).Nkind = N_Qualified_Expression or else NT (N).Nkind = N_Raise_Expression or else NT (N).Nkind = N_Raise_Statement + or else NT (N).Nkind = N_Reduction_Expression + or else NT (N).Nkind = N_Reduction_Expression_Parameter or else NT (N).Nkind = N_Simple_Return_Statement or else NT (N).Nkind = N_Type_Conversion or else NT (N).Nkind = N_Unchecked_Expression @@ -5686,7 +5692,8 @@ package body Sinfo is begin pragma Assert (False or else NT (N).Nkind = N_Iteration_Scheme - or else NT (N).Nkind = N_Quantified_Expression); + or else NT (N).Nkind = N_Quantified_Expression + or else NT (N).Nkind = N_Reduction_Expression); Set_Node2_With_Parent (N, Val); end Set_Iterator_Specification; @@ -5816,7 +5823,8 @@ package body Sinfo is begin pragma Assert (False or else NT (N).Nkind = N_Iteration_Scheme - or else NT (N).Nkind = N_Quantified_Expression); + or else NT (N).Nkind = N_Quantified_Expression + or else NT (N).Nkind = N_Reduction_Expression); Set_Node4_With_Parent (N, Val); end Set_Loop_Parameter_Specification; |