[Bug c++/27806] [4.0/4.1/4.2 regression] ICE with invalid ptr-to-member

mmitchel at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Mon Jun 5 02:54:00 GMT 2006



------- Comment #3 from mmitchel at gcc dot gnu dot org  2006-06-05 02:52 -------
Subject: Bug 27806

Author: mmitchel
Date: Mon Jun  5 02:52:37 2006
New Revision: 114383

URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=114383
Log:
        PR c++/27819
        * decl.c (cp_finish_decl): Process initializers for static data
        members with non-dependent initializers, even in templates.
        PR c++/27722
        * decl.c (maybe_deduce_size_from_array_init): If the declaration
        is erroneous, give it an erroneous type.
        (layout_var_decl): If the type is erroneous, give up.
        (check_initializer): Likewise.
        PR c++/27807
        * cp-tree.h (TYPE_OBJ_P): New macro.
        (TYPE_PTROB_P): Use it.
        (TYPE_REF_OBJ_P): Likewise.
        * semantics.c (finish_compound_literal): Do not permit compound
        literals of non-object types.
        PR c++/27806
        * typeck.c (original_type): Robustify.
        PR c++/27819
        * g++.dg/template/static25.C: New test.
        PR c++/27722
        * g++.dg/init/array21.C: New test.
        PR c++/27807
        * g++.dg/ext/complit7.C: New test.

        PR c++/27806
        * g++.dg/parse/ptrmem5.C: New test.

Added:
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/ext/complit7.C
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/init/array21.C
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/parse/ptrmem5.C
    branches/gcc-4_1-branch/gcc/testsuite/g++.dg/template/static25.C
Modified:
    branches/gcc-4_1-branch/gcc/cp/ChangeLog
    branches/gcc-4_1-branch/gcc/cp/cp-tree.h
    branches/gcc-4_1-branch/gcc/cp/decl.c
    branches/gcc-4_1-branch/gcc/cp/semantics.c
    branches/gcc-4_1-branch/gcc/cp/typeck.c
    branches/gcc-4_1-branch/gcc/testsuite/ChangeLog


-- 


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



More information about the Gcc-bugs mailing list