GCC样式行指令的格式

GCC样式行指令的格式,gcc,c-preprocessor,Gcc,C Preprocessor,GCC说他们是这样的: #line "myfile.cpp" 123 # 1 "/a/include/boost/multi_array/extent_range.hpp" 1 # 16 "/a/include/boost/multi_array/extent_range.hpp" # 1 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 1 3 # 58 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility

GCC说他们是这样的:

#line "myfile.cpp" 123
# 1 "/a/include/boost/multi_array/extent_range.hpp" 1
# 16 "/a/include/boost/multi_array/extent_range.hpp"
# 1 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 1 3
# 58 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3

# 59 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3
# 68 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3
# 1 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/x86_64-redhat-linux/bits/c++config.h" 1 3
# 194 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/x86_64-redhat-linux/bits/c++config.h" 3
但当我用g++5.1检查输出时,它们实际上是这样的:

#line "myfile.cpp" 123
# 1 "/a/include/boost/multi_array/extent_range.hpp" 1
# 16 "/a/include/boost/multi_array/extent_range.hpp"
# 1 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 1 3
# 58 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3

# 59 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3
# 68 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/utility" 3
# 1 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/x86_64-redhat-linux/bits/c++config.h" 1 3
# 194 "/pool2/ap/gcc/5.1.0/include/c++/5.1.0/x86_64-redhat-linux/bits/c++config.h" 3

有这种格式的文档吗?

在另一节中有文档记录:

这些标志用于创建包含的堆栈,以改进错误输出。

Yes可能重复的