X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?p=rmac;a=blobdiff_plain;f=symbol.h;h=bd32a5efc114fc8efd2dfa6f2dfea290831f4411;hp=9ce6b175e9b9235624ff7a7c4e63f7709daa2c4b;hb=52cea8604f22cf5281dbc66fcae5fea37d038e0f;hpb=d16b8ea0ee65b2ad901ca6b0624c07e6e4930cc4 diff --git a/symbol.h b/symbol.h index 9ce6b17..bd32a5e 100644 --- a/symbol.h +++ b/symbol.h @@ -3,7 +3,7 @@ // SYMBOL.H - Symbol Handling // Copyright (C) 199x Landon Dyer, 2011 Reboot and Friends // RMAC derived from MADMAC v1.07 Written by Landon Dyer, 1986 -// Source Utilised with the Kind Permission of Landon Dyer +// Source utilised with the kind permission of Landon Dyer // #ifndef __SYMBOL_H__ @@ -33,19 +33,23 @@ SYM char * sname; // * -> Symbol's print-name struct LineList * lineList; // * -> Macro's linked list of lines struct LineList * last; // * -> end of macro linked list + uint32_t uid; // Symbol's unique ID }; -// Globals, externals etc +// Globals, externals, etc. extern int curenv; extern char subttl[]; +extern int eject(void); -// Prototypes +// Exported functions SYM * lookup(char *, int, int); void InitSymbolTable(void); SYM * NewSymbol(char *, int, int); -void sym_decl(SYM *); -int syg_fix(void); +void AddToSymbolDeclarationList(SYM *); +void ForceUndefinedSymbolsGlobal(void); int symtable(void); int sy_assign(char *, char *(*)()); +char * GetSymbolNameByUID(uint32_t); #endif // __SYMBOL_H__ +