brintos

brintos / llvm-project-archived public Read only

0
0
Text · 2.8 KiB · 31707d2 Raw
117 lines · plain
1// RUN: %clang_cc1 %s -fsyntax-only -Wobjc-property-implementation -Watomic-property-with-user-defined-accessor -Wunused 2> %t.err2// RUN: FileCheck -input-file=%t.err %s3 4@interface I5@end6 7@interface I(cat)8@property id prop1;9@property id prop2;10@property id prop3;11@end12 13@implementation I(cat)14@end15 16// CHECK: warning: property 'prop1' requires method17// CHECK: warning: property 'prop2' requires method18// CHECK: warning: property 'prop3' requires method19 20@interface I221@property int prop1;22@property int prop2;23@property int prop3;24@end25 26@implementation I227@synthesize prop1, prop2, prop3;28-(int) prop1 { return 0; }29-(int) prop2 { return 0; }30-(int) prop3 { return 0; }31@end32 33// CHECK: warning: writable atomic property 'prop1'34// CHECK: warning: writable atomic property 'prop2'35// CHECK: warning: writable atomic property 'prop3'36 37void test_unused() {38  // Add enough variables to exceed the small storage of Scope::DeclSetTy.39  int v1;40  int v2;41  int v3;42  int v4;43  int v5;44  int v6;45  int v7;46  int v8;47  int v9;48  int v10;49  int v11;50  int v12;51  int v13;52  int v14;53  int v15;54  int v16;55  int v17;56  int v18;57  int v19;58  int v20;59  int v21;60  int v22;61  int v23;62  int v24;63  int v25;64  int v26;65  int v27;66  int v28;67  int v29;68  int v30;69  int v31;70  int v32;71  int v33;72  int v34;73  int v35;74  int v36;75  int v37;76  int v38;77}78 79// CHECK: warning: unused variable 'v1'80// CHECK: warning: unused variable 'v2'81// CHECK: warning: unused variable 'v3'82// CHECK: warning: unused variable 'v4'83// CHECK: warning: unused variable 'v5'84// CHECK: warning: unused variable 'v6'85// CHECK: warning: unused variable 'v7'86// CHECK: warning: unused variable 'v8'87// CHECK: warning: unused variable 'v9'88// CHECK: warning: unused variable 'v10'89// CHECK: warning: unused variable 'v11'90// CHECK: warning: unused variable 'v12'91// CHECK: warning: unused variable 'v13'92// CHECK: warning: unused variable 'v14'93// CHECK: warning: unused variable 'v15'94// CHECK: warning: unused variable 'v16'95// CHECK: warning: unused variable 'v17'96// CHECK: warning: unused variable 'v18'97// CHECK: warning: unused variable 'v19'98// CHECK: warning: unused variable 'v20'99// CHECK: warning: unused variable 'v21'100// CHECK: warning: unused variable 'v22'101// CHECK: warning: unused variable 'v23'102// CHECK: warning: unused variable 'v24'103// CHECK: warning: unused variable 'v25'104// CHECK: warning: unused variable 'v26'105// CHECK: warning: unused variable 'v27'106// CHECK: warning: unused variable 'v28'107// CHECK: warning: unused variable 'v29'108// CHECK: warning: unused variable 'v30'109// CHECK: warning: unused variable 'v31'110// CHECK: warning: unused variable 'v32'111// CHECK: warning: unused variable 'v33'112// CHECK: warning: unused variable 'v34'113// CHECK: warning: unused variable 'v35'114// CHECK: warning: unused variable 'v36'115// CHECK: warning: unused variable 'v37'116// CHECK: warning: unused variable 'v38'117