diff options
Diffstat (limited to 'test/Sema/builtin-stackaddress.c')
-rw-r--r-- | test/Sema/builtin-stackaddress.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/test/Sema/builtin-stackaddress.c b/test/Sema/builtin-stackaddress.c new file mode 100644 index 0000000..67582a5 --- /dev/null +++ b/test/Sema/builtin-stackaddress.c @@ -0,0 +1,16 @@ +// RUN: clang-cc -fsyntax-only -verify %s +void* a(unsigned x) { +return __builtin_return_address(0); +} + +void b(unsigned x) { +return __builtin_return_address(x); // expected-error{{the level argument for a stack address builtin must be constant}} +} + +void* c(unsigned x) { +return __builtin_frame_address(0); +} + +void d(unsigned x) { +return __builtin_frame_address(x); // expected-error{{the level argument for a stack address builtin must be constant}} +} |