From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 29160 invoked by alias); 6 Jan 2007 14:14:20 -0000 Received: (qmail 28511 invoked by alias); 6 Jan 2007 14:13:50 -0000 Date: Sat, 06 Jan 2007 14:14:00 -0000 Message-ID: <20070106141350.28509.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/23060] %VAL, %REF and %DESCR constructs not implemented In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "pault at gcc dot gnu dot org" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2007-01/txt/msg00383.txt.bz2 ------- Comment #14 from pault at gcc dot gnu dot org 2007-01-06 14:13 ------- Subject: Bug 23060 Author: pault Date: Sat Jan 6 14:13:20 2007 New Revision: 120525 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=120525 Log: 2007-01-06 Paul Thomas Bug fixes from trunk PR fortran/30034 * resolve.c (resolve_formal_arglist): Exclude the test for pointers and procedures for subroutine arguments as well as functions. PR fortran/30237 * intrinsic.c (remove_nullargs): Do not pass up arguments with a label. If the actual has a label and the formal has a type then emit an error. PR fortran/25135 * module.c (load_generic_interfaces): If the symbol is present and is not generic it is ambiguous. PR fortran/23060 * intrinsic.c (compare_actual_formal ): Distinguish argument list functions from keywords. * intrinsic.c (sort_actual): If formal is NULL, the presence of an argument list function actual is an error. * trans-expr.c (conv_arglist_function) : New function to implement argument list functions %VAL, %REF and %LOC. (gfc_conv_function_call): Call it. * resolve.c (resolve_actual_arglist): Add arg ptype and check argument list functions. (resolve_function, resolve_call): Set value of ptype before calls to resolve_actual_arglist. * primary.c (match_arg_list_function): New function. (gfc_match_actual_arglist): Call it before trying for a keyword argument. PR fortran/27900 * resolve.c (resolve_actual_arglist): If all else fails and a procedure actual argument has no type, see if a specific intrinsic matches. PR fortran/24325 * resolve.c (resolve_function): If the function reference is FL_VARIABLE this is an error. 2007-01-06 Paul Thomas PR fortran/30034 * gfortran.dg/pure_formal_proc_1.f90: New test. PR fortran/30237 * gfortran.dg/intrinsic_actual_3.f90: New test. PR fortran/25135 * gfortran.dg/generic_11.f90: New test. * gfortran.dg/interface_7.f90: Remove name clash between module name and procedure 'x' referenced in the interface. PR fortran/23060 * gfortran.dg/c_by_val.c: Called by c_by_val_1.f. * gfortran.dg/c_by_val_1.f: New test. * gfortran.dg/c_by_val_2.f: New test. * gfortran.dg/c_by_val_3.f: New test. PR fortran/27900 * gfortran.dg/intrinsic_actual_4.f90: New test. PR fortran/24325 * gfortran.dg/func_decl_3.f90: New test. Added: branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/c_by_val.c branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/c_by_val_1.f branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/c_by_val_2.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/c_by_val_3.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/func_decl_3.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/generic_11.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_3.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/intrinsic_actual_4.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/pure_formal_proc_1.f90 Modified: branches/gcc-4_2-branch/gcc/fortran/ChangeLog branches/gcc-4_2-branch/gcc/fortran/interface.c branches/gcc-4_2-branch/gcc/fortran/intrinsic.c branches/gcc-4_2-branch/gcc/fortran/module.c branches/gcc-4_2-branch/gcc/fortran/primary.c branches/gcc-4_2-branch/gcc/fortran/resolve.c branches/gcc-4_2-branch/gcc/fortran/trans-expr.c branches/gcc-4_2-branch/gcc/testsuite/ChangeLog branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/dummy_procedure_1.f90 branches/gcc-4_2-branch/gcc/testsuite/gfortran.dg/interface_7.f90 -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23060