]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
[multiple changes]
authorArnaud Charlet <charlet@gcc.gnu.org>
Tue, 22 Jun 2010 12:32:34 +0000 (14:32 +0200)
committerArnaud Charlet <charlet@gcc.gnu.org>
Tue, 22 Jun 2010 12:32:34 +0000 (14:32 +0200)
2010-06-22  Vincent Celier  <celier@adacore.com>

* mlib-prj.adb (Display): In non verbose mode, truncate after fourth
argument.
* mlib-utl.adb (Gcc): In non verbose mode, truncate the display of the
gcc command if it is too long.

2010-06-22  Robert Dewar  <dewar@adacore.com>

* errout.adb (Set_Msg_Node): Fix incorrect reference to node.

2010-06-22  Arnaud Charlet  <charlet@adacore.com>

* exp_ch6.adb (Expand_Actuals): Use Actual as the related node when
calling Make_Temporary.

From-SVN: r161170

gcc/ada/ChangeLog
gcc/ada/errout.adb
gcc/ada/exp_ch6.adb
gcc/ada/mlib-prj.adb
gcc/ada/mlib-utl.adb

index 0dcdf463a7d0893f8099dc5b560ccf066b81bec2..91d571e3f2116885278c2fd29c22050cb761e5e5 100644 (file)
@@ -1,3 +1,19 @@
+2010-06-22  Vincent Celier  <celier@adacore.com>
+
+       * mlib-prj.adb (Display): In non verbose mode, truncate after fourth
+       argument.
+       * mlib-utl.adb (Gcc): In non verbose mode, truncate the display of the
+       gcc command if it is too long.
+
+2010-06-22  Robert Dewar  <dewar@adacore.com>
+
+       * errout.adb (Set_Msg_Node): Fix incorrect reference to node.
+
+2010-06-22  Arnaud Charlet  <charlet@adacore.com>
+
+       * exp_ch6.adb (Expand_Actuals): Use Actual as the related node when
+       calling Make_Temporary.
+
 2010-06-22  Robert Dewar  <dewar@adacore.com>
 
        * sem_res.adb, sem_aux.adb, errout.adb: Minor reformatting.
index 20253a5b7df46adf5e4bfef9462103feeb61f19c..ff99f5098a90a7d8308291b78099226cd444e746 100644 (file)
@@ -2499,7 +2499,7 @@ package body Errout is
       --  in case, which is the case when we can copy from the source.
 
       declare
-         Src_Loc : constant Source_Ptr := Sloc (Error_Msg_Node_1);
+         Src_Loc : constant Source_Ptr := Sloc (Node);
          Sbuffer : Source_Buffer_Ptr;
          Ref_Ptr : Integer;
          Src_Ptr : Source_Ptr;
index 9459bc6ec8c9c7ed3592293b5e0a4008de100195..b8659aa07f2df4759b5e6ca9ebf468aa437dfd48 100644 (file)
@@ -964,7 +964,7 @@ package body Exp_Ch6 is
             return;
          end if;
 
-         Temp := Make_Temporary (Loc, 'T');
+         Temp := Make_Temporary (Loc, 'T', Actual);
 
          --  Use formal type for temp, unless formal type is an unconstrained
          --  array, in which case we don't have to worry about bounds checks,
@@ -1216,7 +1216,7 @@ package body Exp_Ch6 is
 
          Reset_Packed_Prefix;
 
-         Temp := Make_Temporary (Loc, 'T');
+         Temp := Make_Temporary (Loc, 'T', Actual);
          Incod  := Relocate_Node (Actual);
          Outcod := New_Copy_Tree (Incod);
 
@@ -1381,7 +1381,7 @@ package body Exp_Ch6 is
             return Entity (Actual);
 
          else
-            Var := Make_Temporary (Loc, 'T');
+            Var := Make_Temporary (Loc, 'T', Actual);
 
             N_Node :=
               Make_Object_Renaming_Declaration (Loc,
index f15b7c06d27c35f0b58e62c8a28004c13e49d72e..97a4c16180fc7a55b578f8975967f1a9e7e62d82 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---                     Copyright (C) 2001-2009, AdaCore                     --
+--                     Copyright (C) 2001-2010, AdaCore                     --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -2285,6 +2285,11 @@ package body MLib.Prj is
          for Index in 1 .. Argument_Number loop
             Write_Char (' ');
             Write_Str (Arguments (Index).all);
+
+            if not Opt.Verbose_Mode and then Index > 4 then
+               Write_Str (" ...");
+               exit;
+            end if;
          end loop;
 
          Write_Eol;
index 78378a673b9fb8e24f4433e6d8a351b12ff272af..67e03097ed62c36aa5a8e75af66874213a8b9c19 100644 (file)
@@ -6,7 +6,7 @@
 --                                                                          --
 --                                 B o d y                                  --
 --                                                                          --
---                     Copyright (C) 2002-2008, AdaCore                     --
+--                     Copyright (C) 2002-2010, AdaCore                     --
 --                                                                          --
 -- GNAT is free software;  you can  redistribute it  and/or modify it under --
 -- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -460,11 +460,25 @@ package body MLib.Utl is
       end loop;
 
       if not Opt.Quiet_Output then
-         Write_Str (Driver.all);
+         if Opt.Verbose_Mode then
+            Write_Str (Driver.all);
+
+         elsif Driver_Name /= No_Name then
+            Write_Str (Get_Name_String (Driver_Name));
+
+         else
+            Write_Str (Gcc_Name.all);
+         end if;
 
          for J in 1 .. A loop
-            Write_Char (' ');
-            Write_Str  (Arguments (J).all);
+            if Opt.Verbose_Mode or else J < 4 then
+               Write_Char (' ');
+               Write_Str  (Arguments (J).all);
+
+            else
+               Write_Str (" ...");
+               exit;
+            end if;
          end loop;
 
          --  Do not display all the object files if not in verbose mode, only
@@ -480,10 +494,19 @@ package body MLib.Utl is
             elsif Position = Second then
                Write_Str (" ...");
                Position := Last;
+               exit;
             end if;
          end loop;
 
          for J in Options_2'Range loop
+            if not Opt.Verbose_Mode then
+               if Position = Second then
+                  Write_Str (" ...");
+               end if;
+
+               exit;
+            end if;
+
             Write_Char (' ');
             Write_Str (Options_2 (J).all);
          end loop;