Commit 7e61b3d4 by Jason Merrill Committed by Jason Merrill

PR c++/61022 - error with variadic template template parm

	* pt.c (convert_template_argument): Keep the TYPE_PACK_EXPANSION.

From-SVN: r249756
parent d778c637
2017-06-28 Jason Merrill <jason@redhat.com>
PR c++/61022 - error with variadic template template parm
* pt.c (convert_template_argument): Keep the TYPE_PACK_EXPANSION.
PR c++/72801 - ICE with variadic partial specialization
* pt.c (unify_pack_expansion): Use PACK_EXPANSION_EXTRA_ARGS.
......
......@@ -7695,7 +7695,7 @@ convert_template_argument (tree parm,
if (TREE_CODE (TREE_TYPE (arg)) == UNBOUND_CLASS_TEMPLATE)
/* The number of argument required is not known yet.
Just accept it for now. */
val = TREE_TYPE (arg);
val = orig_arg;
else
{
tree parmparm = DECL_INNERMOST_TEMPLATE_PARMS (parm);
......
// PR c++/69111
// { dg-do compile { target c++11 } }
template <template <typename> class ...>
struct template_list {};
template <typename T>
struct A
{};
template <typename>
struct B
{
template <typename T>
using type = A<T>;
};
template <typename ... Types>
struct C
{
using type = template_list<B<Types>::template type...>;
};
int main()
{
return 0;
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment