add a testcase for recursion through blocks pointers, rdar://6676764.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@66965 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/test/CodeGenObjC/blocks.m b/test/CodeGenObjC/blocks.m
new file mode 100644
index 0000000..c32419e
--- /dev/null
+++ b/test/CodeGenObjC/blocks.m
@@ -0,0 +1,17 @@
+// RUN: clang -emit-llvm -fblocks -S -o - %s
+// rdar://6676764
+
+struct S {
+  void (^F)(struct S*);
+} P;
+
+
+@interface T
+
+  - (int)foo: (T (^)(T*)) x;
+@end
+
+void foo(T *P) {
+ [P foo: 0];
+}
+