https://gcc.gnu.org/g:13498bf4fcff4c0633678c53a46b6be425d2904c

commit r16-1037-g13498bf4fcff4c0633678c53a46b6be425d2904c
Author: Gaius Mulley <gaiusm...@gmail.com>
Date:   Sun Jun 1 11:25:25 2025 +0100

    PR modula2/120474: InOut buffering should flush the WriteLn before the Read
    
    This patch adds a BufferFlush to InOut.mod:LocalWrite.
    
    gcc/m2/ChangeLog:
    
            PR modula2/120474
            * gm2-libs-log/InOut.mod (LocalWrite): Call FIO.FlushBuffer.
    
    Signed-off-by: Gaius Mulley <gaiusm...@gmail.com>

Diff:
---
 gcc/m2/gm2-libs-log/InOut.mod | 12 ++----------
 1 file changed, 2 insertions(+), 10 deletions(-)

diff --git a/gcc/m2/gm2-libs-log/InOut.mod b/gcc/m2/gm2-libs-log/InOut.mod
index 79c706aa8d8b..6b03034cde4a 100644
--- a/gcc/m2/gm2-libs-log/InOut.mod
+++ b/gcc/m2/gm2-libs-log/InOut.mod
@@ -257,16 +257,8 @@ END WriteString ;
 PROCEDURE LocalWrite (ch: CHAR) ;
 BEGIN
    FIO.WriteChar(outFile, ch) ;
-   Done := FIO.IsNoError(outFile)
-(*
-   IF outUsed
-   THEN
-      FIO.WriteChar(outFile, ch) ;
-      Done := FIO.IsNoError(outFile)
-   ELSE
-      Done := (write(stdout, ADR(ch), 1) = 1)
-   END
-*)
+   Done := FIO.IsNoError(outFile) ;
+   FIO.FlushBuffer (outFile)
 END LocalWrite ;

Reply via email to