以下code有一个错字,我忘了用 ()
调用 lambda 表达式:
#include <iostream>
int main()
{
[]{ std::cout << "hello"; };
}
幸运的是,clang 发出了 -Wunused-value
lambda 表达式的警告,因为它从未被评估/使用过。但是 gcc 根本不发出任何警告。使用 gcc 编译时,有没有办法警告这个有问题的代码?
有一篇关于未使用的 lambda 捕获的相关帖子 here这是相似的,但这个问题是针对未使用的 lambda 表达式本身。
最佳答案
GCC 有警告选项 -Wunused
它启用有关未使用的代码段的所有警告。最新的(主干)GCC 不会警告未使用的 lambda 选项 -Wunused -Wall -Wextra
.因此,我的结论是,目前无法启用对 GCC 中显示的程序发出警告的警告。
关于c++ - 如何在 gcc 中为未使用的 lambda 表达式启用警告?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63455316/