jmp_buf
The jmp_buf type is defined in setjmp.h. It specifies the buffer used by the setjmp and longjmp routines to save and restore the program environment. The jmp_buf type is defined as:
#define _BJLEN 9
typedef char jmp_buf[_JBLEN];
and is used as shown in the following example:
#include <setjmp.h>
jmp_buf env; /* jump environment (must be global) */
bit error_flag;
void trigger (void) {
.
.
.
/* processing code here */
.
.
.
if (error_flag != 0) {
longjmp (env, 1); /* return 1 to setjmp */
}
.
.
.
}
Note
- The value of _JBLEN depends on the memory model selected.