diff options
author | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-04-20 12:31:59 +0200 |
---|---|---|
committer | Arnaud Charlet <charlet@gcc.gnu.org> | 2016-04-20 12:31:59 +0200 |
commit | dfbc6cbe30524f817b427c19756dd13aecf31d09 (patch) | |
tree | 1450459ed241e29280343492df32a4ee34c18ce6 /gcc | |
parent | 06f6c43f5c0d8df09010ec690b237bc62e3b6d02 (diff) | |
download | gcc-dfbc6cbe30524f817b427c19756dd13aecf31d09.zip gcc-dfbc6cbe30524f817b427c19756dd13aecf31d09.tar.gz gcc-dfbc6cbe30524f817b427c19756dd13aecf31d09.tar.bz2 |
[multiple changes]
2016-04-20 Arnaud Charlet <charlet@adacore.com>
* sem_ch9.adb (Analyze_Task_Type_Declaration): Shut down warning
in codepeer mode.
2016-04-20 Vincent Celier <celier@adacore.com>
* make.adb: Code cleanup.
2016-04-20 Arnaud Charlet <charlet@adacore.com>
* exp_ch4.adb (Expand_Allocator_Expression): Help C code
generation.
From-SVN: r235257
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ada/ChangeLog | 14 | ||||
-rw-r--r-- | gcc/ada/exp_ch4.adb | 7 | ||||
-rw-r--r-- | gcc/ada/make.adb | 6 | ||||
-rw-r--r-- | gcc/ada/sem_ch9.adb | 1 |
4 files changed, 21 insertions, 7 deletions
diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 98c7d3f..b516cbc 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,17 @@ +2016-04-20 Arnaud Charlet <charlet@adacore.com> + + * sem_ch9.adb (Analyze_Task_Type_Declaration): Shut down warning + in codepeer mode. + +2016-04-20 Vincent Celier <celier@adacore.com> + + * make.adb: Code cleanup. + +2016-04-20 Arnaud Charlet <charlet@adacore.com> + + * exp_ch4.adb (Expand_Allocator_Expression): Help C code + generation. + 2016-04-20 Hristian Kirtchev <kirtchev@adacore.com> * sem_ch12.adb (Copy_Generic_Node): Handle the special diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb index 3a323b3..1906640 100644 --- a/gcc/ada/exp_ch4.adb +++ b/gcc/ada/exp_ch4.adb @@ -1281,7 +1281,12 @@ package body Exp_Ch4 is Displace_Allocator_Pointer (N); end if; - elsif Aggr_In_Place then + -- Always force the generation of a temporary for aggregates when + -- generating C code, to simplify the work in the code generator. + + elsif Aggr_In_Place + or else (Generate_C_Code and then Nkind (Exp) = N_Aggregate) + then Temp := Make_Temporary (Loc, 'P', N); Temp_Decl := Make_Object_Declaration (Loc, diff --git a/gcc/ada/make.adb b/gcc/ada/make.adb index 308d4e6..a072513 100644 --- a/gcc/ada/make.adb +++ b/gcc/ada/make.adb @@ -6506,12 +6506,6 @@ package body Make is Make_Failed ("-i and -D cannot be used simultaneously"); end if; - -- Warn about 'gnatmake -P' - - if Project_File_Name /= null then - Make_Failed ("project file name missing after -P"); - end if; - -- If --subdirs= is specified, but not -P, this is equivalent to -D, -- except that the directory is created if it does not exist. diff --git a/gcc/ada/sem_ch9.adb b/gcc/ada/sem_ch9.adb index bbb8018..03c584b 100644 --- a/gcc/ada/sem_ch9.adb +++ b/gcc/ada/sem_ch9.adb @@ -3077,6 +3077,7 @@ package body Sem_Ch9 is if Restriction_Check_Required (No_Task_Hierarchy) and then not Is_Library_Level_Entity (T) and then Comes_From_Source (T) + and then not CodePeer_Mode then Error_Msg_Sloc := Restrictions_Loc (No_Task_Hierarchy); |