1*67e74705SXin Li// RUN: rm -rf %t 2*67e74705SXin Li// RUN: %clang_cc1 -objcmt-migrate-readwrite-property -objcmt-migrate-readonly-property -mt-migrate-directory %t %s -x objective-c -fobjc-runtime-has-weak -fobjc-arc -triple x86_64-apple-darwin11 3*67e74705SXin Li// RUN: c-arcmt-test -mt-migrate-directory %t | arcmt-test -verify-transformed-files %s.result 4*67e74705SXin Li// RUN: %clang_cc1 -triple x86_64-apple-darwin10 -fsyntax-only -x objective-c -fobjc-runtime-has-weak -fobjc-arc %s.result 5*67e74705SXin Li// rdar://15300059 6*67e74705SXin Li 7*67e74705SXin Li 8*67e74705SXin Li#define __NSi_7_0 introduced=7.0 9*67e74705SXin Li#define __NSi_6_0 introduced=6.0 10*67e74705SXin Li 11*67e74705SXin Li#define CF_AVAILABLE(_mac, _ios) __attribute__((availability(ios,__NSi_##_ios))) 12*67e74705SXin Li#define CF_AVAILABLE_MAC(_mac) __attribute__((availability(macosx,__NSi_##_mac))) 13*67e74705SXin Li#define CF_AVAILABLE_IOS(_ios) __attribute__((availability(macosx,unavailable))) 14*67e74705SXin Li 15*67e74705SXin Li#define NS_AVAILABLE(_mac, _ios) CF_AVAILABLE(_mac, _ios) 16*67e74705SXin Li#define NS_AVAILABLE_MAC(_mac) CF_AVAILABLE_MAC(_mac) 17*67e74705SXin Li#define NS_AVAILABLE_IOS(_ios) CF_AVAILABLE_IOS(_ios) 18*67e74705SXin Li 19*67e74705SXin Li#define UNAVAILABLE __attribute__((unavailable("not available in automatic reference counting mode"))) 20*67e74705SXin Li 21*67e74705SXin Li@interface MKMapItem 22*67e74705SXin Li@property (nonatomic, strong) MKMapItem *source NS_AVAILABLE(10_9, 6_0); 23*67e74705SXin Li- (void)setSource:(MKMapItem *)source NS_AVAILABLE(10_9, 7_0); 24*67e74705SXin Li 25*67e74705SXin Li@property (nonatomic, strong) MKMapItem *dest NS_AVAILABLE(10_9, 6_0); 26*67e74705SXin Li 27*67e74705SXin Li@property (nonatomic, strong) MKMapItem *final; 28*67e74705SXin Li 29*67e74705SXin Li@property (nonatomic, strong) MKMapItem *total NS_AVAILABLE(10_9, 6_0); 30*67e74705SXin Li- (void)setTotal:(MKMapItem *)source; 31*67e74705SXin Li 32*67e74705SXin Li- (MKMapItem *)comp NS_AVAILABLE(10_9, 6_0); 33*67e74705SXin Li- (void)setComp:(MKMapItem *)source UNAVAILABLE; 34*67e74705SXin Li 35*67e74705SXin Li@property (nonatomic, strong) MKMapItem *tally UNAVAILABLE NS_AVAILABLE(10_9, 6_0); 36*67e74705SXin Li 37*67e74705SXin Li- (MKMapItem *)itally NS_AVAILABLE(10_9, 6_0); 38*67e74705SXin Li- (void)setItally:(MKMapItem *)source UNAVAILABLE NS_AVAILABLE(10_9, 6_0); 39*67e74705SXin Li 40*67e74705SXin Li- (MKMapItem *)normal UNAVAILABLE; 41*67e74705SXin Li- (void)setNormal:(MKMapItem *)source UNAVAILABLE NS_AVAILABLE(10_9, 6_0); 42*67e74705SXin Li@end 43*67e74705SXin Li 44