xref: /original-bsd/include/setjmp.h (revision 7f22226e)
1 /*-
2  * Copyright (c) 1990 The Regents of the University of California.
3  * All rights reserved.
4  *
5  * %sccs.include.redist.c%
6  *
7  *	@(#)setjmp.h	5.4 (Berkeley) 02/22/91
8  */
9 
10 #ifndef _SETJMP_H_
11 #define _SETJMP_H_
12 
13 #ifdef hp300
14 #define _JBLEN	17
15 #endif
16 
17 #ifdef i386
18 #define _JBLEN	10
19 #endif
20 
21 #ifdef tahoe
22 #define _JBLEN	10
23 #endif
24 
25 #ifdef vax
26 #define _JBLEN	10
27 #endif
28 
29 #ifndef _ANSI_SOURCE
30 /*
31  * WARNING: sigsetjmp() isn't supported yet, this is a placeholder.
32  */
33 typedef int sigjmp_buf[_JBLEN + 1];
34 #endif /* not ANSI */
35 
36 typedef int jmp_buf[_JBLEN];
37 
38 #include <sys/cdefs.h>
39 
40 __BEGIN_DECLS
41 int	setjmp __P((jmp_buf));
42 void	longjmp __P((jmp_buf, int));
43 
44 #ifndef _ANSI_SOURCE
45 /*
46  * WARNING: sigsetjmp() isn't supported yet, this is a placeholder.
47  */
48 int	sigsetjmp __P((sigjmp_buf, int));
49 void	siglongjmp __P((sigjmp_buf, int));
50 #endif /* not ANSI */
51 
52 #if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE)
53 int	_setjmp __P((jmp_buf));
54 void	_longjmp __P((jmp_buf, int));
55 void	longjmperror __P((void));
56 #endif /* neither ANSI nor POSIX */
57 __END_DECLS
58 
59 #endif /* !_SETJMP_H_ */
60