Mercurial > hg > CbC > CbC_llvm
view clang/test/Rewriter/rewrite-modern-block.mm @ 180:680fa57a2f20
fix compile errors.
author | Shinji KONO <kono@ie.u-ryukyu.ac.jp> |
---|---|
date | Sat, 30 May 2020 17:44:06 +0900 |
parents | 1d019706d866 |
children |
line wrap: on
line source
// RUN: %clang_cc1 -x objective-c++ -fblocks -fms-extensions -rewrite-objc %s -o %t-rw.cpp // RUN: %clang_cc1 -fsyntax-only -Werror -Wno-address-of-temporary -D"Class=void*" -D"id=void*" -D"SEL=void*" -U__declspec -D"__declspec(X)=" %t-rw.cpp // rdar://11230308 typedef unsigned long size_t; typedef struct { char byte0; char byte1; } CFUUIDBytes; void x(void *); void y() { __block CFUUIDBytes bytes; void (^bar)() = ^{ x(&bytes); }; } // rdar://11236342 int foo() { __block int hello; return hello; } // rdar://7547630 // rewriting multiple __block decls on wintin same decl stmt. void radar7547630() { __block int BI1, BI2; __block float FLOAT1, FT2, FFFFFFFF3, FFFXXX4; __block void (^B)(), (^BB)(); } // rewriting multiple __block decls on wintin same decl stmt // with initializers. int rdar7547630(const char *keybuf, const char *valuebuf) { __block int BI1 = 1, BI2 = 2; double __block BYREFVAR = 1.34, BYREFVAR_NO_INIT, BYREFVAR2 = 1.37; __block const char *keys = keybuf, *values = valuebuf, *novalues; return BI2; } // rdar://11326988 typedef struct _z { int location; int length; } z; z w(int loc, int len); @interface rdar11326988 @end @implementation rdar11326988 - (void)y:(int)options { __attribute__((__blocks__(byref))) z firstRange = w(1, 0); options &= ~(1 | 2); } @end // rdar://18799145 int Test18799145() { return ^(){return 0;}(); }