gpt4 book ai didi

c - 如何使用带有 gcc 的 #pragma 有选择地禁用 -Werror

转载 作者:IT王子 更新时间:2023-10-29 06:29:25 26 4
gpt4 key购买 nike

在寻求无警告应用程序的过程中,我已经开始使用 -Werror告诉 GCC 将所有警告视为错误。

这确实非常有用,因为有时我会在大型构建输出中错过一两个(严重的)警告。不幸的是,我的项目使用 SQLite 3,其中包含许多警告,如 SQLite 网站上所述,这些警告无法消除(他们不想删除)。

我想知道是否有办法使用一些 #pragma 我可以放在 sqlite3.c 文件中告诉 GCC 停止将警告视为错误文件。

我试过:

#pragma GCC diagnostic ignored "-Werror"

没有成功。

我也试图一一列出导致问题的警告:

#pragma GCC diagnostic ignored "-Wextra"
#pragma GCC diagnostic ignored "-Wfloat-equal"
#pragma GCC diagnostic ignored "-Wundef"
...

...不幸的是,有些警告无法完全关闭(即,初始化会丢弃指针目标类型的限定符)。

我能做什么?

最佳答案

您可以为 sqlite3.c 添加一个额外的规则到您的 Makefile 中,该规则编译文件时没有 -Werror 或根本没有任何警告。按照通常的惯例,这样的事情可能就足够了:

sqlite3.o: sqlite3.c
$(CC) $(CFLAGS) -w -c sqlite3.c

关于c - 如何使用带有 gcc 的 #pragma 有选择地禁用 -Werror,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33414964/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com