]> wirehaze git hosting - MS-DOS.git/blob - v4.0/src/TOOLS/BLD/INC/SETJMP.H

wirehaze git hosting

MZ is back!
[MS-DOS.git] / v4.0 / src / TOOLS / BLD / INC / SETJMP.H
1 /***
2 *setjmp.h - definitions/declarations for setjmp/longjmp routines
3 *
4 * Copyright (c) 1985-1988, Microsoft Corporation. All rights reserved.
5 *
6 *Purpose:
7 * This file defines the machine-dependent buffer used by
8 * setjmp/longjmp to save and restore the program state, and
9 * declarations for those routines.
10 * [ANSI/System V]
11 *
12 *******************************************************************************/
13
14
15 #ifndef NO_EXT_KEYS /* extensions enabled */
16 #define _CDECL cdecl
17 #else /* extensions not enabled */
18 #define _CDECL
19 #endif /* NO_EXT_KEYS */
20
21
22 /* define the buffer type for holding the state information */
23
24 #define _JBLEN 9 /* bp, di, si, sp, ret addr, ds */
25
26 #ifndef _JMP_BUF_DEFINED
27 typedef int jmp_buf[_JBLEN];
28 #define _JMP_BUF_DEFINED
29 #endif
30
31
32 /* function prototypes */
33
34 int _CDECL setjmp(jmp_buf);
35 void _CDECL longjmp(jmp_buf, int);