34 lines · plain
1// RUN: %clang_cc1 -fsyntax-only -verify %s2 3// PR32344 5@protocol NSCopying @end6@interface NSObject @end7 8void f1(NSObject *o)9{10 o.foo; // expected-error{{property 'foo' not found on object of type 'NSObject *'}}11}12 13void f2(id<NSCopying> o)14{15 o.foo; // expected-error{{property 'foo' not found on object of type 'id<NSCopying>'}}16}17 18void f3(id o)19{20 o.foo; // expected-error{{property 'foo' not found on object of type 'id'}}21}22 23@class SomeOtherClass; // expected-note {{forward declaration of class here}}24 25@interface MyClass {26 SomeOtherClass *someOtherObject;27}28@end29 30void foo(MyClass *myObject) {31 myObject.someOtherObject.someProperty = 0; // expected-error {{property 'someOtherObject' refers to an incomplete Objective-C class 'SomeOtherClass' (with no @interface available)}}32}33 34