diff options
author | Ed Schouten <ed@FreeBSD.org> | 2010-10-21 19:02:02 +0000 |
---|---|---|
committer | Ed Schouten <ed@FreeBSD.org> | 2010-10-21 19:02:02 +0000 |
commit | 217b614317dad692116a3a06fe94ea8f61a59edb (patch) | |
tree | 4cfe2eee875a959effca0881df14c079103447fa /BlocksRuntime/tests/rdar6414583.c | |
download | src-217b614317dad692116a3a06fe94ea8f61a59edb.tar.gz src-217b614317dad692116a3a06fe94ea8f61a59edb.zip |
Import compiler-rt r117047.vendor/compiler-rt/compiler-rt-r117047
Notes
Notes:
svn path=/vendor/compiler-rt/dist/; revision=214152
svn path=/vendor/compiler-rt/compiler-rt-r117047/; revision=214153; tag=vendor/compiler-rt/compiler-rt-r117047
Diffstat (limited to 'BlocksRuntime/tests/rdar6414583.c')
-rw-r--r-- | BlocksRuntime/tests/rdar6414583.c | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/BlocksRuntime/tests/rdar6414583.c b/BlocksRuntime/tests/rdar6414583.c new file mode 100644 index 000000000000..2ada04d3ddcc --- /dev/null +++ b/BlocksRuntime/tests/rdar6414583.c @@ -0,0 +1,31 @@ +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. + +// CONFIG rdar://6414583 + +// a smaller case of byrefcopyint + +#include <Block.h> +#include <dispatch/dispatch.h> +#include <stdio.h> + +int main(int argc, char *argv[]) { + __block int c = 1; + + //printf("&c = %p - c = %i\n", &c, c); + + int i; + for(i =0; i < 2; i++) { + dispatch_block_t block = Block_copy(^{ c = i; }); + + block(); +// printf("%i: &c = %p - c = %i\n", i, &c, c); + + Block_release(block); + } + printf("%s: success\n", argv[0]); + return 0; +} |