http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47583
jpr at csc dot fi changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jpr at csc dot fi --- Comment #5 from jpr at csc dot fi 2011-02-02 07:12:16 UTC --- Possible (untested) fix. The ext.dt field in io/match_inquire()'s code variable is a leftover from previous io matching (set in match_io_element()). This triggers the bug in resolve_transfer(). There is even a comment there, that indicates that this field should be null for INQUIRE (iolength), thus: Index: io.c =================================================================== --- io.c (revision 169506) +++ io.c (working copy) @@ -3933,6 +3933,7 @@ new_st.block = gfc_get_code (); new_st.block->op = EXEC_IOLENGTH; + code->ext.dt = NULL; terminate_io (code); new_st.block->next = code; return MATCH_YES;