141439Sbostic /*- 261068Sbostic * Copyright (c) 1990, 1993 361068Sbostic * The Regents of the University of California. All rights reserved. 4*65762Sbostic * (c) UNIX System Laboratories, Inc. 5*65762Sbostic * All or some portions of this file are derived from material licensed 6*65762Sbostic * to the University of California by American Telephone and Telegraph 7*65762Sbostic * Co. or Unix System Laboratories, Inc. and are reproduced herein with 8*65762Sbostic * the permission of UNIX System Laboratories, Inc. 941439Sbostic * 1041439Sbostic * %sccs.include.redist.c% 1141439Sbostic * 12*65762Sbostic * @(#)setjmp.h 8.2 (Berkeley) 01/21/94 1341439Sbostic */ 1412192Ssam 1546281Sbostic #ifndef _SETJMP_H_ 1646281Sbostic #define _SETJMP_H_ 1739310Smckusick 1854091Smckusick #if defined(hp300) || defined(__hp300__) || defined(luna68k) || defined(__luna68k__) 1942395Sbostic #define _JBLEN 17 2042395Sbostic #endif 2142395Sbostic 2250029Sbostic #if defined(i386) || defined(__i386__) 2339310Smckusick #define _JBLEN 10 2439310Smckusick #endif 2539310Smckusick 2651027Sralph #if defined(mips) || defined(__mips__) 2751027Sralph #define _JBLEN 83 2851027Sralph #endif 2951027Sralph 3054518Storek #if defined(sparc) || defined(__sparc__) 3154518Storek #define _JBLEN 10 3254518Storek #endif 3354518Storek 3450029Sbostic #if defined(tahoe) || defined(__tahoe__) 3539310Smckusick #define _JBLEN 10 3639310Smckusick #endif 3739310Smckusick 3850029Sbostic #if defined(vax) || defined(__vax__) 3942395Sbostic #define _JBLEN 10 4039310Smckusick #endif 4139310Smckusick 4246516Sdonn #ifndef _ANSI_SOURCE 4342395Sbostic /* 4446516Sdonn * WARNING: sigsetjmp() isn't supported yet, this is a placeholder. 4542395Sbostic */ 4642395Sbostic typedef int sigjmp_buf[_JBLEN + 1]; 4746516Sdonn #endif /* not ANSI */ 4842395Sbostic 4939310Smckusick typedef int jmp_buf[_JBLEN]; 5039310Smckusick 5146281Sbostic #include <sys/cdefs.h> 5246281Sbostic 5346281Sbostic __BEGIN_DECLS 5446516Sdonn int setjmp __P((jmp_buf)); 5546516Sdonn void longjmp __P((jmp_buf, int)); 5646516Sdonn 5746516Sdonn #ifndef _ANSI_SOURCE 5846516Sdonn /* 5946516Sdonn * WARNING: sigsetjmp() isn't supported yet, this is a placeholder. 6046516Sdonn */ 6146516Sdonn int sigsetjmp __P((sigjmp_buf, int)); 6246516Sdonn void siglongjmp __P((sigjmp_buf, int)); 6346516Sdonn #endif /* not ANSI */ 6446516Sdonn 6546516Sdonn #if !defined(_ANSI_SOURCE) && !defined(_POSIX_SOURCE) 6646516Sdonn int _setjmp __P((jmp_buf)); 6746516Sdonn void _longjmp __P((jmp_buf, int)); 6846516Sdonn void longjmperror __P((void)); 6946516Sdonn #endif /* neither ANSI nor POSIX */ 7046281Sbostic __END_DECLS 7146281Sbostic 7246281Sbostic #endif /* !_SETJMP_H_ */ 73