PR c++/85553
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / variadic-ttp3.C
blobb1bd7a4e20895fe9d3e4b8a6e694fc2fed61d525
1 // Test that passing a non-variadic template to a variadic TTP works
2 // with explicit template arguments in a function call..
3 // { dg-do compile { target c++11 } }
5 template<template<typename> class Property, typename Type>
6 bool test_property(typename Property<Type>::value_type value);
8 template<template<typename...> class Property,
9          typename Type1, typename... Types>
10 bool test_property(typename Property<Type1, Types...>::value_type value);
12 template <class T>
13 struct X
15   using type = X;
16   using value_type = int;
17   static const value_type value = 42;
20 int main()
22   test_property<X,int>(42);     // { dg-error "ambiguous" }