#ifndef _SETJMP_H
#define _SETJMP_H

#ifndef _COMPILER_H
#include <compiler.h>
#endif

#ifdef __cplusplus
extern "C" {
#endif

#ifdef __TURBOC__

#  ifdef __68881__
typedef char jmp_buf[12 * 4 + 5 * 12];
#  else
typedef char *jmp_buf[12];
#  endif

#else /* __TURBOC__ */

typedef char *jmp_buf[14];

#endif /* __TURBOC__ */

__EXTERN int	setjmp	__PROTO((jmp_buf));
__EXTERN void	longjmp	__PROTO((jmp_buf, int));

#ifndef __MINT__
# ifndef __cplusplus
__EXTERN int catch __PROTO((jmp_buf id, int (*fn )(void )));
__EXTERN void throw __PROTO((jmp_buf id, int rv));
# endif
#endif

#ifdef __cplusplus
}
#endif

#endif /* _SETJMP_H */
