2009-04-20 Bob Duff <duff@adacore.com>
authorcharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Apr 2009 12:29:12 +0000 (12:29 +0000)
committercharlet <charlet@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 20 Apr 2009 12:29:12 +0000 (12:29 +0000)
* output.adb (Flush_Buffer): Do not indent blank lines.
(Ignore_Output): New procedure for output suppression.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@146402 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ada/output.adb
gcc/ada/output.ads

index 745d47f..141c12f 100644 (file)
@@ -112,14 +112,17 @@ package body Output is
 
       Len : constant Natural := Next_Col - 1;
 
+   --  Start of processing for Flush_Buffer
+
    begin
       if Len /= 0 then
          begin
             --  If there's no indentation, or if the line is too long with
-            --  indentation, just write the buffer.
+            --  indentation, or if it's a blank line, just write the buffer.
 
             if Cur_Indentation = 0
               or else Cur_Indentation + Len > Buffer_Max
+              or else Buffer (1 .. Len) = (1 => ASCII.LF)
             then
                Write_Buffer (Buffer (1 .. Len));
 
@@ -156,6 +159,15 @@ package body Output is
       end if;
    end Flush_Buffer;
 
+   -------------------
+   -- Ignore_Output --
+   -------------------
+
+   procedure Ignore_Output (S : String) is
+   begin
+      null;
+   end Ignore_Output;
+
    ------------
    -- Indent --
    ------------
index 8e8eb6b..6e9176e 100644 (file)
@@ -66,6 +66,10 @@ package Output is
    --  It is never an error to call Cancel_Special_Output. It has the same
    --  effect as calling Set_Special_Output (null).
 
+   procedure Ignore_Output (S : String);
+   --  Does nothing. To disable output, pass Ignore_Output'Access to
+   --  Set_Special_Output.
+
    procedure Set_Standard_Error;
    --  Sets subsequent output to appear on the standard error file (whatever
    --  that might mean for the host operating system, if anything) when