使用 Visual C++ 2012 编译以下代码时:
namespace
{
void unusedFunction1()
{
}
}
static void unusedFunction2()
{
}
使用 /Wall,编译器会报告
警告 C4505:“unusedFunction2”:未引用的本地函数已被删除
对于静态函数 usedFunction2()。但它不报告未使用的Function1() 的任何内容。
似乎在匿名命名空间中包含本地函数会抑制未引用的本地函数警告,这对我来说是一个意外且令人不快的副作用。
是否有任何方法可以使用 MSVC 或其他 C++ 编译器为匿名命名空间中未引用的本地函数生成警告?