diff options
author | Zachary Turner <zturner@google.com> | 2017-11-20 21:41:36 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2017-11-20 21:41:36 +0000 |
commit | 8b6ef88e7eb618dea0160eaddecf901eb28bc2e1 (patch) | |
tree | bd11371e1f6546d50915f368950551b7a024bff5 /debuginfo-tests/tests/block_var.m | |
parent | 5c774b9235d5d898171c48ed71912d7761aa491e (diff) | |
download | bcm5719-llvm-8b6ef88e7eb618dea0160eaddecf901eb28bc2e1.tar.gz bcm5719-llvm-8b6ef88e7eb618dea0160eaddecf901eb28bc2e1.zip |
Resubmit "Refactor debuginfo-tests" again.
This was reverted due to the tests being run twice on some
build bots. Each run had a slightly different configuration
due to the way in which it was being invoked. This fixes
the problem (albeit in a somewhat hacky way). Hopefully in
the future we can get rid of the workflow of running
debuginfo-tests as part of clang, and then this hack can
go away.
llvm-svn: 318697
Diffstat (limited to 'debuginfo-tests/tests/block_var.m')
-rw-r--r-- | debuginfo-tests/tests/block_var.m | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/debuginfo-tests/tests/block_var.m b/debuginfo-tests/tests/block_var.m new file mode 100644 index 00000000000..32862172c57 --- /dev/null +++ b/debuginfo-tests/tests/block_var.m @@ -0,0 +1,32 @@ +// 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 + +// DEBUGGER: break 24 +// DEBUGGER: r +// DEBUGGER: p result +// CHECK: ${{[0-9]}} = 42 + +void doBlock(void (^block)(void)) +{ + block(); +} + +int I(int n) +{ + __block int result; + int i = 2; + doBlock(^{ + result = n; + }); + return result + i; /* Check value of 'result' */ +} + + +int main (int argc, const char * argv[]) { + return I(42); +} + + |