有时gcc
会在多行中显示单个错误/警告消息。
没什么大不了的,但对我来说这看起来有点奇怪(而且很难看)。
server_inc.c: In function ‘prepareForConn’:
server_inc.c:101: error: ‘filename’ undeclared (first use in this function)
server_inc.c:101: error: (Each undeclared identifier is reported only once
server_inc.c:101: error: for each function it appears in.)
特别是因为位置(server_inc.c:101: error:
)是前置的,所以看起来好像有很多错误。
有没有办法改变这个?我在Linux上使用gcc 4.4.7
。
答案 0 :(得分:3)
从GCC 4.5开始,第二条消息出现在一行上,并以“note”而不是“error”为前缀:
$ cat test.c int main() { x=3; } $ gcc-4.5.4 -c test.c test.c: In function ‘main’: test.c:1:14: error: ‘x’ undeclared (first use in this function) test.c:1:14: note: each undeclared identifier is reported only once for each function it appears in
使用GCC 4.4,我可以重现你所看到的行为,这看起来像一个没有任何解决方法的bug。如果可能,请升级您的编译器。
答案 1 :(得分:0)