From: Harald Anlauf Date: Sun, 3 Mar 2019 20:36:12 +0000 (+0000) Subject: backport: re PR fortran/77583 (ICE in pp_quoted_string, at pretty-print.c:966) X-Git-Tag: releases/gcc-7.5.0~562 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=874bfe7b42ea1a9cb6f503259e005f7fe9453219;p=thirdparty%2Fgcc.git backport: re PR fortran/77583 (ICE in pp_quoted_string, at pretty-print.c:966) 2019-03-03 Harald Anlauf Steven G. Kargl Backport from trunk PR fortran/77583 * symbol.c (check_conflict): Check for valid procedure name passed to error reporting routine. PR fortran/77583 * gfortran.dg/pr77583.f90: New test. Co-Authored-By: Steven G. Kargl From-SVN: r269355 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index b30685de60bc..c987e1ba15d9 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,11 @@ +2019-03-03 Harald Anlauf + Steven G. Kargl + + Backport from trunk + PR fortran/77583 + * symbol.c (check_conflict): Check for valid procedure name + passed to error reporting routine. + 2019-03-03 Thomas Koenig PR fortran/87689 diff --git a/gcc/fortran/symbol.c b/gcc/fortran/symbol.c index 6917b22dff28..7b884c332102 100644 --- a/gcc/fortran/symbol.c +++ b/gcc/fortran/symbol.c @@ -477,7 +477,7 @@ check_conflict (symbol_attribute *attr, const char *name, locus *where) /* The copying of procedure dummy arguments for module procedures in a submodule occur whilst the current state is COMP_CONTAINS. It is necessary, therefore, to let this through. */ - if (attr->dummy + if (name && attr->dummy && (attr->function || attr->subroutine) && gfc_current_state () == COMP_CONTAINS && !(gfc_new_block && gfc_new_block->abr_modproc_decl)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 1ea2c1fe2191..257e2823dae1 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2019-03-03 Harald Anlauf + + Backport from trunk + PR fortran/77583 + * gfortran.dg/pr77583.f90: New test. + 2019-03-03 Thomas Koenig PR fortran/87689 diff --git a/gcc/testsuite/gfortran.dg/pr77583.f90 b/gcc/testsuite/gfortran.dg/pr77583.f90 new file mode 100644 index 000000000000..c2ee07442977 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/pr77583.f90 @@ -0,0 +1,10 @@ +! { dg-do compile } +! +! PR fortran/77583 - ICE in pp_quoted_string, at pretty-print.c:966 +! Contributed by Gerhard Steinmetz + +pure subroutine sub(s) +contains + pure subroutine s ! { dg-error "conflicts with DUMMY argument" } + end +end