-int sigsetjmp __P((sigjmp_buf, int));
-void siglongjmp __P((sigjmp_buf, int));
-#ifndef _POSIX_SOURCE
-int setjmp __P((jmp_buf));
-int _setjmp __P((jmp_buf));
-void longjmp __P((jmp_buf, int));
-void _longjmp __P((jmp_buf, int));
-#endif
+int setjmp __P((jmp_buf));
+void longjmp __P((jmp_buf, int));
+
+#ifndef _ANSI_SOURCE
+/*
+ * WARNING: sigsetjmp() isn't supported yet, this is a placeholder.
+ */
+int sigsetjmp __P((sigjmp_buf, int));
+void siglongjmp __P((sigjmp_buf, int));
+#endif /* not ANSI */
+
+#if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)
+int _setjmp __P((jmp_buf));
+void _longjmp __P((jmp_buf, int));
+void longjmperror __P((void));
+#endif /* neither ANSI nor POSIX */