summaryrefslogtreecommitdiff
path: root/masm/parse.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--masm/parse.c26
1 files changed, 0 insertions, 26 deletions
diff --git a/masm/parse.c b/masm/parse.c
index 9f8ddb1..452045b 100644
--- a/masm/parse.c
+++ b/masm/parse.c
@@ -110,29 +110,6 @@ static int parse_label(struct parser *parser,
return M_ERROR;
strcpy(expr->text, token.text);
- struct symbol *ref;
- if (symtbl_find(&parser->sym_tbl, &ref, token.text) == M_SUCCESS) {
- if (ref->flag == SYM_GLOBAL && ref->sec == NULL) {
- ref->sec = parser->sec_tbl.current;
- ref->index = parser->sec_tbl.current->count;
- return M_SUCCESS;
- }
- ERROR_POS(token, "redefined symbol '%s'", token.text);
- return M_ERROR;
- }
-
- struct symbol symbol;
- symbol = (struct symbol) {
- .name = "",
- .sec = parser->sec_tbl.current,
- .index = parser->sec_tbl.current->count,
- .flag = SYM_LOCAL,
- };
- strcpy(symbol.name, token.text);
-
- if (symtbl_push(&parser->sym_tbl, symbol))
- return M_ERROR;
-
return M_SUCCESS;
}
@@ -184,8 +161,6 @@ int parser_init(struct lexer *lexer, struct parser *parser)
{
parser->lexer = lexer;
parser->peek.type = TOK_EOF;
- if (symtbl_init(&parser->sym_tbl))
- return M_ERROR;
if (sectbl_init(&parser->sec_tbl))
return M_ERROR;
if (reftbl_init(&parser->ref_tbl))
@@ -196,7 +171,6 @@ int parser_init(struct lexer *lexer, struct parser *parser)
void parser_free(struct parser *parser)
{
- symtbl_free(&parser->sym_tbl);
sectbl_free(&parser->sec_tbl);
reftbl_free(&parser->ref_tbl);
}