(root)/
gcc-13.2.0/
gcc/
testsuite/
g++.dg/
template/
memtmpl3.C
// 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;