diff --git a/libtcc.c b/libtcc.c
index 721eaed8..d7615824 100644
--- a/libtcc.c
+++ b/libtcc.c
@@ -581,7 +581,7 @@ static void error1(TCCState *s1, int is_warning, const char *fmt, va_list ap)
             strcat_printf(buf, sizeof(buf), "In file included from %s:%d:\n",
                 (*pf)->filename, (*pf)->line_num);
         if (line_num > 0) {
-            if(tok == TOK_LINEFEED)
+            if(tok == TOK_LINEFEED || (tok == CH_EOF && line_num > 1))
                 line_num--;
             strcat_printf(buf, sizeof(buf), "%s:%d: ",
                 f->filename, line_num);