------- Comment #28 from pault at gcc dot gnu dot org 2006-12-09 21:13 ------- Subject: Bug 29975
Author: pault Date: Sat Dec 9 21:13:29 2006 New Revision: 119697 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=119697 Log: 2006-12-09 Paul Thomas <[EMAIL PROTECTED]> PR fortran/29975 PR fortran/30068 PR fortran/30096 * interface.c (compare_type_rank_if): Reject invalid generic interfaces. (check_interface1): Give a warning for nonreferred to ambiguous interfaces. (check_sym_interfaces): Check whether an ambiguous interface is referred to. Do not check host associated interfaces since these cannot be ambiguous with the local versions. (check_uop_interface, gfc_check_interfaces): Update call to check_interface1. * symbol.c (gfc_get_sym_tree, gfc_get_sym_tree): Allow adding unambiguous procedures to generic interfaces. * gfortran.h (symbol_attribute): Added use_only and ambiguous_interfaces. * module.c (load_need): Set the use_only flag, if needed. * resolve.c (resolve_fl_procedure): Warn for nonreferred interfaces. * expr.c (find_array_section): Fix initializer array contructor. 2006-12-09 Paul Thomas <[EMAIL PROTECTED]> Tobias Burnus <[EMAIL PROTECTED]> PR fortran/29975 PR fortran/30068 * gfortran.dg/interface_4.f90: Test adding procedure to generic interface. * gfortran.dg/interface_5.f90: Test warning for not-referenced-to ambiguous interfaces. * gfortran.dg/interface_6.f90: Test invalid, ambiguous interface. * gfortran.dg/interface_7.f90: Test invalid, ambiguous interface. * gfortran.dg/interface_8.f90: Test warning for not-referenced-to ambiguous interfaces. * gfortran.dg/interface_1.f90: Change dg-error into a dg-warning. * gfortran.dg/array_initializer_2.f90: Add initializer array constructor test. PR fortran/30096 * gfortran.dg/interface_9.f90: Test that host interfaces are not checked for ambiguity with the local version. Added: trunk/gcc/testsuite/gfortran.dg/interface_4.f90 trunk/gcc/testsuite/gfortran.dg/interface_5.f90 trunk/gcc/testsuite/gfortran.dg/interface_6.f90 trunk/gcc/testsuite/gfortran.dg/interface_7.f90 trunk/gcc/testsuite/gfortran.dg/interface_8.f90 trunk/gcc/testsuite/gfortran.dg/interface_9.f90 Modified: trunk/gcc/fortran/ChangeLog trunk/gcc/fortran/expr.c trunk/gcc/fortran/gfortran.h trunk/gcc/fortran/interface.c trunk/gcc/fortran/module.c trunk/gcc/fortran/resolve.c trunk/gcc/fortran/symbol.c trunk/gcc/testsuite/ChangeLog trunk/gcc/testsuite/gfortran.dg/array_initializer_2.f90 trunk/gcc/testsuite/gfortran.dg/generic_7.f90 trunk/gcc/testsuite/gfortran.dg/interface_1.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29975