diff options
author | Janus Weil <janus@gcc.gnu.org> | 2013-12-30 18:33:21 +0100 |
---|---|---|
committer | Janus Weil <janus@gcc.gnu.org> | 2013-12-30 18:33:21 +0100 |
commit | 6bd5968441b9cc3b46ee266c03062ac4d7b7e154 (patch) | |
tree | 38349517c79fb388edaf2e5d3da3f69623a6f38b | |
parent | acdcd61b09ce9342b634539642203bc387477092 (diff) | |
download | gcc-6bd5968441b9cc3b46ee266c03062ac4d7b7e154.zip gcc-6bd5968441b9cc3b46ee266c03062ac4d7b7e154.tar.gz gcc-6bd5968441b9cc3b46ee266c03062ac4d7b7e154.tar.bz2 |
re PR fortran/58998 (Generic interface problem with gfortran)
2013-12-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/58998
* resolve.c (resolve_symbol): Check that symbol is not only flavorless
but also untyped.
2013-12-30 Janus Weil <janus@gcc.gnu.org>
PR fortran/58998
* gfortran.dg/generic_28.f90: New.
From-SVN: r206249
-rw-r--r-- | gcc/fortran/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/fortran/resolve.c | 3 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/testsuite/gfortran.dg/generic_28.f90 | 18 |
4 files changed, 31 insertions, 1 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 60922b8..6c7cea7 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,9 @@ +2013-12-30 Janus Weil <janus@gcc.gnu.org> + + PR fortran/58998 + * resolve.c (resolve_symbol): Check that symbol is not only flavorless + but also untyped. + 2013-12-29 Janus Weil <janus@gcc.gnu.org> PR fortran/59612 diff --git a/gcc/fortran/resolve.c b/gcc/fortran/resolve.c index 57e6cbb..54cfdd6 100644 --- a/gcc/fortran/resolve.c +++ b/gcc/fortran/resolve.c @@ -12732,7 +12732,8 @@ resolve_symbol (gfc_symbol *sym) if (sym->attr.flavor == FL_UNKNOWN || (sym->attr.flavor == FL_PROCEDURE && !sym->attr.intrinsic && !sym->attr.generic && !sym->attr.external - && sym->attr.if_source == IFSRC_UNKNOWN)) + && sym->attr.if_source == IFSRC_UNKNOWN + && sym->ts.type == BT_UNKNOWN)) { /* If we find that a flavorless symbol is an interface in one of the diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 3d68675..8f94e49 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2013-12-30 Janus Weil <janus@gcc.gnu.org> + + PR fortran/58998 + * gfortran.dg/generic_28.f90: New. + 2013-12-30 Jakub Jelinek <jakub@redhat.com> PR tree-optimization/59591 diff --git a/gcc/testsuite/gfortran.dg/generic_28.f90 b/gcc/testsuite/gfortran.dg/generic_28.f90 new file mode 100644 index 0000000..5ddc979 --- /dev/null +++ b/gcc/testsuite/gfortran.dg/generic_28.f90 @@ -0,0 +1,18 @@ +! { dg-do compile } +! +! PR 58998: [4.8/4.9 Regression] Generic interface problem with gfortran +! +! Contributed by Paul van Delst + + interface iargc + procedure iargc_8 + end interface + +contains + + integer(8) function iargc_8() + integer(4) iargc + iargc_8 = iargc() + end function + +end |