from scratch, add Berkeley copyright; change to be included by a.out.h
[unix-history] / usr / src / include / setjmp.h
index 33cc015..d2c2f13 100644 (file)
@@ -1,9 +1,20 @@
-/*     setjmp.h        4.2     89/10/16        */
+/*-
+ * Copyright (c) 1990 The Regents of the University of California.
+ * All rights reserved.
+ *
+ * %sccs.include.redist.c%
+ *
+ *     @(#)setjmp.h    5.4 (Berkeley) %G%
+ */
 
 
-#ifndef _SETJMP_
-#define _SETJMP_
+#ifndef _SETJMP_H_
+#define _SETJMP_H_
 
 
-#ifdef vax
+#ifdef hp300
+#define _JBLEN 17
+#endif
+
+#ifdef i386
 #define _JBLEN 10
 #endif
 
 #define _JBLEN 10
 #endif
 
 #define _JBLEN 10
 #endif
 
 #define _JBLEN 10
 #endif
 
-#ifdef hp300
-#define _JBLEN 17
+#ifdef vax
+#define _JBLEN 10
 #endif
 
 #endif
 
+#ifndef _ANSI_SOURCE
+/*
+ * WARNING: sigsetjmp() isn't supported yet, this is a placeholder.
+ */
+typedef int sigjmp_buf[_JBLEN + 1];
+#endif /* not ANSI */
+
 typedef int jmp_buf[_JBLEN];
 
 typedef int jmp_buf[_JBLEN];
 
-#ifdef __STDC__
-extern int setjmp(jmp_buf), _setjmp(jmp_buf);
-extern void longjmp(jmp_buf, int), _longjmp(jmp_buf, int);
-#else  /* !__STDC__ */
-extern int setjmp(), _setjmp();
-extern int longjmp(), _longjmp();
-#endif /* !__STDC__ */
+#include <sys/cdefs.h>
 
 
-#endif
+__BEGIN_DECLS
+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 */
+__END_DECLS
+
+#endif /* !_SETJMP_H_ */