aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libtcc.c2
-rw-r--r--tccpp.c7
2 files changed, 3 insertions, 6 deletions
diff --git a/libtcc.c b/libtcc.c
index a39bd5f..12ee171 100644
--- a/libtcc.c
+++ b/libtcc.c
@@ -753,7 +753,7 @@ static void error1(TCCState *s1, int is_warning, const char *fmt, va_list ap)
(*pf)->filename, (*pf)->line_num);
if (f->line_num > 0) {
strcat_printf(buf, sizeof(buf), "%s:%d: ",
- f->filename, f->line_num);
+ f->filename, f->line_num - !!(tok_flags & TOK_FLAG_BOL));
} else {
strcat_printf(buf, sizeof(buf), "%s: ",
f->filename);
diff --git a/tccpp.c b/tccpp.c
index 60f807b..024f9de 100644
--- a/tccpp.c
+++ b/tccpp.c
@@ -1262,11 +1262,8 @@ ST_INLN void define_push(int v, int macro_type, TokenString *str, Sym *first_arg
s->next = first_arg;
table_ident[v - TOK_IDENT]->sym_define = s;
- if (o && !macro_is_equal(o->d, s->d)) {
- file->line_num--;
- tcc_warning("%s redefined", get_tok_str(v, NULL));
- file->line_num++;
- }
+ if (o && !macro_is_equal(o->d, s->d))
+ tcc_warning("%s redefined", get_tok_str(v, NULL));
}
/* undefined a define symbol. Its name is just set to zero */