summaryrefslogtreecommitdiff
path: root/gcc/testsuite/g++.dg/template/memtmpl3.C
blob: 583155ea760a10135098814318517c1c25effb06 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
// PR c++/33239

struct null_type;

template<typename T1, typename T2>
struct tuple_impl
{
  template<typename U>
  struct append
  {
    typedef tuple_impl<U, null_type> type;
  };

  int data;
};

template<typename T1>
class tuple
: public tuple_impl<T1, null_type>::template append<T1>::type
{
  using tuple_impl<T1, null_type>::template append<T1>::type::data;
};

tuple<int>  my_tuple;