From: charlet Date: Wed, 20 Apr 2016 10:31:59 +0000 (+0000) Subject: 2016-04-20 Arnaud Charlet X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=b95a77cf854c4234d6819a706b28d530b3f77d08;p=thirdparty%2Fgcc.git 2016-04-20 Arnaud Charlet * sem_ch9.adb (Analyze_Task_Type_Declaration): Shut down warning in codepeer mode. 2016-04-20 Vincent Celier * make.adb: Code cleanup. 2016-04-20 Arnaud Charlet * exp_ch4.adb (Expand_Allocator_Expression): Help C code generation. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@235257 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ada/ChangeLog b/gcc/ada/ChangeLog index 98c7d3f9b6ca..b516cbc642db 100644 --- a/gcc/ada/ChangeLog +++ b/gcc/ada/ChangeLog @@ -1,3 +1,17 @@ +2016-04-20 Arnaud Charlet + + * sem_ch9.adb (Analyze_Task_Type_Declaration): Shut down warning + in codepeer mode. + +2016-04-20 Vincent Celier + + * make.adb: Code cleanup. + +2016-04-20 Arnaud Charlet + + * exp_ch4.adb (Expand_Allocator_Expression): Help C code + generation. + 2016-04-20 Hristian Kirtchev * sem_ch12.adb (Copy_Generic_Node): Handle the special diff --git a/gcc/ada/exp_ch4.adb b/gcc/ada/exp_ch4.adb index 3a323b3840be..190664071a35 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 308d4e6cced2..a072513a2886 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 bbb801824b17..03c584bba716 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);