------- Comment #9 from burnus at gcc dot gnu dot org 2010-07-30 15:11 -------
I can also reproduce it with -m32 and x86-64. The dump looks OK; if one uses a
debugger, one sees that in inquire_via_unit:
u->last_record == 0 - instead of the expect "5".
but u->flags.access == ACCESS_DIRECT as expected.
I wonder whether the information somehow gets lost due to the new "fn spec"
settings for trans-io.c (..._with_spec) - though using ".w" looks ok -
additionally, I do not see how the FE could modify the libraries' unit data in
such a way.
Side question: Why is st_inquire actually listed as returning an integer if it
is void?
362 parm_type = build_pointer_type
(st_parameter[IOPARM_ptype_inquire].type);
363 iocall[IOCALL_INQUIRE] = gfc_build_library_function_decl_with_spec (
364 get_identifier (PREFIX("st_inquire")), ".w",
365 gfc_int4_type_node, 1, parm_type);
Ditto for st_iolength_done, st_flush, st_endfile, st_backspace, st_rewind, and
st_wait
--
burnus at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |burnus at gcc dot gnu dot
| |org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45131