为特定函数名称禁用 "unused function"
Disable "unused function" for specific function name
我正在用 "Treat warnings as errors" 编译项目。
问题是,我需要来自这里的增量类型列表:
并且 GCC 正确地抱怨一组已声明的静态函数既未定义也未使用。我不想完全禁用此诊断。相反,我只想为具有特定名称的函数禁用它。有这种可能吗?也许一些属性?还是编译选项?
澄清:我不需要为指定的文件禁用警告。我需要为特定功能禁用它。
编辑:我能够通过使用基于 ADL 的技巧解决我的问题。所以问题不再是实际的了。
最好使用 __attribute__((unused))
GCC extension, as in the code below:
namespace {
void f() __attribute__((unused));
void g();
void f() {}
void g() {}
}
int main() {/*f(); g();*/ return 0;}
在 C++17 中,您可以使用 [[maybe_unused]]
:
声明您的函数
[[maybe_unused]] void foo (int, int);
来源:
我正在用 "Treat warnings as errors" 编译项目。
问题是,我需要来自这里的增量类型列表:
并且 GCC 正确地抱怨一组已声明的静态函数既未定义也未使用。我不想完全禁用此诊断。相反,我只想为具有特定名称的函数禁用它。有这种可能吗?也许一些属性?还是编译选项?
澄清:我不需要为指定的文件禁用警告。我需要为特定功能禁用它。
编辑:我能够通过使用基于 ADL 的技巧解决我的问题。所以问题不再是实际的了。
最好使用 __attribute__((unused))
GCC extension, as in the code below:
namespace {
void f() __attribute__((unused));
void g();
void f() {}
void g() {}
}
int main() {/*f(); g();*/ return 0;}
在 C++17 中,您可以使用 [[maybe_unused]]
:
[[maybe_unused]] void foo (int, int);
来源: