invalid-objc-decls-1.m   [plain text]


// 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;
}