diff options
Diffstat (limited to 'test/ARCMT/rewrite-block-var.m')
-rw-r--r-- | test/ARCMT/rewrite-block-var.m | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/test/ARCMT/rewrite-block-var.m b/test/ARCMT/rewrite-block-var.m index e6a8fb72e00a..538f16c25574 100644 --- a/test/ARCMT/rewrite-block-var.m +++ b/test/ARCMT/rewrite-block-var.m @@ -23,3 +23,23 @@ void test2(Foo *p) { x = [p something]; }); } + +void test3(Foo *p) { + __block Foo *x; // __block used as output variable. + bar(^{ + [x something]; + }); + bar(^{ + x = 0; + }); +} + +void test4(Foo *p) { + __block Foo *x = p; // __block used just to break cycle. + bar(^{ + [x something]; + }); + bar(^{ + [x something]; + }); +} |