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.6 (Berkeley) 09/06/91 8 */ 9 10 #ifndef _SETJMP_H_ 11 #define _SETJMP_H_ 12 13 #if defined(hp300) || defined(__hp300__) 14 #define _JBLEN 17 15 #endif 16 17 #if defined(i386) || defined(__i386__) 18 #define _JBLEN 10 19 #endif 20 21 #if defined(mips) || defined(__mips__) 22 #define _JBLEN 83 23 #endif 24 25 #if defined(tahoe) || defined(__tahoe__) 26 #define _JBLEN 10 27 #endif 28 29 #if defined(vax) || defined(__vax__) 30 #define _JBLEN 10 31 #endif 32 33 #ifndef _ANSI_SOURCE 34 /* 35 * WARNING: sigsetjmp() isn't supported yet, this is a placeholder. 36 */ 37 typedef int sigjmp_buf[_JBLEN + 1]; 38 #endif /* not ANSI */ 39 40 typedef int jmp_buf[_JBLEN]; 41 42 #include <sys/cdefs.h> 43 44 __BEGIN_DECLS 45 int setjmp __P((jmp_buf)); 46 void longjmp __P((jmp_buf, int)); 47 48 #ifndef _ANSI_SOURCE 49 /* 50 * WARNING: sigsetjmp() isn't supported yet, this is a placeholder. 51 */ 52 int sigsetjmp __P((sigjmp_buf, int)); 53 void siglongjmp __P((sigjmp_buf, int)); 54 #endif /* not ANSI */ 55 56 #if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE) 57 int _setjmp __P((jmp_buf)); 58 void _longjmp __P((jmp_buf, int)); 59 void longjmperror __P((void)); 60 #endif /* neither ANSI nor POSIX */ 61 __END_DECLS 62 63 #endif /* !_SETJMP_H_ */ 64