/* APPLE LOCAL file radar 5957801 */
/* Cannot convert void * to block pointer in c++ mode */
/* { dg-options "-fblocks" } */
/* { dg-do compile } */

typedef int (^myblock)(void);
void *_NSConcreteStackBlock;

myblock foo(int i, myblock b) {
  if (!i ? (void *)0 : b)
    return (myblock)(i ? b : (void *)0);
}

int main () {
  myblock b = ^{ return 1; };
  if (foo (1, b))
    return 0;
  return 1;
}
