diff options
Diffstat (limited to 'src/h/rexterns.h')
-rw-r--r-- | src/h/rexterns.h | 196 |
1 files changed, 76 insertions, 120 deletions
diff --git a/src/h/rexterns.h b/src/h/rexterns.h index 804424c..026bdaa 100644 --- a/src/h/rexterns.h +++ b/src/h/rexterns.h @@ -56,133 +56,91 @@ extern struct tend_desc *tend; /* chain of tended descriptors */ /* * Externals that are conditional on features. */ -#ifdef FncTrace - extern struct descrip kywd_ftrc; /* descriptor for &ftrace */ -#endif /* FncTrace */ - #ifdef Polling extern int pollctr; #endif /* Polling */ -#ifdef EventMon - extern char typech[]; - extern word oldsum; - extern struct descrip csetdesc; /* cset descriptor */ - extern struct descrip eventdesc; /* event descriptor */ - extern struct b_iproc mt_llist; - extern struct descrip rzerodesc; /* real descriptor */ - extern struct b_real realzero; /* real zero block */ -#endif /* EventMon */ - /* - * Externals conditional on multithreading. + * Externals that were conditional on multithreading. */ - extern struct region rootstring; - extern struct region rootblock; -#ifndef MultiThread - extern dptr glbl_argp; /* argument pointer */ - extern struct region *curstring; - extern struct region *curblock; - extern struct descrip k_current; /* ¤t */ - extern char *k_errortext; /* value of &errortext */ - extern int have_errval; /* &errorvalue has a legal value */ - extern int k_errornumber; /* value of &errornumber */ - extern int t_errornumber; /* tentative k_errornumber value */ - extern int t_have_val; /* tentative have_errval flag */ - extern struct b_file k_errout; /* value of &errout */ - extern struct b_file k_input; /* value of &input */ - extern struct b_file k_output; /* value of &output */ - extern struct descrip k_errorvalue; /* value of &errorvalue */ - extern struct descrip kywd_err; /* &error */ - extern struct descrip kywd_pos; /* descriptor for &pos */ - extern struct descrip kywd_prog; /* descriptor for &prog */ - extern struct descrip kywd_ran; /* descriptor for &random */ - extern struct descrip k_subject; /* &subject */ - extern struct descrip kywd_trc; /* descriptor for &trace */ - extern struct descrip k_eventcode; /* &eventcode */ - extern struct descrip k_eventsource; /* &eventsource */ - extern struct descrip k_eventvalue; /* &eventvalue */ - extern struct descrip k_main; /* value of &main */ - extern struct descrip t_errorvalue; /* tentative k_errorvalue value */ - extern uword blktotal; /* cumul total of all block allocs */ - extern uword strtotal; /* cumul total of all string allocs */ - extern word coll_tot; /* total number of collections */ - extern word coll_stat; /* collections from static reqests */ - extern word coll_str; /* collections from string requests */ - extern word coll_blk; /* collections from block requests */ - extern dptr globals; /* start of global variables */ - extern dptr eglobals; /* end of global variables */ - extern dptr gnames; /* start of global variable names */ - extern dptr egnames; /* end of global variable names */ - extern dptr estatics; /* end of static variables */ - extern int n_globals; /* number of global variables */ - extern int n_statics; /* number of static variables */ - extern struct b_coexpr *mainhead; /* &main */ -#endif /* MultiThread */ +extern struct region rootstring; +extern struct region rootblock; +extern dptr glbl_argp; /* argument pointer */ +extern struct region *curstring; +extern struct region *curblock; +extern struct descrip k_current; /* ¤t */ +extern char *k_errortext; /* value of &errortext */ +extern int have_errval; /* &errorvalue has a legal value */ +extern int k_errornumber; /* value of &errornumber */ +extern int t_errornumber; /* tentative k_errornumber value */ +extern int t_have_val; /* tentative have_errval flag */ +extern struct b_file k_errout; /* value of &errout */ +extern struct b_file k_input; /* value of &input */ +extern struct b_file k_output; /* value of &output */ +extern struct descrip k_errorvalue; /* value of &errorvalue */ +extern struct descrip kywd_err; /* &error */ +extern struct descrip kywd_pos; /* descriptor for &pos */ +extern struct descrip kywd_prog; /* descriptor for &prog */ +extern struct descrip kywd_ran; /* descriptor for &random */ +extern struct descrip k_subject; /* &subject */ +extern struct descrip kywd_trc; /* descriptor for &trace */ +extern struct descrip k_eventcode; /* &eventcode */ +extern struct descrip k_eventsource; /* &eventsource */ +extern struct descrip k_eventvalue; /* &eventvalue */ +extern struct descrip k_main; /* value of &main */ +extern struct descrip t_errorvalue; /* tentative k_errorvalue value */ +extern uword blktotal; /* cumul total of all block allocs */ +extern uword strtotal; /* cumul total of all string allocs */ +extern word coll_tot; /* total number of collections */ +extern word coll_stat; /* collections from static reqests */ +extern word coll_str; /* collections from string requests */ +extern word coll_blk; /* collections from block requests */ +extern dptr globals; /* start of global variables */ +extern dptr eglobals; /* end of global variables */ +extern dptr gnames; /* start of global variable names */ +extern dptr egnames; /* end of global variable names */ +extern dptr estatics; /* end of static variables */ +extern int n_globals; /* number of global variables */ +extern int n_statics; /* number of static variables */ +extern struct b_coexpr *mainhead; /* &main */ /* - * Externals that differ between compiler and interpreter. + * External declarations that differed for the compiler. */ -#if !COMPILER - /* - * External declarations for the interpreter. - */ - - extern int ixinited; /* iconx has initialized */ - extern inst ipc; /* interpreter program counter */ - extern int ilevel; /* interpreter level */ - extern int ntended; /* number of active tended descriptors*/ - extern struct b_cset k_ascii; /* value of &ascii */ - extern struct b_cset k_cset; /* value of &cset */ - extern struct b_cset k_digits; /* value of &lcase */ - extern struct b_cset k_lcase; /* value of &lcase */ - extern struct b_cset k_letters; /* value of &letters */ - extern struct b_cset k_ucase; /* value of &ucase */ - extern struct descrip tended[]; /* tended descriptors */ - extern struct ef_marker *efp; /* expression frame pointer */ - extern struct gf_marker *gfp; /* generator frame pointer */ - extern struct pf_marker *pfp; /* procedure frame pointer */ - extern word *sp; /* interpreter stack pointer */ - extern word *stack; /* interpreter stack base */ - extern word *stackend; /* end of evaluation stack */ - - extern struct pstrnm pntab[]; - extern int pnsize; - - #ifdef MultiThread - extern struct progstate *curpstate; - extern struct progstate rootpstate; - extern int noMTevents; /* no MT events during GC */ - #else /* MultiThread */ - extern char *code; /* start of icode */ - extern char *ecode; /* end of icode */ - extern dptr statics; /* start of static variables */ - extern char *strcons; /* start of the string constants */ - extern dptr fnames; /* field names */ - extern dptr efnames; /* end of field names */ - extern word *records; - extern int *ftabp; /* field table pointer */ - #ifdef FieldTableCompression - extern word ftabwidth, foffwidth; - extern unsigned char *ftabcp; - extern short *ftabsp; - #endif /* FieldTableCompression */ - extern dptr xargp; - extern word xnargs; - - extern word lastop; - #endif /* MultiThread */ - -#else /* COMPILER */ - - extern struct descrip statics[]; /* array of static variables */ - extern struct b_proc *builtins[]; /* pointers to builtin functions */ - extern int noerrbuf; /* error buffering */ - extern struct p_frame *pfp; /* procedure frame pointer */ - extern struct descrip trashcan; /* dummy descriptor, never read */ - extern int largeints; /* flag: large integers supported */ - -#endif /* COMPILER */ + +extern int ixinited; /* iconx has initialized */ +extern inst ipc; /* interpreter program counter */ +extern int ilevel; /* interpreter level */ +extern int ntended; /* number of active tended descriptors*/ +extern struct b_cset k_ascii; /* value of &ascii */ +extern struct b_cset k_cset; /* value of &cset */ +extern struct b_cset k_digits; /* value of &lcase */ +extern struct b_cset k_lcase; /* value of &lcase */ +extern struct b_cset k_letters; /* value of &letters */ +extern struct b_cset k_ucase; /* value of &ucase */ +extern struct descrip tended[]; /* tended descriptors */ +extern struct ef_marker *efp; /* expression frame pointer */ +extern struct gf_marker *gfp; /* generator frame pointer */ +extern struct pf_marker *pfp; /* procedure frame pointer */ +extern word *sp; /* interpreter stack pointer */ +extern word *stack; /* interpreter stack base */ +extern word *stackend; /* end of evaluation stack */ + +extern struct pstrnm pntab[]; +extern int pnsize; + +extern char *code; /* start of icode */ +extern char *ecode; /* end of icode */ +extern dptr statics; /* start of static variables */ +extern char *strcons; /* start of the string constants */ +extern dptr fnames; /* field names */ +extern dptr efnames; /* end of field names */ +extern word *records; +extern int *ftabp; /* field table pointer */ +extern dptr xargp; +extern word xnargs; + +extern word lastop; /* * graphics @@ -198,7 +156,6 @@ extern struct tend_desc *tend; /* chain of tended descriptors */ extern int win_highwater, canvas_serial, context_serial; extern clock_t starttime; /* start time in milliseconds */ - #ifndef MultiThread extern struct descrip kywd_xwin[]; extern struct descrip lastEventWin; extern int lastEvFWidth, lastEvLeading, lastEvAscent; @@ -208,7 +165,6 @@ extern struct tend_desc *tend; /* chain of tended descriptors */ extern struct descrip amperY; extern struct descrip amperInterval; extern uword xmod_control, xmod_shift, xmod_meta; - #endif /* MultiThread */ #ifdef XWindows extern struct _wdisplay * wdsplys; |