* decl.c (make_typename_type): s/parameters/arguments/.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / sfinae26.C
blobf55e1d8c727fe55f83f08a34224dcaa9bf9025db
1 // PR c++/49229
2 // { dg-do compile { target c++11 } }
4 extern void* enabler;
6 template<bool, class = void>
7 struct enable_if {};
9 template<class T>
10 struct enable_if<true, T> {
11   typedef T type;
14 template<class... Bn>
15 struct and_;
17 template<class B1>
18 struct and_<B1> : B1 {};
20 template<class, class>
21 struct is_same {
22   static constexpr bool value = false;
25 template<class T>
26 struct is_same<T, T> {
27   static constexpr bool value = true;
30 template<class... T>
31 struct S {
32   template<class... U,
33     typename enable_if<and_<is_same<T, U>...>::value>::type*& = enabler // { dg-error "no type" }
34   >
35   S(U...){}
38 S<bool> s(0);                   // { dg-error "no match" }