aaron.ballman added a comment. In https://reviews.llvm.org/D30896#701642, @jbcoe wrote:
> I've run the check on clang. It's noisy (690 warnings). The (few) cases I've > manually inspected look like firm candidates for replacing with switches. Not > my call though. > > F3145418: reduced-clang-tidy-switch-checks <https://reviews.llvm.org/F3145418> The first thing I noticed is that this definitely emits false positives that would not be improved by a switch. Consider SemaExprCXX.cpp:3288: return ConditionResult(*this, ConditionVar, MakeFullExpr(E.get(), StmtLoc), CK == ConditionKind::ConstexprIf); or SemaLambda.cpp:1023: assert(C->InitKind == LambdaCaptureInitKind::NoInit && "init capture has valid but null init?"); Out of the five random diagnostics I picked, three would be made worse by a switch (SemaExprCXX.cpp:3288, SemaLambda.cpp:1023, CGDebugInfo.cpp:4000), one would be made better (LLParser.cpp:6206), and one would be questionable (PDB.cpp:30), all in my opinion, of course. Given the number of diagnostics it produces, and the fact that my very small random sampling produced a 60% false-positive rate, that's a bit concerning. It could also be a total coincidence due to my small sample size, of course. I think this check has utility and would be useful, but I think it needs some tuning (whether in the form of heuristics or options) to help reduce the noise out of the box. Taking a more thorough look at the results from running it over clang may identify some usage patterns that suggest what kind of heuristics or tuning would help. Repository: rL LLVM https://reviews.llvm.org/D30896 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits