Merge pull request #418 from dbrotz/fix-symbol-macro-arg-0

Print useful error message when '\0' is used in a symbol name
This commit is contained in:
Eldred Habert
2019-09-09 19:37:44 +02:00
committed by GitHub
3 changed files with 5 additions and 2 deletions

View File

@@ -198,10 +198,10 @@ char *AppendMacroArg(char whichArg, char *dest, size_t *destIndex)
if (whichArg == '@') if (whichArg == '@')
marg = sym_FindMacroArg(-1); marg = sym_FindMacroArg(-1);
else if (whichArg >= '0' && whichArg <= '9') else if (whichArg >= '1' && whichArg <= '9')
marg = sym_FindMacroArg(whichArg - '0'); marg = sym_FindMacroArg(whichArg - '0');
else else
fatalerror("Malformed ID"); fatalerror("Invalid macro argument '\\%c' in symbol", whichArg);
if (!marg) if (!marg)
fatalerror("Macro argument '\\%c' not defined", whichArg); fatalerror("Macro argument '\\%c' not defined", whichArg);

View File

@@ -0,0 +1 @@
x\0

View File

@@ -0,0 +1,2 @@
ERROR: symbol-invalid-macro-arg.asm(1):
Invalid macro argument '\0' in symbol