0

我已经将相当多的代码从 Win 移植到 Solaris,这是我遇到的问题之一 - 我收到大量警告:

Warning: Last line in file is not terminated with a newline.

我喜欢警告——但由于警告的数量太多,我担心我会错过更重要的警告。

我应该指定哪个编译器 (cc) 选项来使其静音?

谢谢。

4

2 回答 2

2

或者您可以在每个文件的末尾添加一个空行。

一个快速的 shell 脚本

find . -name "*.cpp" -exec echo "" >> {} \;
于 2009-12-17T05:02:02.633 回答
1

虽然我认为 Martin 修复原始源文件的解决方案会更可取,但如果你真的想禁用警告,那么这个页面描述了 -erroff 标志,你可以使用它来禁用特定的警告。在你的情况下添加

-erroff=E_NEWLINE_NOT_LAST

到 CC 命令行关闭换行警告,例如:

# Display the warning and the warning tag name.
/opt/forte/sunstudio11_patch2/SUNWspro/bin/cc -errtags=yes test.c
"test.c", line 1: warning: newline not last character in file (E_NEWLINE_NOT_LAST)

# Disable the warning.
/opt/forte/sunstudio11_patch2/SUNWspro/bin/cc -erroff=E_NEWLINE_NOT_LAST test.c 
于 2009-12-17T11:56:40.617 回答