如何将gcc预处理器(cc1.exe)输出更改为以下格式:
#line 1 "path/to/file.c"
目前,我正在使用这种格式:
# 1 "path/to/file.c"
它还指出here输出是#line
指令,但我得到的输出格式不同。我需要使用参数选项吗?
答案 0 :(得分:0)
最简单的答案,只需编写一个脚本来处理gcc预处理器生成的文件,以满足您的要求。
# 1
替换为#line 1
,命名为myscript
。myscript
。 gcc
,将其放在您当地的路径中。答案 1 :(得分:0)
根据GCC docs,
源文件名和行号信息由表格
的行传达# linenum filename flags
这些被称为线性标记。它们根据需要插入到输出中(但从不在字符串或字符常量内)。它们表示以下行起源于 filename 中的文件 filename 。
您引用的源代码是关于预处理器输入,而不是输出。 (GCC也接受上述格式作为输入,但它不可互操作。)