mirror of
https://github.com/frida/tinycc
synced 2025-02-26 20:24:02 +03:00
A preprocessor should Interpret an input line "# NUM FILENAME" as "#line NUM FILENAME"
A cpp from gcc do this. A test case: tcc -E tccasm.c -o tccasm.i tcc -E tccasm.i -o tccasm.ii After a patch the line numbers in tccasm.ii are the same as in tccasm.i
This commit is contained in:
parent
1706d2254b
commit
5e3e321474
7
tccpp.c
7
tccpp.c
@ -1626,7 +1626,12 @@ include_done:
|
||||
case TOK_LINE:
|
||||
next();
|
||||
if (tok != TOK_CINT)
|
||||
tcc_error("#line");
|
||||
tcc_error("A #line format is wrong");
|
||||
case TOK_PPNUM:
|
||||
if (tok != TOK_CINT) {
|
||||
char *p = tokc.cstr->data;
|
||||
tokc.i = strtoul(p, (char **)&p, 10);
|
||||
}
|
||||
file->line_num = tokc.i - 1; /* the line number will be incremented after */
|
||||
next();
|
||||
if (tok != TOK_LINEFEED) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user