home *** CD-ROM | disk | FTP | other *** search
- #ifndef PMCKPT_H
- #define PMCKPT_H
-
- extern void ckpt_stack_restore();
- extern void ckpt_data_restore();
- extern void ckpt_heap_restore();
- extern void ckpt_save();
- extern void ckpt_increment();
- extern void ckpt_schedule();
- extern void ckpt_init();
- extern void ckpt_set();
- extern char *ckpt_restore;
- extern int ckpt_point;
-
- #define CKPT_HEAD ckpt_failure
- #define CKPT_SPOT ckpt_failure
-
- #define main ckpt_main
-
- #define CKPT_VAR1 static char CKPT_head; char CKPT_mark;
- #define CKPT_VAR4 static char *CKPT_pos; {
-
- #define CKPT_POINT CKPT_pos = &CKPT_HEAD; if (ckpt_point) { char CKPT_duh; ckpt_save(&CKPT_HEAD,&CKPT_duh); ckpt_point = 0; }
-
- #define CKPT_TOP1 if (ckpt_restore) { char CKPT_duh; ckpt_increment(&CKPT_mark,&CKPT_duh); goto CKPT_final; CKPT_spot: ckpt_stack_restore(); ckpt_restore = (char *) 0;
- #define CKPT_TOP4 } else { CKPT_POINT }
-
- #define CKPT_1(foo) { static char foo; if (0) {
- #define CKPT_4(bar) bar: if (CKPT_pos != &CKPT_HEAD) goto CKPT_SPOT;
- #define CKPT_7 if (ckpt_restore == &CKPT_HEAD) { ckpt_stack_restore(); ckpt_restore = (char *) 0; } } CKPT_POINT }
-
- #define CKPT_BOT1 } if (0) { CKPT_final: goto CKPT_SPOT; }
-
- #endif PMCKPT_H
-