| // RUN: clang-cc -fsyntax-only -verify %s |
| |
| @interface Super @end |
| Super s1; // expected-error{{interface type cannot be statically allocated}} |
| |
| extern Super e1; // expected-error{{interface type cannot be statically allocated}} |
| |
| struct S { |
| Super s1; // expected-error{{interface type cannot be statically allocated}} |
| }; |
| |
| @protocol P1 @end |
| |
| @interface INTF |
| { |
| Super ivar1; // expected-error{{interface type cannot be statically allocated}} |
| } |
| @end |
| |
| struct whatever { |
| Super objField; // expected-error{{interface type cannot be statically allocated}} |
| }; |
| |
| @interface MyIntf |
| { |
| Super<P1> ivar1; // expected-error{{interface type cannot be statically allocated}} |
| } |
| @end |
| |
| Super foo( // expected-error{{interface interface type 'Super' cannot be returned by value}} |
| Super parm1) { // expected-error{{interface interface type 'Super' cannot be passed by value}} |
| Super p1; // expected-error{{interface type cannot be statically allocated}} |
| return p1; |
| } |