xref: /Universal-ctags/Units/parser-cxx.r/bug-github-pull-972.cpp.d/input.cpp (revision 7a6bc035eb15c6df4997dfc52839d8a87396f204)
1 // Reported by Przemyslaw Szymanski on 02.06.2016
2 
3 template <typename T = void, bool B1 = true> // (1) fail if there are multiple params with default values
4 class A : public T
5 {
6 public:
7     typedef A<T, B1> this_type;
8 
A(int i)9     A(int i ) : m_i(i)
10     {
11     }
12 
create(int i)13     static A create(int i)
14     {
15         return this_type(i); // (2) fail here
16     }
17 
18     static int g_i;
19 private:
20     int m_i;
21 };
22 
23 template <typename T, bool B1>
24 int A<T, B1>::g_i; // (3) fail during parsing static member definition