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 ;