]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/cp/init.c
re PR c++/9629 (virtual inheritance segfault)
authorNathan Sidwell <nathan@codesourcery.com>
Sun, 16 Mar 2003 14:36:43 +0000 (14:36 +0000)
committerNathan Sidwell <nathan@gcc.gnu.org>
Sun, 16 Mar 2003 14:36:43 +0000 (14:36 +0000)
commit1f5a253a36c2e680af7a627a5077a61fb8afe6b6
tree7874404e7e5a23052c2153596208ca845cfa33ef
parent46ea50cb66f3edc9f5f474067e61bfe39c41cb06
re PR c++/9629 (virtual inheritance segfault)

cp:
PR c++/9629
* cp-tree.h (struct language_function): Add in_base_initializer.
(in_base_initializer): define it.
(expand_member_init): Remove INIT param.
* init.c (expand_member_init): Remove INIT param, return the member.
(emit_mem_initializers): Set in_base_initializer.
* class.c (build_base_path): Check in_base_initializer.
* parser.c (cp_parser_mem_initializer): Set in_base_initializer.
* pt.c (tsubst_initializer_list): Likewise.
testsuite:
PR c++/9629
* g++.dg/init/ctor2.C: New test.

From-SVN: r64438
gcc/cp/ChangeLog
gcc/cp/class.c
gcc/cp/cp-tree.h
gcc/cp/init.c
gcc/cp/parser.c
gcc/cp/pt.c
gcc/testsuite/ChangeLog
gcc/testsuite/g++.dg/init/ctor2.C [new file with mode: 0644]