version 1.24, 1996/07/25 09:25:15
|
version 1.26, 1996/10/13 19:56:21
|
Line 21
|
Line 21
|
|
|
#include "config.h" |
#include "config.h" |
#include <limits.h> |
#include <limits.h> |
|
#if defined(NeXT) |
|
# include <libc.h> |
|
#endif /* NeXT */ |
|
|
typedef void *Label; |
typedef void *Label; |
|
|
Line 131 typedef Label *Xt;
|
Line 134 typedef Label *Xt;
|
#define PFA1(cfa) PFA(cfa) |
#define PFA1(cfa) PFA(cfa) |
/* CODE_ADDRESS is the address of the code jumped to through the code field */ |
/* CODE_ADDRESS is the address of the code jumped to through the code field */ |
#define CODE_ADDRESS(cfa) (*(Label *)(cfa)) |
#define CODE_ADDRESS(cfa) (*(Label *)(cfa)) |
/* DOES_CODE is the Forth code does jumps to */ |
/* DOES_CODE is the Forth code does jumps to */ |
#define DOES_CODE(cfa) ({Xt _cfa=(Xt)(cfa); \ |
#define DOES_CODE(cfa) ({Xt _cfa=(Xt)(cfa); \ |
_cfa[0] == symbols[DODOES] ? _cfa[1] : NULL;}) |
_cfa[0] == symbols[DODOES] ? _cfa[1] : NULL;}) |
#define DOES_CODE1(cfa) (cfa[1]) |
#define DOES_CODE1(cfa) (cfa[1]) |