aboutsummaryrefslogtreecommitdiff
path: root/libgfortran/intrinsics/system.c
diff options
context:
space:
mode:
Diffstat (limited to 'libgfortran/intrinsics/system.c')
-rw-r--r--libgfortran/intrinsics/system.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libgfortran/intrinsics/system.c b/libgfortran/intrinsics/system.c
index 73f937142f6..49a5ba2a6d5 100644
--- a/libgfortran/intrinsics/system.c
+++ b/libgfortran/intrinsics/system.c
@@ -49,6 +49,9 @@ system_sub (const char *fcmd, GFC_INTEGER_4 *status, gfc_charlen_type cmd_len)
char cmd[cmd_len + 1];
int stat;
+ /* Flush all I/O units before executing the command. */
+ flush_all_units();
+
memcpy (cmd, fcmd, cmd_len);
cmd[cmd_len] = '\0';