conformance fixes
[libc-test] / src / api / setjmp.c
index afcf164..6b956c7 100644 (file)
@@ -4,14 +4,26 @@ static void f()
 {
 T(jmp_buf)
 {void(*p)(jmp_buf,int) = longjmp;}
+#ifdef setjmp
+{int x = setjmp((jmp_buf){0});}
+#else
 {int(*p)(jmp_buf) = setjmp;}
+#endif
 #ifdef _POSIX_C_SOURCE
 T(sigjmp_buf)
 {void(*p)(sigjmp_buf,int) = siglongjmp;}
+#ifdef sigsetjmp
+{int x = sigsetjmp((sigjmp_buf){0});}
+#else
 {int(*p)(sigjmp_buf,int) = sigsetjmp;}
 #endif
+#endif
 #if defined _XOPEN_SOURCE && defined OBSOLETE
 {void(*p)(jmp_buf,int) = _longjmp;}
+#ifdef _setjmp
+{int x = _setjmp((jmp_buf){0});}
+#else
 {int(*p)(jmp_buf) = _setjmp;}
 #endif
+#endif
 }