From: pault Date: Thu, 4 Oct 2007 04:45:41 +0000 (+0000) Subject: 2007-10-04 Paul Thomas X-Git-Tag: upstream/4.9.2~45795 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=23838e80a1447a71d295e1596b18ab6f0a5ad708;p=platform%2Fupstream%2Flinaro-gcc.git 2007-10-04 Paul Thomas PR fortran/33542 * interface.c (check_interface1): Revert patch of 2007-10-02. 2007-10-04 Paul Thomas 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 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index cb9c9ca..327d9a5 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2007-10-04 Paul Thomas + + PR fortran/33542 + * interface.c (check_interface1): Revert patch of 10-02. + 2007-10-03 Francois-Xavier Coudert PR fortran/26682 diff --git a/gcc/fortran/interface.c b/gcc/fortran/interface.c index 6513517..741bba5 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 0173411..6a49363 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2007-10-04 Paul Thomas + + PR fortran/33542 + * gfortran.dg/ambiguous_specific_1.f90: Remove. + 2007-10-03 Alexandre Oliva * 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 63ea9da..0000000 --- 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 -! -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" } }