This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [patch, gfortran] PR48298 DTIO, implement size=
- From: Christophe Lyon <christophe dot lyon at linaro dot org>
- To: Jerry DeLisle <jvdelisle at charter dot net>
- Cc: "fortran at gcc dot gnu dot org" <fortran at gcc dot gnu dot org>, GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Wed, 19 Oct 2016 10:59:33 +0200
- Subject: Re: [patch, gfortran] PR48298 DTIO, implement size=
- Authentication-results: sourceware.org; auth=none
- References: <32d1a016-d097-9eb2-b5ea-95433f6f50ec@charter.net> <20161018024513.GA81197@troutmask.apl.washington.edu>
Hi,
On 18 October 2016 at 04:45, Steve Kargl
<sgk@troutmask.apl.washington.edu> wrote:
> On Mon, Oct 17, 2016 at 06:02:52PM -0700, Jerry DeLisle wrote:
>> Hi all,
>>
>> The attached patch enables the size= specifier in a READ statement to work with
>> child DTIO procedures. This is accomplished by moving the size_used variable
>> from the dtp structure to the gfc_unit structure so that the accumulation of
>> bytes during READ is carried across the procedures via the UNIT.
>>
>> As far as I know, this is the last DTIO patch needed for full implementation and
>> will close the PR.
>>
>> After this patch is committed I plan to prepare a clean up patch to reorganize
>> the dtp structure and clear at least one TODO related to stream IO. The
>> follow-on patch will bump the major version number of libgfortran to 4.
>>
>> Regression tested on x86-64-linux. New test case attached.
>>
>> OK for trunk?
>
> Lookd good to me.
>
>> * transfer.c (read_sf_internal): Likewise. (read_sf): Likewise.
>> (read_block_form): Likewise. (read_block_form4): Likewise.
>
>
Since this was committed (r241294), I'm seeing regressions on
arm and aarch64 targets.
The list is a bit long, so it's probably simpler you look at:
http://people.linaro.org/~christophe.lyon/cross-validation/gcc/trunk/241306/report-build-info.html
Then click on the red "REGRESSED" in the gfortran column.
Thanks,
Christophe
> You can simplify this by
>
> * transfer.c (read_sf_internal, read_sf, read_block_form,
> read_block_form4): Likewise.
>
> --
> Steve