gfortran "partial" recursive I/O support

Jerry DeLisle jvdelisle@verizon.net
Thu Apr 17 04:28:00 GMT 2008


FX Coudert wrote:
> Looking at the table of F2003 advancement in compilers at 
> http://portalparts.acm.org/1280000/1279941/fm/frontmatter.pdf, I see a 
> "partial" for gfortran in the category "Recursive input/output" (same 
> thing here: http://gcc.gnu.org/wiki/Fortran2003Status). However, I don't 
> know what is missing, and can't find an open PR either. Does someone 
> know what this "partial" means exactly?
> 

IIRC, (and I will have to try this to confirm it) gfortran can have an I/O 
statement with an I/O list item that is a function that returns a value that 
will be transferred and at the same time, that function can itself contain an 
I/O statement that will be performed and completed before the function returns.

I don't recall whether the constraint that the child I/O can only identify an 
external unit that is identical to the parent is enforced.

Also, A large part of recursive I/O involves derived type I/O where the sub 
objects within a derived type perform their portion of the I/O.  I have not 
studied this much yet, but it is similar I think to class objects containing 
methods for performing their own I/O so that a higher level class will 
effectively inherit all the lower level user defined I/O.

So, until we have implemented derived type I/O we can only claim partial 
recursive I/O.

Hope I got that straight.

Jerry



More information about the Fortran mailing list