aboutsummaryrefslogtreecommitdiffstats
path: root/gcc-4.9/gcc/testsuite/g++.dg/cpp0x/variadic8.C
blob: e2d7fa7a7a51d882d5a5e9beade7682ad0a0a253 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// { dg-do compile { target c++11 } }
template<typename... Args>
struct tuple_base {
  static const int value = 0;
};

template<>
struct tuple_base<int*>
{
  static const int value = 1;
};

template<typename T>
struct tuple_base<T*>
{
  static const int value = 2;
};

template<typename... Args>
struct tuple_of_pointers : tuple_base<Args*...> { };

int a1[tuple_of_pointers<int>::value == 1? 1 : -1];
int a2[tuple_of_pointers<float>::value == 2? 1 : -1];