summaryrefslogtreecommitdiffstats
path: root/test/Sema/return.c
diff options
context:
space:
mode:
Diffstat (limited to 'test/Sema/return.c')
-rw-r--r--test/Sema/return.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/test/Sema/return.c b/test/Sema/return.c
index e231e81..7e7c8b7 100644
--- a/test/Sema/return.c
+++ b/test/Sema/return.c
@@ -197,8 +197,14 @@ int test29() {
exit(1);
}
-#include <setjmp.h>
+// Include these declarations here explicitly so we don't depend on system headers.
+typedef struct __jmp_buf_tag{} jmp_buf[1];
+
+extern void longjmp (struct __jmp_buf_tag __env[1], int __val) __attribute__ ((noreturn));
+extern void _longjmp (struct __jmp_buf_tag __env[1], int __val) __attribute__ ((noreturn));
+
jmp_buf test30_j;
+
int test30() {
if (j)
longjmp(test30_j, 1);
OpenPOWER on IntegriCloud