* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / deduce.C
blob380ca280b3062e0cff2f678b84e45754bc600903
1 // { dg-do compile { target c++11 } }
2 template<typename T, typename U> struct same_type;
3 template<typename T> struct same_type<T, T> {};
5 int lval_int;
6 int rval_int();
7 int const lval_const_int=0;
8 int const&& rval_const_int();
10 template <typename T> void deduce_lval_int(T && t)
12   same_type<T, int &>();
15 template <typename T> void deduce_rval_int(T && t)
17   same_type<T, int>();
20 template <typename T> void deduce_lval_const_int(T && t)
22   same_type<T, const int &>();
25 template <typename T> void deduce_rval_const_int(T && t)
27   same_type<T, const int>();
30 void f()
32   deduce_lval_int(lval_int);
33   deduce_rval_int(rval_int());
34   deduce_lval_const_int(lval_const_int);
35   deduce_rval_const_int(rval_const_int());