]> git.ipfire.org Git - thirdparty/gcc.git/commit
re PR c++/27819 (ICE casting static const variables)
authorMark Mitchell <mark@codesourcery.com>
Mon, 5 Jun 2006 02:46:38 +0000 (02:46 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Mon, 5 Jun 2006 02:46:38 +0000 (02:46 +0000)
commit2b643edaf8c711e67a882d4508b114fbf1210233
tree178cd3a074a2b2149829b25d2193d84235c2d074
parentb42b286aa6b39e2cbfe44d162f525c7c7a745772
re PR c++/27819 (ICE casting static const variables)

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.

From-SVN: r114382
gcc/cp/ChangeLog
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/semantics.c
gcc/cp/typeck.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/complit7.C [new file with mode: 0644]
gcc/testsuite/g++.dg/init/array21.C [new file with mode: 0644]
gcc/testsuite/g++.dg/parse/ptrmem5.C [new file with mode: 0644]
gcc/testsuite/g++.dg/template/static25.C [new file with mode: 0644]