199bc8c72SBenno Rice /* $FreeBSD$ */ 299bc8c72SBenno Rice /* $NetBSD: setjmp.h,v 1.3 1998/09/16 23:51:27 thorpej Exp $ */ 327499504SDavid E. O'Brien 499bc8c72SBenno Rice #ifndef _MACHINE_SETJMP_H_ 599bc8c72SBenno Rice #define _MACHINE_SETJMP_H_ 699bc8c72SBenno Rice 799bc8c72SBenno Rice #define _JBLEN 100 827499504SDavid E. O'Brien 927499504SDavid E. O'Brien /* 1027499504SDavid E. O'Brien * jmp_buf and sigjmp_buf are encapsulated in different structs to force 1127499504SDavid E. O'Brien * compile-time diagnostics for mismatches. The structs are the same 1227499504SDavid E. O'Brien * internally to avoid some run-time errors for mismatches. 1327499504SDavid E. O'Brien */ 1427499504SDavid E. O'Brien #ifndef _ANSI_SOURCE 1599bc8c72SBenno Rice typedef struct _sigjmp_buf { long _sjb[_JBLEN + 1]; } sigjmp_buf[1]; 1699bc8c72SBenno Rice #endif 1727499504SDavid E. O'Brien 1899bc8c72SBenno Rice typedef struct _jmp_buf { long _jb[_JBLEN + 1]; } jmp_buf[1]; 1999bc8c72SBenno Rice 2099bc8c72SBenno Rice #endif /* _MACHINE_SETJMP_H_ */ 21