Hi Jerry,

With such an illustrious group of contributors, I can hardly say 'no', can
I? :-)

It looks fine to me - OK for trunk.

Regards

Paul


On Sun, 29 Dec 2024 at 23:10, Jerry D <jvdelis...@gmail.com> wrote:

> Attached is the revised patch incorporating handling of optional
> arguments of a calling procedure and simplified checking for C
> interoperability.
>
> See the PR for much discussion.
>
> Regression tested on x86_64_linux_gnu.
>
> Two test cases.
>
> OK for trunk?
>
> Author: Steven G. Kargl <kar...@comcast.net>
> Date:   Sun Dec 29 14:19:18 2024 -0800
>
>      Fortran: Implement f_c_string function.
>
>      Fortran 2023 has added the new intrinsic function F_C_STRING to
>      convert fortran strings of default character kind to a null
>      terminated C string.
>
>      Contributions from Steve Kargl, Harald Anlauf, FX Coudert,
>      Mikael Morin, and Jerry DeLisle.
>
>         PR fortran/117643
>
>      gcc/fortran/ChangeLog:
>
>        * check.cc (gfc_check_f_c_string): Check arguments of
>         f_c_string().
>        * gfortran.h (enum gfc_isym_id): New symbol GFC_ISYM_F_C_STRING.
>        * intrinsic.cc (add_functions): Add the ISO C Binding
>         routine f_c_string(). Wrap nearby long line to less
>         than 80 characters.
>        * intrinsic.h (gfc_check_f_c_string): Prototype for
>         gfc_check_f_c_string().
>        * iso-c-binding.def (NAMED_FUNCTION): Declare for ISO C
>         Binding routine f_c_string().
>        * primary.cc (gfc_match_rvalue): Fix comment that has
>         been untrue since 2011. Add ISOCBINDING_F_C_STRING
>         to conditional.
>        * trans-intrinsic.cc (conv_trim): Specialized version
>         of trim() for f_c_string().
>         (gfc_conv_intrinsic_function): Use GFC_ISYM_F_C_STRING
>         to trigger in-lining.
>
>      gcc/testsuite/ChangeLog:
>
>        * gfortran.dg/f_c_string1.f90: New test.
>        * gfortran.dg/f_c_string2.f90: New test.
>

Reply via email to