summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-04 04:45:41 +0000
committerpault <pault@138bc75d-0d04-0410-961f-82ee72b054a4>2007-10-04 04:45:41 +0000
commit23838e80a1447a71d295e1596b18ab6f0a5ad708 (patch)
tree81c4a8a9536d0e135c5a39dcfe10068f375f0ec9 /gcc
parente56ff3c4d0cbacf16758f87a3e2051db06888bf6 (diff)
downloadgcc-23838e80a1447a71d295e1596b18ab6f0a5ad708.tar.gz
2007-10-04 Paul Thomas <pault@gcc.gnu.org>
PR fortran/33542 * interface.c (check_interface1): Revert patch of 2007-10-02. 2007-10-04 Paul Thomas <pault@gcc.gnu.org> PR fortran/33542 * gfortran.dg/ambiguous_specific_1.f90: Remove. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@129000 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog5
-rw-r--r--gcc/fortran/interface.c3
-rw-r--r--gcc/testsuite/ChangeLog5
-rw-r--r--gcc/testsuite/gfortran.dg/ambiguous_specific_1.f9037
4 files changed, 11 insertions, 39 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index cb9c9ca964f..327d9a5c0b1 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,3 +1,8 @@
+2007-10-04 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33542
+ * interface.c (check_interface1): Revert patch of 10-02.
+
2007-10-03 Francois-Xavier Coudert <fxcoudert@gcc.gnu.org>
PR fortran/26682
diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c
index 651351727a5..741bba57520 100644
--- a/gcc/fortran/interface.c
+++ b/gcc/fortran/interface.c
@@ -1044,8 +1044,7 @@ check_interface1 (gfc_interface *p, gfc_interface *q0,
if (p->sym->name == q->sym->name && p->sym->module == q->sym->module)
continue;
- if (compare_interfaces (p->sym, q->sym, generic_flag)
- || p->sym->name == q->sym->name)
+ if (compare_interfaces (p->sym, q->sym, generic_flag))
{
if (referenced)
{
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog
index 017341160a9..6a493633916 100644
--- a/gcc/testsuite/ChangeLog
+++ b/gcc/testsuite/ChangeLog
@@ -1,3 +1,8 @@
+2007-10-04 Paul Thomas <pault@gcc.gnu.org>
+
+ PR fortran/33542
+ * gfortran.dg/ambiguous_specific_1.f90: Remove.
+
2007-10-03 Alexandre Oliva <aoliva@redhat.com>
* g++.dg/ext/gnu-inline-global-redecl.C: New.
diff --git a/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90 b/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90
deleted file mode 100644
index 63ea9da32bc..00000000000
--- a/gcc/testsuite/gfortran.dg/ambiguous_specific_1.f90
+++ /dev/null
@@ -1,37 +0,0 @@
-! { dg-do compile }
-! Checks the fix for PR33542, in which the ambiguity in the specific
-! interfaces of foo was missed.
-!
-! Contributed by Tobias Burnus <burnus@gcc.gnu.org>
-!
-MODULE M1
- INTERFACE FOO
- MODULE PROCEDURE FOO2
- END INTERFACE
-CONTAINS
- SUBROUTINE FOO2(I)
- INTEGER, INTENT(IN) :: I
- WRITE(*,*) 'INTEGER'
- END SUBROUTINE FOO2
-END MODULE M1
-
-MODULE M2
- INTERFACE FOO
- MODULE PROCEDURE FOO2
- END INTERFACE
-CONTAINS
- SUBROUTINE FOO2(R)
- REAL, INTENT(IN) :: R
- WRITE(*,*) 'REAL'
- END SUBROUTINE FOO2
-END MODULE M2
-
-PROGRAM P
- USE M1 ! { dg-error "Ambiguous interfaces" }
- USE M2
- implicit none
- external bar
- CALL FOO(10)
- CALL FOO(10.)
-END PROGRAM P
-! { dg-final { cleanup-modules "m1 m2" } }