This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[RFC gfortran] PR53478 - gfortran segfaults when module name clashes with C binding name of procedure


This patch implement the requirement

> ... Furthermore, a binding label shall not be
> the same as the global identifier of any other global entity, ignoring
> differences in case."

While looking at the code, I noticed that several %s should be %qs. This is fixed as well by the patch along with the needed adjustment of the test suite.

Tested on darwin.

TIA

Dominique

2017-1-12  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/53478
        * gfortran.h (gfc_find_case_gsymbol): New prototype.
        * symbol.c (gfc_find_case_gsymbol): New procedure, case
        insensistive version of gfc_find_gsymbol.
        * resolve.c (resolve_common_blocks): Use it.
        Replace %s with %qs where needed.

2017-11-12  Dominique d'Humieres  <dominiq@lps.ens.fr>

        PR fortran/53478
        * gfortran.dg/binding_label_tests_4.f03: Update dg-error.
        * gfortran.dg/binding_label_tests_6.f03: Likewise.
        * gfortran.dg/binding_label_tests_7.f03: Likewise.
        * gfortran.dg/binding_label_tests_8.f03: Likewise.
        * gfortran.dg/binding_label_tests_10_main.f03: Likewise.
        * gfortran.dg/binding_label_tests_11_main.f03: Likewise.
        * gfortran.dg/binding_label_tests_13_main.f03: Likewise.
        * gfortran.dg/test_common_binding_labels_3_main.f03: Likewise.
        * gfortran.dg/binding_label_tests_29.f90: New test.

Attachment: patch-56440
Description: Binary data


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]