Fix passing constant label to BANK() causing an error

This commit is contained in:
ISSOtm
2020-03-07 18:02:06 +01:00
parent cb62076f8c
commit f6f25296a0
3 changed files with 11 additions and 7 deletions

View File

@@ -165,7 +165,7 @@ void rpn_BankSelf(struct Expression *expr)
}
}
void rpn_BankSymbol(struct Expression *expr, char *tzSym)
void rpn_BankSymbol(struct Expression *expr, char const *tzSym)
{
struct sSymbol const *sym = sym_FindSymbol(tzSym);
@@ -176,7 +176,7 @@ void rpn_BankSymbol(struct Expression *expr, char *tzSym)
}
rpn_Init(expr);
if (sym && sym_IsConstant(sym)) {
if (sym && !sym_IsLabel(sym)) {
yyerror("BANK argument must be a relocatable identifier");
} else {
sym_Ref(tzSym);
@@ -198,7 +198,7 @@ void rpn_BankSymbol(struct Expression *expr, char *tzSym)
}
}
void rpn_BankSection(struct Expression *expr, char *tzSectionName)
void rpn_BankSection(struct Expression *expr, char const *tzSectionName)
{
rpn_Init(expr);