// last pass this was defined in...
// a symbol may only be defined once per pass/scope
enum ulas_pass lastdefin;
+ int constant;
};
// holds all currently defned symbols
// define a new symbol
// scope 0 indicates global scope
// if the symbol already exists -1 is returned
-int ulas_symboldef(const char *name, int scope, struct ulas_tok token);
+int ulas_symbolset(const char *name, int scope, struct ulas_tok token);
// tokenisze according to pre-defined rules
// returns the amount of bytes of line that were
return NULL;
}
-int ulas_symboldef(const char *name, int scope, struct ulas_tok token) {
+int ulas_symbolset(const char *name, int scope, struct ulas_tok token) {
int rc = 0;
int resolve_rc = 0;
struct ulas_sym *exisitng = ulas_symbolresolve(name, &resolve_rc);
ulas_asmlst(start, outbuf, towrite);
return 0;
}
+ // ulas_symbolset(ulas.tok.buf, ulas.scope,
line = prev;
} else {
// start over for the next step...