annotate clang/test/SemaObjC/opaque-is-access.m @ 150:1d019706d866

LLVM10
author anatofuz
date Thu, 13 Feb 2020 15:10:13 +0900
parents
children c4bab56944e8
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
150
anatofuz
parents:
diff changeset
1 // RUN: %clang -target x86_64-apple-darwin -arch arm64 -mios-version-min=7 -fsyntax-only %s -Xclang -verify
anatofuz
parents:
diff changeset
2 // RUN: %clang -target x86_64-apple-darwin -arch x86_64 -mios-simulator-version-min=7 -fsyntax-only %s -Xclang -verify
anatofuz
parents:
diff changeset
3 // rdar://10709102
anatofuz
parents:
diff changeset
4
anatofuz
parents:
diff changeset
5 typedef struct objc_object {
anatofuz
parents:
diff changeset
6 struct objc_class *isa;
anatofuz
parents:
diff changeset
7 } *id;
anatofuz
parents:
diff changeset
8
anatofuz
parents:
diff changeset
9 @interface NSObject {
anatofuz
parents:
diff changeset
10 struct objc_class *isa;
anatofuz
parents:
diff changeset
11 }
anatofuz
parents:
diff changeset
12 @end
anatofuz
parents:
diff changeset
13 @interface Whatever : NSObject
anatofuz
parents:
diff changeset
14 +self;
anatofuz
parents:
diff changeset
15 @end
anatofuz
parents:
diff changeset
16
anatofuz
parents:
diff changeset
17 static void func() {
anatofuz
parents:
diff changeset
18
anatofuz
parents:
diff changeset
19 id x;
anatofuz
parents:
diff changeset
20
anatofuz
parents:
diff changeset
21 [(*x).isa self]; // expected-error {{direct access to Objective-C's isa is deprecated in favor of object_getClass()}}
anatofuz
parents:
diff changeset
22 [x->isa self]; // expected-error {{direct access to Objective-C's isa is deprecated in favor of object_getClass()}}
anatofuz
parents:
diff changeset
23 }