https://gcc.gnu.org/bugzilla/show_bug.cgi?id=100274

--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Harald Anlauf <anl...@gcc.gnu.org>:

https://gcc.gnu.org/g:a8b79cc939d6786293f654c42a2d1b0ab040de0e

commit r12-515-ga8b79cc939d6786293f654c42a2d1b0ab040de0e
Author: Harald Anlauf <anl...@gmx.de>
Date:   Wed May 5 15:25:50 2021 +0200

    PR fortran/100274 - ICE in gfc_conv_procedure_call, at
fortran/trans-expr.c:6131

    When the check for the length of formal and actual character arguments
    found a mismatch and emitted a warning, it would skip further checks
    like that could lead to errors.  Fix that by continuing the checking.
    Also catch a NULL pointer dereference.

    gcc/fortran/ChangeLog:

            PR fortran/100274
            * interface.c (gfc_compare_actual_formal): Continue checks after
            emitting warning for argument length mismatch.
            * trans-expr.c (gfc_conv_procedure_call): Check for NULL pointer
            dereference.

    gcc/testsuite/ChangeLog:

            PR fortran/100274
            * gfortran.dg/argument_checking_25.f90: New test.

Reply via email to