1 // Header for PCH test blocks.c 2 3 int call_block(int (^bl)(int x, int y), int a, int b) { 4 return bl(a, b); 5 } 6 7 int add(int a, int b) { 8 return call_block(^(int x, int y) { return x + y; }, a, b); 9 } 10 11 int scaled_add(int a, int b, int s) { 12 __block int scale = s; 13 return call_block(^(int x, int y) { return x*scale + y; }, a, b); 14 } 15