diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2014-07-30 12:23:17 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2014-07-30 12:23:17 +0200 |
commit | ac43e11e234201441e84b5bc015587ecfff6c797 (patch) | |
tree | 3c0096f5117603b8ed3b9e8bbc41137367131e1e /gcc/ada/fe.h | |
parent | eb16ddf8ed7f0b7ec30c86895a16f0fa7c7c6e26 (diff) | |
download | gcc-ac43e11e234201441e84b5bc015587ecfff6c797.zip gcc-ac43e11e234201441e84b5bc015587ecfff6c797.tar.gz gcc-ac43e11e234201441e84b5bc015587ecfff6c797.tar.bz2 |
[multiple changes]
2014-07-30 Eric Botcazou <ebotcazou@adacore.com>
* exp_aggr.adb (Aggr_Assignment_OK_For_Backend): New predicate.
(Expand_Array_Aggregate): Also enable in-place expansion for
code generated by the compiler. For an object declaration,
set the kind of the object in addition to its type. If an
in-place assignment is to be generated and it can be directly
done by the back-end, do not expand the aggregate.
* fe.h (Is_Others_Aggregate): Declare.
* gcc-interface/trans.c
(gnat_to_gnu) <N_Assignment_Statement>: Add support for an
aggregate with a single Others choice on the RHS by means of
__builtin_memset. Tidy up.
2014-07-30 Ed Schonberg <schonberg@adacore.com>
* gnat_rm.texi: minor reformatting.
2014-07-30 Yannick Moy <moy@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Helper_Body): Remove body to inline
in SPARK_Mode Off.
From-SVN: r213240
Diffstat (limited to 'gcc/ada/fe.h')
-rw-r--r-- | gcc/ada/fe.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/ada/fe.h b/gcc/ada/fe.h index f5554f8..f930315 100644 --- a/gcc/ada/fe.h +++ b/gcc/ada/fe.h @@ -202,6 +202,11 @@ extern void Check_No_Implicit_Heap_Alloc (Node_Id); extern void Check_Elaboration_Code_Allowed (Node_Id); extern void Check_Implicit_Dynamic_Code_Allowed (Node_Id); +/* sem_aggr: */ +#define Is_Others_Aggregate sem_aggr__is_others_aggregate + +extern Boolean Is_Others_Aggregate (Node_Id); + /* sem_aux: */ #define Ancestor_Subtype sem_aux__ancestor_subtype |