block-pointer-decl.c revision a5728872c7702ddd09537c95bc3cbd20e1f2fb09
1// RUN: %clang_cc1 -fsyntax-only -verify -parse-noop -fblocks %s
2
3struct blockStruct {
4  int (^a)(float, int);
5  int b;
6};
7
8int blockTaker (int (^myBlock)(int), int other_input)
9{
10  return 5 * myBlock (other_input);
11}
12
13int main (int argc, char **argv)
14{
15  int (^blockptr) (int) = ^(int inval) {
16    printf ("Inputs: %d, %d.\n", argc, inval);
17    return argc * inval;
18  };
19
20
21  argc = 10;
22  printf ("I got: %d.\n",
23          blockTaker (blockptr, 6));
24  return 0;
25}
26
27