* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / decltype64.C
blob46d18594c949a5d0d90a021999714b80ae3414dd
1 // PR c++/53401
2 // { dg-do compile { target c++11 } }
4 template<int I>
5 struct index
6 {};
8 constexpr int recursive_impl(index<0u>)
10   return 0;
13 template<int N>
14 constexpr auto recursive_impl(index<N>)
15   -> decltype(recursive_impl(index<N - 1>()))  // { dg-error "depth" }
17   return recursive_impl(index<N - 1>());
20 template<int N>
21 constexpr auto recursive()
22   -> decltype(recursive_impl(index<N>()))
24   return recursive_impl(index<N>());
27 void f(int i)
29   recursive<1>();   // { dg-message "from here" }
32 // { dg-prune-output "compilation terminated" }