[patch, libgfortran] PR24224 Generalized internal array IO not implemented.

Jerry DeLisle jvdelisle@verizon.net
Sat Oct 15 23:36:00 GMT 2005


The attached patch fixes this PR.  One new test case provided, revised test case 
  arrayio_4.f90 to reflect the new behavior.

regtested on i686.

RFC I have a common block of code in next_record_r and next_record_w that could 
be placed in its own function and called.  It traverses the elements in the 
array based on the array descriptor, taking into account for strides.

I will prepare a gomp version of this after commit to mainline.

OK for mainline?

We never committed the original patch to 4.0 is this OK for 4.0.3 also?
If so, I will have to back port at least one other previous patch to 4.0 for 
this to work.

Comments much appreciated.

2005-10-15  Jerry DeLisle  <jvdelisle@verizon.net>

         PR libgfortran/24224
         * libgfortran.h: Remove array stride error code.
         * runtime/error.c: Remove array stride error.
         * io/io.h: Change name of 'nml_loop_spec' to 'array_loop_spec' to be
           generic.  Add pointer to array_loop_spec to gfc_unit structure.
         * io/list_read.c: Revise nml_loop_spec references to array_loop_spec.
         * io/transfer.c (next_record_r): Add array looping code.
           (next_record_w): Add array looping code.
           (finalize_transfer): Free memory allocated for array_loop_spec.
         * io/unit.c (get_array_unit_len) Add initialization of array_loop_spec.

Regards,

Jerry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr24224.diff
Type: text/x-patch
Size: 13720 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20051015/6eaa45a9/attachment.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: arrayio_4.f90
Type: application/x-extension-f90
Size: 604 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20051015/6eaa45a9/attachment-0001.bin>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: arrayio_6.f90
Type: application/x-extension-f90
Size: 1063 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/fortran/attachments/20051015/6eaa45a9/attachment-0002.bin>


More information about the Fortran mailing list