From: Jerry DeLisle Date: Fri, 14 Aug 2009 21:10:06 +0000 (+0000) Subject: re PR libfortran/32784 ([win32] Using 'CONOUT$', 'CONIN$', or 'CONERR$' as assigned... X-Git-Tag: releases/gcc-4.5.0~4015 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=37d1bbbc62c35efaa1a590e98252ce8190ec5aee;p=thirdparty%2Fgcc.git re PR libfortran/32784 ([win32] Using 'CONOUT$', 'CONIN$', or 'CONERR$' as assigned file generates Fortran runtime error: Bad file descriptor) 2009-08-14 Jerry DeLisle PR libfortran/32784 io/unix.c (regular_file): Add support for CONIO on mingw. From-SVN: r150779 --- diff --git a/libgfortran/io/unix.c b/libgfortran/io/unix.c index 8c7bf86c2bd9..4ecba3a8f69e 100644 --- a/libgfortran/io/unix.c +++ b/libgfortran/io/unix.c @@ -917,6 +917,27 @@ regular_file (st_parameter_open *opp, unit_flags *flags) } #endif + +#ifdef __MINGW32__ + if (opp->file_len == 7) + { + if (strncmp (path, "CONOUT$", 7) == 0 + || strncmp (path, "CONERR$", 7) == 0) + { + fd = open ("CONOUT$", O_WRONLY); + flags->action = ACTION_WRITE; + return fd; + } + } + + if (opp->file_len == 6 && strncmp (path, "CONIN$", 6) == 0) + { + fd = open ("CONIN$", O_RDONLY); + flags->action = ACTION_READ; + return fd; + } +#endif + rwflag = 0; switch (flags->action)