30 lines
512 B
C
30 lines
512 B
C
// RUN: %clang_cc1 -fsyntax-only -verify -fblocks %s
|
|
// expected-no-diagnostics
|
|
|
|
int printf(char const *, ...);
|
|
|
|
struct blockStruct {
|
|
int (^a)(float, int);
|
|
int b;
|
|
};
|
|
|
|
int blockTaker (int (^myBlock)(int), int other_input)
|
|
{
|
|
return 5 * myBlock (other_input);
|
|
}
|
|
|
|
int main (int argc, char **argv)
|
|
{
|
|
int (^blockptr) (int) = ^(int inval) {
|
|
printf ("Inputs: %d, %d.\n", argc, inval);
|
|
return argc * inval;
|
|
};
|
|
|
|
|
|
argc = 10;
|
|
printf ("I got: %d.\n",
|
|
blockTaker (blockptr, 6));
|
|
return 0;
|
|
}
|
|
|