re PR c++/51908 ([C++11] ICE in cp_parser_abort_tentative_parse with decltype and...
[gcc.git] / gcc / testsuite / g++.dg / cpp0x / decltype54.C
1 // PR c++/51908
2 // { dg-do compile { target c++11 } }
3
4 struct foo1
5 {
6 template <typename Ret, typename... Args>
7 operator decltype(static_cast<Ret (*)(Args...)>(nullptr)) () const;
8 };
9
10 struct foo2
11 {
12 template <typename Ret, typename... Args>
13 operator decltype(static_cast<Ret (*)(Args... args)>(nullptr)) () const;
14 };
15
16 struct foo3
17 {
18 template <typename Ret, typename Arg>
19 operator decltype(static_cast<Ret (*)(Arg)>(nullptr)) () const;
20 };
21
22 struct foo4
23 {
24 template <typename Ret, typename Arg>
25 operator decltype(static_cast<Ret (*)(Arg arg)>(nullptr)) () const;
26 };