aboutsummaryrefslogtreecommitdiff
path: root/semantics.h
diff options
context:
space:
mode:
Diffstat (limited to 'semantics.h')
-rw-r--r--semantics.h11
1 files changed, 4 insertions, 7 deletions
diff --git a/semantics.h b/semantics.h
index b3cadaa..df6eeaf 100644
--- a/semantics.h
+++ b/semantics.h
@@ -37,7 +37,10 @@ struct CType {
} type;
const char *name;
union {
- CTable_t fields; /* for a struct or union */
+ struct {
+ CTable_t fields; /* for a struct or union */
+ CVar_t flist;
+ } st;
CType_t ref; /* for a pointer */
struct {
CType_t elem;
@@ -73,17 +76,11 @@ struct CTNode {
typedef struct CTable {
CTNode *head[MAX_TABLE_SIZE];
Hashfunc_t hfunc;
-#ifdef CIBIC_DEBUG
Printfunc_t pfunc;
-#endif
} CTable;
-#ifdef CIBIC_DEBUG
CTable_t ctable_create(Hashfunc_t hfunc, Printfunc_t pfunc);
-#else
-CTable_t ctable_create(Hashfunc_t hfunc);
-#endif
void ctable_destroy(CTable_t ct);
void *ctable_lookup(CTable_t ct, const char *key);
int ctable_insert(CTable_t ct, const char *key, void *val, int lvl);