[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Wed, 20 Apr 2016 10:31:59 +0000 (12:31 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Wed, 20 Apr 2016 10:31:59 +0000 (12:31 +0200)
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

gcc/ada/ChangeLog
gcc/ada/exp_ch4.adb
gcc/ada/make.adb
gcc/ada/sem_ch9.adb

index 98c7d3f9b6ca653a7f0ede38ad6bc36f17c5ad3d..b516cbc642db06d6122a6bd8a755d36eaf72bd5b 100644 (file)
@@ -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
index 3a323b3840bea2ce58c57f3b95ded688d3ddf09b..190664071a35d9160d21f493a0064a4632e3bb58 100644 (file)
@@ -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,
index 308d4e6cced21c165a7760571f1d1e40a5a9b8a0..a072513a28869002d62126bab4b62fa933ad0b05 100644 (file)
@@ -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.
 
index bbb801824b17b193f0cc54783480c452d9c8a241..03c584bba716208d96672000cec5acc8813ee0e0 100644 (file)
@@ -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);