+2006-12-27 Jerry DeLisle <jvdelisle@gcc.gnu.org>
+
+ PR fortran/30014
+ *io.c (resolve_tag): Don't issue error for tag_size type not being
+ default integer size for -std=F2003. Add similar check for
+ tag_iolength.
+ *ioparm.def: Change size and iolength parameters to ioint pointer, which
+ corresponds to GFC_IO_INT on the library side.
+
2006-12-27 Gerald Pfeifer <gerald@pfeifer.com>
* interface.c (compare_actual_formal): Remove unused variable
if (tag == &tag_size && e->ts.kind != gfc_default_integer_kind)
{
- if (gfc_notify_std (GFC_STD_GNU, "Fortran 95 requires default "
+ if (gfc_notify_std (GFC_STD_F2003, "Fortran 95 requires default "
"INTEGER in SIZE tag at %L",
&e->where) == FAILURE)
return FAILURE;
&e->where) == FAILURE)
return FAILURE;
}
+
+ if (tag == &tag_iolength && e->ts.kind != gfc_default_integer_kind)
+ {
+ if (gfc_notify_std (GFC_STD_F2003, "Fortran 95 requires default "
+ "INTEGER in IOLENGTH tag at %L",
+ &e->where) == FAILURE)
+ return FAILURE;
+ }
}
return SUCCESS;
#endif
IOPARM (dt, common, 0, common)
IOPARM (dt, rec, 1 << 9, intio)
-IOPARM (dt, size, 1 << 10, pint4)
-IOPARM (dt, iolength, 1 << 11, pint4)
+IOPARM (dt, size, 1 << 10, pintio)
+IOPARM (dt, iolength, 1 << 11, pintio)
IOPARM (dt, internal_unit_desc, 0, parray)
IOPARM (dt, format, 1 << 12, char1)
IOPARM (dt, advance, 1 << 13, char2)