// RUN: %clang_cc1 -x objective-c++ -fblocks -triple x86_64-apple-darwin %s // rdar://8979379 @interface A @end @interface B : A @end void f(int (^bl)(B* b)); // Test1 void g() { f(^(A* a) { return 0; }); } // Test2 void g1() { int (^bl)(B* b) = ^(A* a) { return 0; }; } // Test3 @protocol NSObject; void bar(id(^)(void)); void foo(id (^objectCreationBlock)(void)) { return bar(objectCreationBlock); }