mirror of
https://github.com/netwide-assembler/nasm.git
synced 2024-12-09 08:51:18 +08:00
BR3028880: Revert to nonfatal, better error message, cleanup
Revert to issuing a nonfatal error (it makes no sense to make it a fatal error, but it probably makes sense for it to be an error instead of a warning, especially since a lot of prior versions would crash and apparently noone noticed.) We might have to revisit this based on user requirements, and/or provide a method for the user to detect an existing environment variable (%ifenv?). Issue a better error message, indicating the nature of the failure. Simplify the code by just updating the string in "p". Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
This commit is contained in:
parent
702df6d6cc
commit
5b00bf4d49
10
preproc.c
10
preproc.c
@ -1182,10 +1182,12 @@ static char *detoken(Token * tlist, bool expand_locals)
|
||||
if (t->type == TOK_PREPROC_ID && t->text[1] == '!') {
|
||||
char *p = getenv(t->text + 2);
|
||||
char *q = t->text;
|
||||
if (p)
|
||||
t->text = nasm_strdup(p);
|
||||
else
|
||||
error(ERR_FATAL, "`%s' is empty", q + 2);
|
||||
if (!p) {
|
||||
error(ERR_NONFATAL | ERR_PASS1,
|
||||
"nonexistent environment variable `%s'", q + 2);
|
||||
p = "";
|
||||
}
|
||||
t->text = nasm_strdup(p);
|
||||
nasm_free(q);
|
||||
}
|
||||
/* Expand local macros here and not during preprocessing */
|
||||
|
Loading…
Reference in New Issue
Block a user