如何修复未知编译指示 gcc 警告
How to fix Wunknown-pragmas gcc warning
我有一个代码片段,在这里我放了一个#pragma
.这给出了Wunknown-pragmas
警告:
warning: ignoring #pragma warning [-Wunknown-pragmas]
法典:
#include<iostream>
using namespace std;
int main(){
cout<<"Helloworldn";
#ifdef __GNUC__
#pragma warning( push )
#pragma warning( disable : warning )
cout<< "I am in warning free section"<<endl;
#pragma warning( pop )
#endif
return 0;
}
如何在代码级别解决此问题?
这不是你在GCC中使用编译指示的方式。它应该更像:
#include<iostream>
//example function that
//complains if its result is unused
__attribute__((__warn_unused_result__)) int foo() { return 42; }
using namespace std;
int main(){
cout<<"Helloworldn";
foo();
#ifdef __GNUC__
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-result"
foo(); //no complaints here
cout<< "I am in warning free section"<< endl;
#pragma GCC diagnostic pop
#endif
return 0;
}
有关更多信息,请参阅 gcc 手册。
相关文章:
- GCC 警告和 gcc 错误消息之间的区别
- 为什么 gcc 警告只针对统一初始化缩小转换范围?
- 如何禁用没有命令行开关的 gcc 警告?
- 符号可见性和 gcc 警告
- [[maybe_unused]] 在成员变量上,GCC 警告(不正确?)该属性被忽略
- 是否有 GCC 警告,用于使用 C 库中的符号而不是通过命名空间 std?
- GCC 6.x警告有关Lambda可见性
- 使用CPLEX 12.8时GCC/G 警告
- 为什么一些 GCC 警告标志不属于C++语言,但在C++中工作
- GCC 警告未使用的静态函数,但不警告静态内联:是否有实际区别?
- 如何强制GCC警告类函数的使用
- 如何修复未知编译指示 gcc 警告
- GCC警告的含义:忽略模板参数上的属性(-Wignored属性)
- 为什么GCC警告使用STD ::元组和虚拟继承来调用非平凡的动作分配运算符
- 如何忽略 [默认启用] 的特定 gcc 警告?
- gcc警告未使用的RAII变量
- 如何将gcc警告转储为结构化格式
- 隐式转换的 GCC 警告标志
- GCC 警告初始化顺序与声明顺序不匹配
- GCC警告已声明但未定义的变量