aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/interface.c
diff options
context:
space:
mode:
authorPaul Thomas <pault@gcc.gnu.org>2006-11-22 00:02:02 +0000
committerPaul Thomas <pault@gcc.gnu.org>2006-11-22 00:02:02 +0000
commit991f3b1289865f843d1724594f3dd57f4abf87ec (patch)
treee62b2d2f9aaa4913fcee701e4860e243dd0984c3 /gcc/fortran/interface.c
parentac8f6c69032b9a07b3036a2514bd59353b2a32c3 (diff)
downloadgcc-991f3b1289865f843d1724594f3dd57f4abf87ec.zip
gcc-991f3b1289865f843d1724594f3dd57f4abf87ec.tar.gz
gcc-991f3b1289865f843d1724594f3dd57f4abf87ec.tar.bz2
re PR fortran/29652 (ambiguous interface declaration undetected)
2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/29652 * interface.c (check_interface1): Use a local value, instead of the dummy, as the inner iterator over interface symbols. 2006-11-22 Paul Thomas <pault@gcc.gnu.org> PR fortran/29652 * gfortran.dg/generic_7.f90: New test. * gfortran.dg/defined_operators_1.f90: Add new error. From-SVN: r119076
Diffstat (limited to 'gcc/fortran/interface.c')
-rw-r--r--gcc/fortran/interface.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index 5a9b2da..e1564b2 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -964,12 +964,12 @@ check_interface0 (gfc_interface * p, const char *interface_name)
here. */
static int
-check_interface1 (gfc_interface * p, gfc_interface * q,
+check_interface1 (gfc_interface * p, gfc_interface * q0,
int generic_flag, const char *interface_name)
{
-
+ gfc_interface * q;
for (; p; p = p->next)
- for (; q; q = q->next)
+ for (q = q0; q; q = q->next)
{
if (p->sym == q->sym)
continue; /* Duplicates OK here */