4 c c++ code-analysis compiler-warnings switch-statement
给出以下代码:
bool doGoodThing;
switch (some_variable)
{
case 1:
case 2:
doGoodThing = true;
default:
doGoodThing = false;
}
Run Code Online (Sandbox Code Playgroud)
最新gcc版本足够智能,可以检测何时分配变量但仍未使用,等等.是否有任何编译器或标志可以触发警告说整个开关对这样的代码没有任何意义?
更新:问题不在于doGoodThing变量.这是一个愚蠢的switch陈述,没有多大意义.
更新2:在你将"重复"选民标记为重复之前通过它 - 再次阅读一个问题.这不是关于"案件"之后缺少"休息"声明的警告.这是关于死代码,逻辑错误,编译器对代码的静态语义分析.如果没有"休息",我不需要警告.