* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / variadic75.C
bloba3aa07063bb7810be1e96c1e633f40bdba7557e2
1 // { dg-do compile { target c++11 } }
3 template<typename...> struct tuple { };
5 template<template<typename T> class Meta, typename... Values>
6 struct apply_all
8   typedef tuple<typename Meta<Values>::type...> type;
9 };
11 template<typename T, typename U>
12 struct is_same {
13   static const bool value = false;
16 template<typename T>
17 struct is_same<T, T> {
18   static const bool value = true;
21 template<typename T>
22 struct add_reference {
23   typedef T& type;
26 template<typename T>
27 struct add_reference<T&> {
28   typedef T& type;
31 static_assert(is_same<apply_all<add_reference, int, int&, float>::type,
32                                 tuple<int&, int&, float&> >::value, 
33               "check apply");