[clang] Handle __declspec() attributes in using
[llvm-project.git] / clang / test / SemaObjC / property-missing.m
blob3ebf0a81159c5bcaa72ea8e2e1ff8928ccd06288
1 // RUN: %clang_cc1 -fsyntax-only -verify %s
3 // PR3234
5 @protocol NSCopying @end
6 @interface NSObject @end
8 void f1(NSObject *o)
10   o.foo; // expected-error{{property 'foo' not found on object of type 'NSObject *'}}
13 void f2(id<NSCopying> o)
15   o.foo; // expected-error{{property 'foo' not found on object of type 'id<NSCopying>'}}
18 void f3(id o)
20   o.foo; // expected-error{{property 'foo' not found on object of type 'id'}}
23 // rdar://8851803
24 @class SomeOtherClass; // expected-note {{forward declaration of class here}}
26 @interface MyClass {
27     SomeOtherClass *someOtherObject;
29 @end
31 void foo(MyClass *myObject) {
32         myObject.someOtherObject.someProperty = 0; // expected-error {{property 'someOtherObject' refers to an incomplete Objective-C class 'SomeOtherClass' (with no @interface available)}}