https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78661

--- Comment #23 from Jerry DeLisle <jvdelisle at gcc dot gnu.org> ---
(In reply to janus from comment #22)
> (In reply to janus from comment #21)
> > The testcase seems to be working properly by now, but unfortunately the
> > patch breaks dtio_25.f90 (execution test), i.e. the test case from PR 78854.
> 
> What fails there is the execution check in line 36, which expects the buffer
> to be
> 
> &NML x%c="a",x%k=    5  /
> 
> but with my patch the buffer becomes
> 
> &NML  X=x%c="a",x%k=    5  /
> 
> Are we actually supposed to write out the variable name ('X=') for types
> with DTIO procedures or not?

I believe one or the other of us has a misunderstanding of how this is suppose
to work. This is why I did dtio_25.f90 as I did, to catch this.

I dont think the parent is suppose to emit the Object name. What if there are
multiple comments? We do not have an established namelist representation for a
parent and child situation.  If we emit X= as the parent, how do we represent
and parse child components.  If we say "anyway the user wants to" then the test
case with mixed DTIO write followed by default namelist read is bogus and
should fail. If emitting X= is correct for the parent without also emitting
child object names, then dtio_25.f90 is bogus. I am happy to change the test
case, just was not sure what is right.

Reply via email to