[英]Debugging information in GCC preprocessor output
我正在检查 GCC 生成的预处理输出,我在使用-save-temps
标志生成的.i
文件中看到了很多这样的输出:
# 8 "/usr/include/i386-linux-gnu/gnu/stubs.h" 2 3 4
stubs.h
绝对路径前后的数字是什么意思? 它似乎是由预处理器插入的某种调试信息,并允许编译器发出参考此信息的错误消息。 这些行不会影响程序本身,但每个数字具体是什么?
根据文档,文件名之前的数字是行号。 文件名后面的数字是一个标志,含义如下:
1
表示新文件的开始。2
表示返回到一个文件(在包含另一个文件之后)。3
表示以下文本来自系统头文件,因此应禁止某些警告。4
表示以下文本应被视为包含在隐式 extern "C" 块中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.