Home | History | Annotate | Download | only in SemaCXX

Lines Matching refs:abstract

13 static_assert(!__is_abstract(IncompleteUnion), "unions are never abstract");
24 static_assert(__is_abstract(D), "D inherits from an abstract class");
30 static_assert(!__is_abstract(E), "E inherits from an abstract class but implements f");
32 C *d = new C; // expected-error {{allocating an object of abstract class type 'C'}}
34 C c; // expected-error {{variable type 'C' is an abstract class}}
35 void t1(C c); // expected-error {{parameter type 'C' is an abstract class}}
36 void t2(C); // expected-error {{parameter type 'C' is an abstract class}}
39 C c; // expected-error {{field type 'C' is an abstract class}}
45 C(); // expected-error {{allocating an object of abstract class type 'C'}}
46 t3(C()); // expected-error {{allocating an object of abstract class type 'C'}}
49 C e1[2]; // expected-error {{array of abstract class type 'C'}}
50 C (*e2)[2]; // expected-error {{array of abstract class type 'C'}}
51 C (**e3)[2]; // expected-error {{array of abstract class type 'C'}}
53 void t4(C c[2]); // expected-error {{array of abstract class type 'C'}}
55 void t5(void (*)(C)); // expected-error {{parameter type 'C' is an abstract class}}
57 typedef void (*Func)(C); // expected-error {{parameter type 'C' is an abstract class}}
61 F a() { while (1) {} } // expected-error {{return type 'F' is an abstract class}}
64 void f(F c); // expected-error {{parameter type 'F' is an abstract class}}
68 void u(F c); // expected-error {{parameter type 'F' is an abstract class}}
77 class Abstract;
79 void t7(Abstract a);
82 void h(Abstract a);
86 void h(Abstract a);
89 class Abstract {
201 void g(X1 parm7); // expected-error {{parameter type 'test2::X1' is an abstract class}}
202 void g(X1 parm8[2]); // expected-error {{array of abstract class type 'test2::X1'}}
208 void g(X2 parm10); // expected-error {{parameter type 'X2<N>' is an abstract class}}
209 void g(X2 parm11[2]); // expected-error {{array of abstract class type 'X2<N>'}}
216 virtual void abstract() = 0;
220 virtual void abstract() = 0;
225 static C x; // expected-error {{abstract class}}
226 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
230 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
231 static D x; // expected-error {{abstract class}}
237 A x; // expected-error {{abstract class}}
238 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
242 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
243 B x; // expected-error {{abstract class}}
247 static C x; // expected-error {{abstract class}}
248 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
252 virtual void abstract() = 0; // expected-note {{unimplemented pure virtual method}}
253 static D x; // expected-error {{abstract class}}
259 const A &a = 0; // expected-error {{abstract class}}
260 void f(const A &a = 0); // expected-error {{abstract class}}
261 void g() { f(0); } // expected-error {{abstract class}}
284 foo(C(99)); // expected-error {{allocating an object of abstract class type 'pr12658::C'}}
311 RedundantInit() : A(0) {} // expected-warning {{initializer for virtual base class 'pr16659::A' of abstract class 'RedundantInit' will never be used}}