diff options
author | Zachary Turner <zturner@google.com> | 2017-11-21 01:20:28 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2017-11-21 01:20:28 +0000 |
commit | 79708b54f2c1043e28d8d2fb46bb9b416b4806d6 (patch) | |
tree | e414f95fa9e059450522acb02aeb5934a051b5e1 /debuginfo-tests/blocks.m | |
parent | f874bd67d810814f16cf1142ad00314f6dae332c (diff) | |
download | bcm5719-llvm-79708b54f2c1043e28d8d2fb46bb9b416b4806d6.tar.gz bcm5719-llvm-79708b54f2c1043e28d8d2fb46bb9b416b4806d6.zip |
Re-revert "Refactor debuginfo-tests."
This is still breaking greendragon.
At this point I give up until someone can fix the greendragon
bots, and I will probably abandon this effort in favor of using
a private github repository.
llvm-svn: 318722
Diffstat (limited to 'debuginfo-tests/blocks.m')
-rw-r--r-- | debuginfo-tests/blocks.m | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/debuginfo-tests/blocks.m b/debuginfo-tests/blocks.m new file mode 100644 index 00000000000..8e5a2121320 --- /dev/null +++ b/debuginfo-tests/blocks.m @@ -0,0 +1,43 @@ +// RUN: %clang %target_itanium_abi_host_triple -O0 -g %s -c -o %t.o +// RUN: %clang %target_itanium_abi_host_triple %t.o -o %t.out -framework Foundation +// RUN: %test_debuginfo %s %t.out + +// REQUIRES: system-darwin +// Radar 9279956 + +// DEBUGGER: break 31 +// DEBUGGER: r +// DEBUGGER: p m2 +// CHECK: ${{[0-9]}} = 1 +// DEBUGGER: p dbTransaction +// CHECK: ${{[0-9]}} = 0 +// DEBUGGER: p master +// CHECK: ${{[0-9]}} = 0 + +#include <Cocoa/Cocoa.h> + +extern void foo(void(^)(void)); + +@interface A:NSObject @end +@implementation A +- (void) helper { + int master = 0; + __block int m2 = 0; + __block int dbTransaction = 0; + int (^x)(void) = ^(void) { (void) self; + (void) master; + (void) dbTransaction; + m2++; + return m2; + }; + master = x(); +} +@end + +void foo(void(^x)(void)) {} + +int main() { + A *a = [A alloc]; + [a helper]; + return 0; +} |