On Thu, Nov 23, 2017 at 3:58 PM, Ramana Radhakrishnan
<ramana....@googlemail.com> wrote:
> On Thu, Nov 23, 2017 at 1:53 PM, Janne Blomqvist
> <blomqvist.ja...@gmail.com> wrote:
>> On Thu, Nov 23, 2017 at 2:56 PM, Janne Blomqvist
>> <blomqvist.ja...@gmail.com> wrote:
>>> On Wed, Nov 22, 2017 at 8:10 PM, Thomas Koenig <tkoe...@netcologne.de> 
>>> wrote:
>>>> Hi Janne,
>>>>
>>>>>> So, attached is a new version of the patch. No update
>>>>>> on the ChangeLog. OK for trunk?
>>>>>
>>>>> Yup, just really fix the copyright and string length stuff first. Thanks!
>>>>
>>>>
>>>> Committed as rev 255070 with the fixes.
>>>>
>>>> There are still some files which mention Fortran 95, that can be fixed
>>>> later.
>>>
>>> That's ok, I wasn't expecting you to fix all such occurences, just the
>>> new files you added.
>>>
>>> However, to continue my nitpicking (sorry!), it seems that in many
>>> cases compare_fcn still takes an integer length argument. Could you
>>> make that gfc_charlen_type as well? Or maybe size_t, since the
>>> argument is passed straight to memcmp{_char4} anyway? Please consider
>>> such a patch pre-approved. Thanks!
>>
>> To continue, the prototypes are inconsistent too, e.g. m4/minloc2s.m4:
>>
>> extern 'rtype_name` 'name`'rtype_qual`_'atype_code` ('atype` * const
>> restrict, int);
>> export_proto('name`'rtype_qual`_'atype_code`);
>>
>> 'rtype_name`
>> 'name`'rtype_qual`_'atype_code` ('atype` * const restrict array,
>> gfc_charlen_type len)
>>
>> See also lines 77/82, and in maxloc2s.m4 lines 42/46 and 144/149.
>>
>> Thanks to James and Ramana on IRC, who are working on some target
>> where gfc_charlen_type != int and reported build failures.
>
>
> I'm not sure why gfc_charlen_type != int on arm-none-eabi and
> aarch64-none-elf which is where both James and I saw the issue.
>
> The issue hasn't appeared on any of our cross-linux builds.

gfc_charlen_type is typedeffed to a GFC_INTEGER_4, which comes from
kinds.h generated during the library build time (see
libgfortran/mk-kinds-h.sh). At least on x86_64-pc-linux-gnu this is
then a int32_t which is a typedef for plain int. HTH.



-- 
Janne Blomqvist

Reply via email to