#include "cc.h" #include #define PTR_HASH(p) (uintptr)(p) #define PTR_EQUAL(p1, p2) ((uintptr)(p1) == (uintptr)(p2)) #if 0 struct SymTab { MAP_STRUCT_BODY(string, Sym*); }; Sym* getsym(SymTab *tab, string key) { MAP_GET(tab, key, PTR_HASH, PTR_EQUAL, nil); } static int moresymtab(SymTab *tab, int n) { MAP_GROW(tab, string, Sym*, n, PTR_HASH); } int putsym(SymTab *tab, Sym *sym, error *err) { MAP_PUT(tab, sym->name, sym, PTR_HASH, PTR_EQUAL, moresymtab, err); } #endif