struct symrec { char *name; /* name of symbol */ int type; /* type of symbol: VAR, FUN1, FUN2 */ union { double var; /* value of a VAR */ double (*funPtr)(); /* value of a FUN1, FUN2 */ } value; struct symrec *next; /* link field */ }; typedef struct symrec symrec; #define LENGTH 50 extern symrec *sym_table; void init_table (); symrec *putsym (char *, int); symrec *getsym (char *); int yylex();