1// RUN: %clang_cc1 -verify -fobjc-disable-direct-methods-for-testing %s 2 3// expected-no-diagnostics 4 5#define DIRECT __attribute__((objc_direct)) 6#define DIRECT_MEMBERS __attribute__((objc_direct_members)) 7 8__attribute__((objc_root_class)) 9@interface X 10-(void)direct_method DIRECT; 11@end 12 13@implementation X 14-(void)direct_method DIRECT {} 15@end 16 17__attribute__((objc_root_class)) 18DIRECT_MEMBERS 19@interface Y 20-(void)direct_method2; 21@end 22 23@implementation Y 24-(void)direct_method2 {} 25@end 26 27__attribute__((objc_root_class)) 28@interface Z 29@property (direct) int direct_property; 30@end 31 32@implementation Z @end 33