class.c (initialize_array): Don't set TREE_HAS_CONSTRUCTOR on braced initializer.
authorMark Mitchell <mark@codesourcery.com>
Thu, 22 Apr 2004 21:29:35 +0000 (21:29 +0000)
committerMark Mitchell <mmitchel@gcc.gnu.org>
Thu, 22 Apr 2004 21:29:35 +0000 (21:29 +0000)
commit92a62aad855ff49dbd3c975aed87ed141ff447b4
tree0ba13a72c0e5f3f23ed463ff62b80ef65ac60f72
parent838a4849fab52af1c5d54703b4591d403544dd7f
class.c (initialize_array): Don't set TREE_HAS_CONSTRUCTOR on braced initializer.

* class.c (initialize_array): Don't set TREE_HAS_CONSTRUCTOR on
braced initializer.
* cp-tree.h (BRACE_ENCLOSED_INITIALIZER_P): New macro.
* decl.c (reshape_init): Use it.
* init.c (perform_member_init): Remove redundant condition.
(build_aggr_init): Adjust to handle brace-enclosed initializers
correctly.
(expand_default_init): Use BRACE_ENCLOSED_INITIALIZER_P.
* parser.c (cp_parser_initializer_clause): Do not set
TREE_HAS_CONSTRUCTOR on the initializer.
* rtti.c (tinfo_base_init): Likewise.
(generic_initializer): Likewise.
(ptr_initializer): Likewise.
(ptm_initializer): Likewise.
(class_initializer): Likewise.
(get_pseudo_ti_init): Likewise.
* typeck2.c (digest_init): Use BRACE_ENCLOSED_INITIALIZER_P.

* g++.dg/ext/complit3.C: New test.

From-SVN: r81052
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/decl.c
gcc/cp/init.c
gcc/cp/parser.c
gcc/cp/rtti.c
gcc/cp/typeck2.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/ext/complit3.C [new file with mode: 0644]