re PR fortran/44931 (For INPUT_UNIT, INQUIRE NAME= should not return "stdin")

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$.

From-SVN: r163245
This commit is contained in:
Jerry DeLisle 2010-08-14 18:59:18 +00:00
parent 41f3efb58d
commit c613801e8b
2 changed files with 18 additions and 1 deletions

View File

@ -1,3 +1,9 @@
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$.
2010-08-07 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libfortran/45143

View File

@ -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)