PR c++/85765 - SFINAE and non-type default template arg.
[official-gcc.git] / gcc / testsuite / g++.dg / cpp0x / initlist-defarg1.C
blob45eb2d5e1f03d17509b4af87a8405937357a15ec
1 // PR c++/56614
2 // { dg-require-effective-target c++11 }
4 #include <initializer_list>
6 namespace std
8     template<typename T>
9         struct allocator
10         { };
12     template<typename T, typename Alloc = std::allocator<T> >
13         struct vector
14         {
15             vector(std::initializer_list<T>, const Alloc& = Alloc()) { }
16         };
19 void func() { }
21 enum E { ee };
23 struct C
25     template<typename T>
26         C(T, std::vector<E> = std::vector<E>({ ee }))
27         { }
30 struct G
32     void gen()
33     {
34         C c(&func);
35     }