diff options
author | jvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-14 18:59:18 +0000 |
---|---|---|
committer | jvdelisle <jvdelisle@138bc75d-0d04-0410-961f-82ee72b054a4> | 2010-08-14 18:59:18 +0000 |
commit | 72d2506ee901f2106f7badfe1ed8005e218c320a (patch) | |
tree | 15b9b4aa7c9cabda8ad1628f6f1c95a9b5ea767f /libgfortran/io/inquire.c | |
parent | 8697e7b1e7ce458812a690c0c16c6b69fc71c85e (diff) | |
download | gcc-72d2506ee901f2106f7badfe1ed8005e218c320a.tar.gz |
2010-08-14 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/44931
* io/inquire.c (inquire_via_unit): Add special case for __MINGW32__ to
return special file names CONIN$, CONOUT$, and CONERR$.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163245 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/io/inquire.c')
-rw-r--r-- | libgfortran/io/inquire.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/libgfortran/io/inquire.c b/libgfortran/io/inquire.c index 540fecb2c5b..c4994ed179a 100644 --- a/libgfortran/io/inquire.c +++ b/libgfortran/io/inquire.c @@ -83,8 +83,19 @@ inquire_via_unit (st_parameter_inquire *iqp, gfc_unit * u) fstrcpy (iqp->name, iqp->name_len, u->file, u->file_len); } else -#endif fstrcpy (iqp->name, iqp->name_len, u->file, u->file_len); +#elif defined __MINGW32__ + if (u->unit_number == options.stdin_unit) + fstrcpy (iqp->name, iqp->name_len, "CONIN$", sizeof("CONIN$")); + else if (u->unit_number == options.stdout_unit) + fstrcpy (iqp->name, iqp->name_len, "CONOUT$", sizeof("CONOUT$")); + else if (u->unit_number == options.stderr_unit) + fstrcpy (iqp->name, iqp->name_len, "CONERR$", sizeof("CONERR$")); + else + fstrcpy (iqp->name, iqp->name_len, u->file, u->file_len); +#else + fstrcpy (iqp->name, iqp->name_len, u->file, u->file_len); +#endif } if ((cf & IOPARM_INQUIRE_HAS_ACCESS) != 0) |