|
|
1.1 root 1: /*-
2: * Copyright (c) 1990 The Regents of the University of California.
3: * All rights reserved.
4: *
5: * Redistribution and use in source and binary forms are permitted
6: * provided that: (1) source distributions retain this entire copyright
7: * notice and comment, and (2) distributions including binaries display
8: * the following acknowledgement: ``This product includes software
9: * developed by the University of California, Berkeley and its contributors''
10: * in the documentation or other materials provided with the distribution
11: * and in all advertising materials mentioning features or use of this
12: * software. Neither the name of the University nor the names of its
13: * contributors may be used to endorse or promote products derived
14: * from this software without specific prior written permission.
15: * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR
16: * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED
17: * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
18: *
19: * @(#)setjmp.h 5.2 (Berkeley) 5/29/90
20: */
21:
22: #ifndef _SETJMP_
23: #define _SETJMP_
24:
25: #ifdef hp300
26: #define _JBLEN 17
27: #endif
28:
29: #ifdef i386
30: #define _JBLEN 10
31: #endif
32:
33: #ifdef tahoe
34: #define _JBLEN 10
35: #endif
36:
37: #ifdef vax
38: #define _JBLEN 10
39: #endif
40:
41: /*
42: * sigsetjmp/siglongjmp use the first int to decide if the
43: * signal mask was saved or not.
44: */
45: typedef int sigjmp_buf[_JBLEN + 1];
46:
47: #ifndef _POSIX_SOURCE
48: typedef int jmp_buf[_JBLEN];
49: #endif
50:
51: #if __STDC__ || c_plusplus
52: int sigsetjmp(sigjmp_buf, int);
53: void siglongjmp(sigjmp_buf, int);
54: #ifndef _POSIX_SOURCE
55: extern int setjmp(jmp_buf);
56: extern int _setjmp(jmp_buf);
57: extern void longjmp(jmp_buf, int);
58: extern void _longjmp(jmp_buf, int);
59: #endif
60: #else
61: int sigsetjmp();
62: void siglongjmp();
63: #ifndef _POSIX_SOURCE
64: extern int setjmp();
65: extern int _setjmp();
66: extern void longjmp();
67: extern void _longjmp();
68: #endif
69: #endif
70: #endif
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.