On Sat, Dec 30, 2017 at 7:16 PM, Thomas Koenig <tkoe...@netcologne.de> wrote:
> Hi Janne,
>
>> To be honest, I haven't really done much testing with big strings, so
>> far my focus has been on getting the existing testsuite to pass and
>> getting the ABI right.
>
>
> I agree that some of the test cases can be fixed later. However, I
> would really prefer if the I/O worked, because that is very basic
> functionality, but also because this is (likely to be) an ABI issue.
> If this bug remains unfixed for any reason at all, then we are left with
> no choice but to break the ABI when we fix that bug. I would like to
> avoid that, if possible.

Fair enough. I took a look at the I/O example you provided, and at
least that particular case is not due to an ABI issue, but rather that
the formatted I/O stuff inside libgfortran extensively uses int for
lengths. I managed to hack around it quickly to make your testcase
work, but a proper fix, while straightforward, implies fixing up the
types a bit more. But still only in the internals, the external ABI
visible interface is ok.

I can provide that stuff as a separate patch, or merge it into the
original megapatch and resubmit that, whichever way you prefer.

FWIW, by changing your example to use unformatted I/O, it works
correctly. And as unformatted uses the same library entry points for
transferring the data, this is thus further evidence that the problem
is in the internals of the formatted I/O rather than in the ABI.



-- 
Janne Blomqvist

Reply via email to