/* APPLE LOCAL file radar 6396238 */ /* { dg-do run { target *-*-darwin[1-2][0-9]* } } */ /* { dg-options "-mmacosx-version-min=10.6 -Wall" { target *-*-darwin* } } */ /* { dg-skip-if "" { powerpc*-*-darwin* } { "-m64" } { "" } } */ #include <stdio.h> typedef void (^P)(void); static P p = ^{ printf("inside block\n"); }; static int count; extern void abort(void); void * _NSConcreteGlobalBlock; P mkblock(void) { printf("outside block\n"); ++count; return p; } int main(void) { mkblock()(); if (count != 1) abort(); return 0; }