2 // The LLVM Compiler Infrastructure
4 // This file is distributed under the University of Illinois Open Source
5 // License. See LICENSE.TXT for details.
11 * Created by Blaine Garst on 12/3/08.
15 // CONFIG rdar://6639533
17 // The compiler is prefetching x->forwarding before evaluting code that recomputes forwarding and so the value goes to a place that is never seen again.
24 int main(int argc
, char* argv
[]) {
26 __block
void (^recursive_copy_block
)(int) = ^(int arg
) { printf("got wrong Block\n"); exit(1); };
29 recursive_copy_block
= Block_copy(^(int i
) {
31 recursive_copy_block(i
- 1);
39 recursive_copy_block(5);
41 printf("%s: Success\n", argv
[0]);