blob: b73d3e952e138698db34dcf098e411fd2fd6c4fa [file] [log] [blame]
Fariborz Jahanian9e0393d2012-02-04 19:06:06 +00001// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc -fobjc-fragile-abi %s -o %t-rw.cpp
NAKAMURA Takumi9ff009f2012-05-01 10:52:06 +00002// RUN: %clang_cc1 -fsyntax-only -Wno-address-of-temporary -D"SEL=void*" -U__declspec -D"__declspec(X)=" %t-rw.cpp
Fariborz Jahaniandf407c32012-04-25 20:48:00 +00003// RUN: %clang_cc1 -x objective-c++ -Wno-return-type -fblocks -fms-extensions -rewrite-objc %s -o %t-rw-modern.cpp
NAKAMURA Takumi9ff009f2012-05-01 10:52:06 +00004// RUN: %clang_cc1 -fsyntax-only -Werror -Wno-address-of-temporary -D"SEL=void*" -U__declspec -D"__declspec(X)=" %t-rw-modern.cpp
Fariborz Jahanian1d35b162010-02-22 20:48:10 +00005// radar 7669784
Fariborz Jahanian1d35b162010-02-22 20:48:10 +00006
7typedef void * id;
8void *sel_registerName(const char *);
9
10@interface NSMutableString
11- (NSMutableString *)string;
12@end
13
14@interface Z
15@end
16
17@implementation Z
18
19- (void)x {
20 id numbers;
21 int i, numbersCount = 42;
22 __attribute__((__blocks__(byref))) int blockSum = 0;
23 void (^add)(id n, int idx, char *stop) = ^(id n, int idx, char *stop) { };
24 [numbers enumerateObjectsUsingBlock:add];
25 NSMutableString *forwardAppend = [NSMutableString string];
26 __attribute__((__blocks__(byref))) NSMutableString *blockAppend = [NSMutableString string];
27}
28
29@end
30