This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/31992] [4.1/4.2 regression] ICE initializing static variable of template class
- From: "mmitchel at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 7 Jul 2007 02:02:56 -0000
- Subject: [Bug c++/31992] [4.1/4.2 regression] ICE initializing static variable of template class
- References: <bug-31992-1771@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from mmitchel at gcc dot gnu dot org 2007-07-07 02:02 -------
Subject: Bug 31992
Author: mmitchel
Date: Sat Jul 7 02:02:37 2007
New Revision: 126433
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=126433
Log:
PR c++/32245
* init.c (build_zero_init): Always build an initializer for
non-static storage.
* typeck2.c (build_functional_cast): Use build_zero_init.
PR c++/32251
* init.c (build_new_1): Always pass the allocation function to
build_op_delete_call.
* call.c (build_op_delete_call): Handle operator delete with a
variable-argument list. Do not issue an error when no matching
deallocation function is available for a new operator.
PR c++/31992
* cp-tree.h (any_value_dependent_elements_p): Declare it.
* decl.c (value_dependent_init_p): New function.
(cp_finish_decl): Use it.
* pt.c (value_dependent_expression_p): Use
any_value_dependent_elements_p.
* parser.c (cp_parser_primary_expression): Add comment about
treating dependent qualified names as integral
constant-expressions.
PR c++/32245
* g++.dg/init/ptrmem4.C: New test.
PR c++/32251
* g++.dg/init/new21.C: Likewise.
PR c++/31992
* g++.dg/template/static30.C: Likewise.
Added:
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/init/new21.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/init/ptrmem4.C
branches/gcc-4_2-branch/gcc/testsuite/g++.dg/template/static30.C
Modified:
branches/gcc-4_2-branch/gcc/cp/ChangeLog
branches/gcc-4_2-branch/gcc/cp/call.c
branches/gcc-4_2-branch/gcc/cp/cp-tree.h
branches/gcc-4_2-branch/gcc/cp/decl.c
branches/gcc-4_2-branch/gcc/cp/init.c
branches/gcc-4_2-branch/gcc/cp/parser.c
branches/gcc-4_2-branch/gcc/cp/pt.c
branches/gcc-4_2-branch/gcc/cp/typeck2.c
branches/gcc-4_2-branch/gcc/testsuite/ChangeLog
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31992