blob: e5de24e422b6a7f7d7d78847b05aacc6158e3f56 [file] [log] [blame]
Joe Danielsf7393d22019-02-04 23:32:55 +00001// RUN: %clang_cc1 -verify -Wno-objc-root-class -fsyntax-only %s
2
3__attribute__((objc_nonlazy_class))
4@interface A
5@end
6@implementation A
7@end
8
9__attribute__((objc_nonlazy_class)) int X; // expected-error {{'objc_nonlazy_class' attribute only applies to Objective-C interfaces}}
10
11__attribute__((objc_nonlazy_class()))
12@interface B
13@end
14@implementation B
15@end
16
17__attribute__((objc_nonlazy_class("foo"))) // expected-error{{'objc_nonlazy_class' attribute takes no arguments}}
18@interface C
19@end
20@implementation C
21@end
22
23__attribute__((objc_nonlazy_class)) // expected-error {{'objc_nonlazy_class' attribute only applies to Objective-C interfaces}}
24@protocol B
25@end
26
27__attribute__((objc_nonlazy_class)) // expected-error {{'objc_nonlazy_class' attribute only applies to Objective-C interfaces}}
28void foo();
29
30@interface E
31@end
Erik Pilkingtonc5a05832019-04-11 17:55:30 +000032// expected-error@+1 {{'objc_nonlazy_class' attribute only applies to Objective-C interfaces}}
Joe Danielsf7393d22019-02-04 23:32:55 +000033__attribute__((objc_nonlazy_class))
Erik Pilkingtonc5a05832019-04-11 17:55:30 +000034@implementation E
Joe Danielsf7393d22019-02-04 23:32:55 +000035@end