• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 //
2 //                     The LLVM Compiler Infrastructure
3 //
4 // This file is distributed under the University of Illinois Open Source
5 // License. See LICENSE.TXT for details.
6 
7 //
8 //  byrefaccess.m
9 //  test that byref access to locals is accurate
10 //  testObjects
11 //
12 //  Created by Blaine Garst on 5/13/08.
13 //
14 // CONFIG
15 
16 #include <stdio.h>
17 
18 
19 void callVoidVoid(void (^closure)(void)) {
20     closure();
21 }
22 
main(int argc,char * argv[])23 int main(int argc, char *argv[]) {
24     __block int i = 10;
25 
26     callVoidVoid(^{ ++i; });
27 
28     if (i != 11) {
29         printf("*** %s didn't update i\n", argv[0]);
30         return 1;
31     }
32     printf("%s: success\n", argv[0]);
33     return 0;
34 }
35