* pt.c (tsubst_pack_expansion): Use tsubst_expr for template
template parameters.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_7-branch@186531
138bc75d-0d04-0410-961f-
82ee72b054a4
+2012-04-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/50303
+ * pt.c (tsubst_pack_expansion): Use tsubst_expr for template
+ template parameters.
+
2012-04-15 Jason Merrill <jason@redhat.com>
PR c++/52292
}
/* Substitute into the PATTERN with the altered arguments. */
- if (TREE_CODE (t) == EXPR_PACK_EXPANSION)
+ if (!TYPE_P (pattern))
TREE_VEC_ELT (result, i) =
tsubst_expr (pattern, args, complain, in_decl,
/*integral_constant_expression_p=*/false);
+2012-04-16 Jason Merrill <jason@redhat.com>
+
+ PR c++/50303
+ * g++.dg/cpp0x/variadic128.C: New.
+
2012-04-16 Uros Bizjak <ubizjak@gmail.com>
Backport from mainline
--- /dev/null
+// PR c++/50303
+// { dg-do compile { target c++11 } }
+
+template<typename Interface>
+struct A1 {
+};
+
+template<template<class I> class... Actions>
+void g2() {
+ g2<Actions...>();
+}
+
+int main()
+{
+ g2<A1>();
+}