This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
Other format: | [Raw text] |
Unfortunately, the part of this patch that fixed PR 35022 collided with the implementation of N2555 (extending variadic template template parameters). On further inspection, that part of this patch (which concerns coerce_template_parameter_pack) was fixing the symptom and not the cause of 35022. Since this patch actually fixed three separate problems, I've committed the fixes for sizeof... and parsing of unnamed non-type template parameter packs to mainline along with the related test cases. I'll take another shot at fixing 35022 separately. The committed patch is below; it's just a subset of the already-approved patch, which removes the changes to coerce_template_parameter_pack. - Doug 2008-03-27 Douglas Gregor <doug.gregor@gmail.com> * pt.c (tsubst_copy) <case SIZEOF_EXPR>: Cope with tsubst_pack_expansion returning a pack expansion, or a TREE_VEC ending in a pack expansion, both of which can occur when substituting into a nested template. (tsubst_copy_and_build) <case SIZEOF_EXPR>: When we're instantiating the sizeof...(X) form, make tsubst_copy do the work. * parser.c (cp_parser_template_parameter): Deal with unnamed non-type template parameter packs identified by pack expansions in the parameter type. 2008-03-27 Douglas Gregor <doug.gregor@gmail.com> * g++.dg/cpp0x/variadic91.C: New.
Attachment:
vt-fixes.patch
Description: Binary data
Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
---|---|---|
Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |