This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c++/35023] [4.3 regression] ICE with parameter pack in variable declaration
- From: "dgregor at gcc dot gnu dot org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 15 Feb 2008 17:33:49 -0000
- Subject: [Bug c++/35023] [4.3 regression] ICE with parameter pack in variable declaration
- References: <bug-35023-1771@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #2 from dgregor at gcc dot gnu dot org 2008-02-15 17:33 -------
Subject: Bug 35023
Author: dgregor
Date: Fri Feb 15 17:33:02 2008
New Revision: 132348
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=132348
Log:
2008-02-15 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35023
PR c++/35024
PR c++/35026
* pt.c (finish_member_template_decl): If the type in a TYPE_DECL
is error_mark_node, return an error early.
(find_parameter_packs_r): Pass the pointer set along to recursive
calls of cp_walk_subtrees; don't try to manage the pointer set
ourselves.
(uses_parameter_packs): Pass the pointer set to cp_walk_tree.
(make_pack_expansion): Ditto.
(check_for_bare_parameter_packs): Ditto. Also, don't bother taking
a second pass through the tree with find_parameter_packs_r; that
second pass no longer does anything.
(push_template_decl_real): If we have an erroneous declaration,
set its type to error_mark_node before returning an error.
2008-02-15 Douglas Gregor <doug.gregor@gmail.com>
PR c++/35023
PR c++/35024
PR c++/35026
* g++.dg/cpp0x/vt-35026.C: New.
* g++.dg/cpp0x/vt-35023.C: New.
* g++.dg/cpp0x/vt-34055.C: Tweak expected error messages.
* g++.dg/cpp0x/vt-35024.C: New.
Added:
trunk/gcc/testsuite/g++.dg/cpp0x/vt-35023.C
trunk/gcc/testsuite/g++.dg/cpp0x/vt-35024.C
trunk/gcc/testsuite/g++.dg/cpp0x/vt-35026.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/pt.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/cpp0x/vt-34055.C
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35023