1*4f2ecc61SArgyrios Kyrtzidis// RUN: rm -rf %t 2*4f2ecc61SArgyrios Kyrtzidis// RUN: %clang_cc1 -objcmt-migrate-designated-init %s -triple x86_64-apple-darwin11 -fobjc-arc -migrate -o %t.remap 3*4f2ecc61SArgyrios Kyrtzidis// RUN: c-arcmt-test %t.remap | arcmt-test -verify-transformed-files %s.result 4*4f2ecc61SArgyrios Kyrtzidis// RUN: %clang_cc1 -triple x86_64-apple-darwin11 -fsyntax-only -x objective-c -fobjc-arc %s.result 5*4f2ecc61SArgyrios Kyrtzidis 6*4f2ecc61SArgyrios Kyrtzidis#define NS_DESIGNATED_INITIALIZER __attribute__((objc_designated_initializer)) 7*4f2ecc61SArgyrios Kyrtzidis 8*4f2ecc61SArgyrios Kyrtzidis@class NSString; 9*4f2ecc61SArgyrios Kyrtzidis 10*4f2ecc61SArgyrios Kyrtzidis@interface B1 11*4f2ecc61SArgyrios Kyrtzidis-(id)init; 12*4f2ecc61SArgyrios Kyrtzidis@end 13*4f2ecc61SArgyrios Kyrtzidis 14*4f2ecc61SArgyrios Kyrtzidis@interface S1 : B1 15*4f2ecc61SArgyrios Kyrtzidis-(id)initWithFoo:(NSString*)foo; 16*4f2ecc61SArgyrios Kyrtzidis@end 17*4f2ecc61SArgyrios Kyrtzidis 18*4f2ecc61SArgyrios Kyrtzidis@implementation S1 19*4f2ecc61SArgyrios Kyrtzidis-(id)initWithFoo:(NSString*)foo 20*4f2ecc61SArgyrios Kyrtzidis{ 21*4f2ecc61SArgyrios Kyrtzidis self = [super init]; 22*4f2ecc61SArgyrios Kyrtzidis if (self) { 23*4f2ecc61SArgyrios Kyrtzidis } 24*4f2ecc61SArgyrios Kyrtzidis return self; 25*4f2ecc61SArgyrios Kyrtzidis} 26*4f2ecc61SArgyrios Kyrtzidis@end 27*4f2ecc61SArgyrios Kyrtzidis 28*4f2ecc61SArgyrios Kyrtzidis@interface B2 29*4f2ecc61SArgyrios Kyrtzidis-(id)init NS_DESIGNATED_INITIALIZER; 30*4f2ecc61SArgyrios Kyrtzidis@end 31*4f2ecc61SArgyrios Kyrtzidis 32*4f2ecc61SArgyrios Kyrtzidis@interface S2 : B2 33*4f2ecc61SArgyrios Kyrtzidis-(id)init; 34*4f2ecc61SArgyrios Kyrtzidis@end 35*4f2ecc61SArgyrios Kyrtzidis 36*4f2ecc61SArgyrios Kyrtzidis@implementation S2 37*4f2ecc61SArgyrios Kyrtzidis-(id)init 38*4f2ecc61SArgyrios Kyrtzidis{ 39*4f2ecc61SArgyrios Kyrtzidis self = [super init]; 40*4f2ecc61SArgyrios Kyrtzidis if (self) { 41*4f2ecc61SArgyrios Kyrtzidis } 42*4f2ecc61SArgyrios Kyrtzidis return self; 43*4f2ecc61SArgyrios Kyrtzidis} 44*4f2ecc61SArgyrios Kyrtzidis@end 45