[Bug fortran/23091] ICE in gfc_trans_auto_array_allocation

pault at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Jun 11 22:33:00 GMT 2006



------- Comment #12 from pault at gcc dot gnu dot org  2006-06-11 22:32 -------
Subject: Bug 23091

Author: pault
Date: Sun Jun 11 22:32:26 2006
New Revision: 114551

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114551
Log:
2006-06-12  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/24558
        PR fortran/20877
        PR fortran/25047
        * decl.c (get_proc_name): Add new argument to flag that a
        module function entry is being treated. If true, correct
        error condition, add symtree to module namespace and add
        a module procedure.
        (gfc_match_function_decl, gfc_match_entry,
        gfc_match_subroutine): Use the new argument in calls to
        get_proc_name.
        * resolve.c (resolve_entries): ENTRY symbol reference to
        to master entry namespace if a module function.
        * trans-decl.c (gfc_create_module_variable): Return if
        the symbol is an entry.

        PR fortran/23091
        * resolve.c (resolve_fl_variable): Error if an automatic
        object has the SAVE attribute.

        PR fortran/24168
        * expr.c (simplify_intrinsic_op): Transfer the rank and
        the locus to the simplified expression.

        PR fortran/25090
        PR fortran/25058
        * gfortran.h : Add int entry_id to gfc_symbol.
        * resolve.c : Add static variables current_entry_id and
        specification_expr.
        (resolve_variable): During code resolution, check if a
        reference to a dummy variable in an executable expression
        is preceded by its appearance as a parameter in an entry.
        Likewise check its specification expressions.
        (resolve_code): Update current_entry_id on EXEC_ENTRY.
        (resolve_charlen, resolve_fl_variable): Set and reset
        specifiaction_expr.
        (is_non_constant_shape_array): Do not return on detection
        of a variable but continue to resolve all the expressions.
        (resolve_codes): set current_entry_id to an out of range
        value.

2006-06-12  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/24558
        * gfortran.dg/entry_6.f90: New test.

        PR fortran/20877
        PR fortran/25047
        * gfortran.dg/entry_7.f90: New test.

        PR fortran/23091
        * gfortran.dg/saved_automatic_1.f90: New test.

        PR fortran/24168
        * gfortran.dg/array_simplify_1.f90: New test.

        PR fortran/25090
        * gfortran.dg/entry_dummy_ref_1.f90: New test.

        PR fortran/25058
        * gfortran.dg/entry_dummy_ref_2.f90: New test.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/array_simplify_1.f90
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/entry_6.f90
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/entry_7.f90
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/entry_dummy_ref_1.f90
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/entry_dummy_ref_2.f90
    branches/gcc-4_1-branch/gcc/testsuite/gfortran.dg/saved_automatic_1.f90
Modified:
    branches/gcc-4_1-branch/gcc/fortran/ChangeLog
    branches/gcc-4_1-branch/gcc/fortran/decl.c
    branches/gcc-4_1-branch/gcc/fortran/expr.c
    branches/gcc-4_1-branch/gcc/fortran/gfortran.h
    branches/gcc-4_1-branch/gcc/fortran/resolve.c
    branches/gcc-4_1-branch/gcc/fortran/trans-decl.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23091



More information about the Gcc-bugs mailing list