https://gcc.gnu.org/g:46e41cf94fdf9ac22133da1fcd8e42ff3c3fb24c
commit r15-9988-g46e41cf94fdf9ac22133da1fcd8e42ff3c3fb24c Author: Gaius Mulley <gaiusm...@gmail.com> Date: Thu Jul 17 10:17:34 2025 +0100 [PATCH] 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. (cherry picked from commit 13498bf4fcff4c0633678c53a46b6be425d2904c) 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 ;