Lines Matching refs:A

14 class A {  class
31 int A::num4 = 44;
33 class E : public A {
38 template <typename T = A::B<int>> void func1();
39 template <typename T = A::C> void func2();
40 template <typename T = class A::D<int>> void func3();
42 template <typename T> A::B<int> func4();
44 template <typename T> A::B<T> func5();
45 template <typename T> class A::C func6();
46 template <typename T> class A::D<int> func7();
48 template <typename T> void func8(class A::B<T>, int x = A::num1);
49 template <typename T> void func9(A::C, A::D<T>, int = A::num3);
52 template <> void func1<A::B<char>>() {} in func1()
53 template <> void func2<class A::D<char>>() { in func2()
54 } template <> void func3<class A::C>() { in func2()
56 …template <> class A::B<int> func4<A::B<char>>() { return {}; } template <> A::B<A::D<int>> func5<A…
59 template <> class A::C func6<A::C>() { return {}; } template <> A::D<int> func7<char>() { in func6()
62 template <> void func8<char>(class A::B<char>, int) {} in func8()
63 template <> void func9<A::B<char>>(A::C, A::D<A::B<char>>, int) {} in func9()
75 template <typename T> A::B<int> E::func4() { return {}; } in func4()
77 template <typename T> A::B<T> E::func5() { return {}; } in func5()
78 template <typename T> A::C E::func6() { return {}; } in func6()
79 template <typename T> A::D<int> E::func7() { return {}; } in func7()
81 template <typename T> void E::func8(A::B<T>, int) {} in func8()
82 template <typename T> void E::func9(A::C, A::D<T>, int) {} in func9()
86 template <> void E::func1<A::B<int>>() {} in func1()
87 template <> void E::func2<class A::C>() {} in func2()
88 template <> void E::func3<class A::D<int>>() { in func3()
89 } template <> class A::B<int> E::func4<A::B<int>>() { in func3()
91 } template <> A::B<A::C> E::func5<A::C>() { in func5()
94 template <> class A::C E::func6<A::D<int>>() { return {}; } template <> A::D<int> E::func7<int>() { in func7()
97 template <> void E::func8<int>(class A::B<int>, int) {} in func8()
98 template <> void E::func9<A::C>(A::C, A::D<A::C>, int) {} in func9()
102 template <> void E::func1<A::B<int>>();
103 template <> void E::func2<class A::C>();
104 template <> void E::func3<class A::D<int>>();
105 template <> class A::B<int> E::func4<A::B<int>>();
106 template <> A::B<A::C> E::func5<A::C>();
107 template <> class A::C E::func6<A::D<int>>();
108 template <> A::D<int> E::func7<int>();
109 template <> void E::func8<int>(class A::B<int>, int);
110 template <> void E::func9<A::C>(A::C, A::D<A::C>, int);
117 template <typename T> class A::C func1();
119 template <typename T> A::B<T> func2();
120 template <typename T> A::D<T> func3();
122 template <typename T> class A::B<int> func4();
125 template <int x = A::num1> void func6();
127 template <int x = A::num2> void func7();
129 template <typename T> void func8(int x = sizeof(A::C));
131 template <typename T> void func9(int x = A::num1);
134 template <typename T> void func10(class A::B<T>, int x = A::num2);
136 template <typename T> void func11(class A::C, A::D<T>, int = A::num3);
142 template <typename T = A::C> void func16();
144 template <typename T = A::B<int>> void func17();
146 template <typename T> auto func18() -> A::C;
154 template <typename T> A::C func1() { A::C x; } in func1()
157 template <typename T> A::B<T> func2() { A::D<A::C> x; } in func2()
158 template <typename T> A::D<T> func3() { A::D<int> x; } in func3()
161 template <typename T> class A::B<int> func4() { A::B<A::C> x; } in func4()
167 A::B<A::D<A::C>> x; in func5()
169 A::B<int> x2; in func5()
174 template <typename T> void func10(A::B<T>, int x) {} in func10()
176 template <typename T> void func11(A::C, A::D<T>, int) {} in func11()
184 template <typename T> auto func18() -> A::C { in func18()
186 return A::C{}; in func18()
196 template <> A::C func1<A::C>();
197 template <> A::B<A::C> func2<A::C>();
198 template <> A::D<A::C> func3<A::C>();
199 template <> class A::B<int> func4<A::C>();
200 template <> void func5<A::C>();
201 template <> void func5<A::B<int>>();
202 template <> void func5<A::D<A::C>>();
204 template <> void func8<A::C>(int x);
205 template <> void func9<decltype(A::num1)>(int);
206 template <> void func10<A::D<int>>(A::B<A::D<int>>, int);
207 template <> void func11<A::C>(A::C, A::D<A::C>, int);
208 template <> void func12<class A::B<char>>() { in func12()
209 } template <> void func13<A::num1>() { in func12()
211 template <> void func14<A::B<int>, A::num2>() {} in func14()
212 template <> void func15<A::D>() {} in func15()
213 template <> void func16<class A::B<char>>() { in func16()
214 } template <> void func17<A::B<class A::C>>() { in func16()
216 template <> auto func18<int>() -> class A::C;
217 template <> A::B<int> func19<class A::B<int>>();
223 template void func10<A::C>(A::B<A::C>, decltype(A::num1));
224 template void func11<A::B<int>>(A::C, A::D<A::B<int>>, decltype(A::num2));
225 template void func12<A::C>();
226 template void func13<A::num2>();
227 template void func13<A::num3>();
228 template void func14<A::C, A::num1>();
229 template void func15<A::B>();
231 template auto func18<char>() -> A::C;
232 template class A::C func19<A::C>();
242 template class StealClass<&A::num4>;