2012-03-20 42 views
4

GCC中有一個名爲#warning的預處理器指令,它只是在編譯時用附加的字符串發出警告。海灣合作委員會documentation說,這可以通過-Wno-cpp標誌禁用。但是,這個標誌似乎不起作用。我正在使用 GCC 4.4.3。如何在GCC中禁用#警告消息?

一個簡單的測試用例是這樣的:

#include <iostream> 
#warning "Hello" 

int main() { 
} 

導致此:

$ g++ warn.cc 
warn.cc:2:2: warning: #warning "Hello" 
$ g++ warn.cc -Wno-cpp 
warn.cc:2:2: warning: #warning "Hello" 

是文檔錯了嗎?

+2

它的工作原理(即抑制警告)在這裏與G ++ 4.6.1。也許是一個錯誤? – FatalError 2012-03-20 19:09:56

+0

在GCC 4.6.1上,'-Wno-cpp'標誌按照我的預期工作(就像數據點一樣)。 – 2012-03-20 19:10:01

+0

您參考的文檔是關於gcc版本4.8.0的。它可能不適用於gcc 4.4.3。 – ldav1s 2012-03-20 19:13:36

回答