gfortran "partial" recursive I/O support

Jerry DeLisle jvdelisle@verizon.net
Fri Apr 18 15:19:00 GMT 2008


Tobias Burnus wrote:
> FX wrote:
>>>  So, until we have implemented derived type I/O we can only claim 
>>> partial
>>> recursive I/O.
>>>     
>> I don't think that's it: Cray, g95 and Intel all have no support for
>> derived-types I/O and yet have a "yes" for recursive I/O.
>>   
> 
> The table follows ftp://ftp.nag.co.uk/sc22wg5/N1601-N1650/N1648.pdf, 
> which has:
> 
> "4.10 Recursive input/output -- A recursive input/output statement is 
> one that is executed while another input/output statement is in 
> execution. We met this in connection with derived-type input/output 
> (Section 4.1). The only other situation in which it is allowed, and this 
> is an extension from Fortran 95, is for input/output to/from an internal 
> file where the statement does not modify any internal file other than 
> its own."
> 
> Our conclusion was: "Yes, but" and playing cautious we put a "partially" 
> there. Maybe we can come to a new conclusion.  See for the initial 
> discussion:
> 

I have spent some time searching the internet.  I conclude that gfortran fully 
supports recursive I/O to/from internal units and contrary to the standard, also 
allows this to/from external files.

I also have to say, so far, I have not found one shred of code that uses this 
feature.  I am not saying there is not someone somewhere doing so.  I think a 
diagnostic for the external case is way down on the list of priorities.

Jerry



More information about the Fortran mailing list