------- Comment #9 from hjl dot tools at gmail dot com 2009-04-06 22:43 ------- This patch seems to work for the small testcase:
Index: io/unix.c =================================================================== --- io/unix.c (revision 145571) +++ io/unix.c (working copy) @@ -344,7 +344,12 @@ raw_close (unix_stream * s) { int retval; - retval = close (s->fd); + if (s->fd != STDOUT_FILENO + && s->fd != STDERR_FILENO + && s->fd != STDIN_FILENO) + retval = close (s->fd); + else + retval = SUCCESS; free_mem (s); return retval; } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39664