[Bug fortran/78661] [OOP] Namelist output missing object designator under DTIO
janus at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Sat Dec 17 14:23:00 GMT 2016
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78661
--- Comment #6 from janus at gcc dot gnu.org ---
(In reply to janus from comment #5)
> Btw, this variant is wrongly rejected:
>
> [..]
>
> NAMELIST /nml/ x
> 1
> Error: NAMELIST object ‘x’ in namelist ‘nml’ at (1) is polymorphic and
> requires a defined input/output procedure
Sorry, false alarm. In principle the error message is correct, although the
wording is maybe a bit off: Both an input *and* output procedure is required!
I'd suggest this change:
Index: gcc/fortran/resolve.c
===================================================================
--- gcc/fortran/resolve.c (revision 243773)
+++ gcc/fortran/resolve.c (working copy)
@@ -13871,8 +13871,8 @@ resolve_fl_namelist (gfc_symbol *sym)
if (nl->sym->ts.type == BT_CLASS && !dtio)
{
gfc_error ("NAMELIST object %qs in namelist %qs at %L is "
- "polymorphic and requires a defined input/output "
- "procedure", nl->sym->name, sym->name, &sym->declared_at);
+ "polymorphic and requires defined input and output "
+ "procedures", nl->sym->name, sym->name,
&sym->declared_at);
return false;
}
More information about the Gcc-bugs
mailing list