- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
这是我的代码:
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wunused-variable"
//__attribute__((unused))
static int myVar = 5;
#pragma GCC diagnostic pop
当使用 -Wall
编译时,我收到了警告。但是当我使用该属性时,我没有得到它。
为什么编译指示不起作用?我没有收到无法识别的标志的警告。其他 stackoverflow 线程将我指向 pragma 的东西......
使用 gcc(x86_64-posix-seh-rev0,由 MinGW-W64 项目构建)5.3.0
编辑:我在 gcc 文档中读到:
pragma GCC diagnostic kind option
Modifies the disposition of a diagnostic. Note that not all diagnostics are modifiable; at the moment only warnings (normally controlled by ‘-W...’) can be controlled, and not all of them. Use -fdiagnostics-show-option to determine which diagnostics are controllable and which option controls them.
但我仍然不明白如何知道是否可以用 pragma 抑制警告 - 即使我从输出中得到 [-Wunused-variable]
...
最佳答案
您遇到的问题似乎是在处理完整个编译单元后发出有关未使用变量的警告,而不是在声明点发出。因此,在声明点上激活警告抑制根本没有任何作用,然后当您将其弹出时,警告在实际重要的点上不会被忽略;也就是说,在文件结束之后。
删除 push
和 pop
指令确实可以抑制警告。此外,当将 diagnostic ignored
指令移动到文件末尾时,警告仍然被抑制。
关于c++ - 为 gcc 沉默 Wunused 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35531568/
我正在使用一个使用 log4j 输出到控制台的库。但是,使用该库的方法会被多次调用,这意味着控制台始终已满。我需要一种方法来停止 log4j 输出到控制台。 我看到过类似的问题,但不知道该怎么做。 我
我已将 New Relic iOS SDK 添加到我的项目中,它正在将我不感兴趣的各种信息记录到控制台。我希望找到禁用它的方法,并找到了 this page 的“更改日志记录级别”部分,但提供的代码无
有人知道如何从 cucumber 运行的回溯中静音或过滤线条吗?我正在运行一个 rails 2.3.5 应用程序,其中 database_cleaner 插件设置为在每个场景后截断。每次运行时,终端都
我已按照 iOS 9 的要求将我的 URL 方案添加到 Info.plist。但是,调用会导致: -canOpenURL: failed for URL: "scheme://" - error: "
这是我的代码: #pragma GCC diagnostic push #pragma GCC diagnostic ignored "-Wunused-variable" //__attribute
我目前正在使用 gdb 在 Linux 中调试多线程应用程序。我在输出中收到很多噪音,想知道是否有什么办法可以让它静音。 我收到了很多这些:“[切换到线程 ~~ (LWP ~~)]”我使用了“set
我想消除变量 attrs 的 JSHint 警告“attrs 已定义但从未使用”。但是我不想使用选项 /* jshintused:false */ 因为这将完全关闭警告。我希望仅对 attrs 禁用警
我在脚本中使用 gcloud auth activate-service-account 来激活服务帐户。它输出 Activated service account credentials for:
我在脚本中使用 gcloud auth activate-service-account 来激活服务帐户。它输出 Activated service account credentials for:
问题很简单,我们希望 CherryPy 不记录被调用的特定公开方法/API 的访问日志。 基本上当这个API被调用时,URL的查询字符串中有一些非常敏感的参数,如果泄露,会暴露潜在的安全性。这自然是一
如标题所示,我想在运行我的 python 脚本时关闭此警告消息。有没有人有什么建议?谷歌没有发现任何东西。 谢谢, 大卫 最佳答案 看起来您还没有为您的根应用配置日志记录,并且模块不知道将日志发送到哪
我已经 written a script使用 GIT_SEQUENCE_EDITOR=sed ...s/pick/edit/... 自动执行 git rebase --interactive 编辑指定
我正在为一些“多边形内的点”查询使用“地理”类型的列。它们太少太简单,无法捆绑 GIS gem,我在 SQL 级别处理所有这些。 但是,每次 Rails 启动(rake 任务、控制台等)时,都会发出以
我有一个Mac应用程序,它需要在Mac休眠时执行一个操作。要做到这一点,我使用这种“现代”方法来监听通知:。Xcode 15测试版8在for/await调用中引入了新的警告:。。但我根本没有使用通知对
我是一名优秀的程序员,十分优秀!