[Bug libfortran/59419] [4.9 Regression] Failing OPEN with FILE='xxx' and IOSTAT creates the file 'xxx' after revision 196783

burnus at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Sat Dec 7 21:56:00 GMT 2013


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59419

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |wrong-code
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2013-12-07
                 CC|                            |jvdelisle at gcc dot gnu.org
   Target Milestone|---                         |4.9.0
     Ever confirmed|0                           |1

--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> ---
Dominique, probably rightly, suspects r196805.

(In reply to Tobias Burnus from comment #1)
>             generate_error (&opp->common, LIBERROR_BAD_OPTION,
>                             "Bad unit number in OPEN statement");
> without err=/stat= it prints an error and doesn't return. But with, it
> continues after that line. Hence, a "return" is needed.

... but not a simple return but one which ends with a library_end().

Other code in that file uses:
  && (opp->common.flags & IOPARM_LIBRETURN_MASK) == IOPARM_LIBRETURN_OK)
as condition. Hence, that would be another possibility.



More information about the Gcc-bugs mailing list