================ Comment at: clang-tidy/readability/RedundantVoidArgCheck.cpp:229 @@ +228,3 @@ + +void RedundantVoidArgCheck::processNamedCastExpr( + const MatchFinder::MatchResult &Result, const CXXNamedCastExpr *NamedCast) { ---------------- alexfh wrote: > Now `processNamedCastExpr`, `processNamedCastExpr` and > `processFunctionalCast` methods are almost identical and can be replaced by a > single method. And I think this method should be `processExplicitCastExpr` > that should have the same implementation. > > BTW, currently, the `processExplicitCastExpr` method can only be called if > the code encounters the only class inherited from `ExplicitCastExpr` that is > not handled explicitly: `ObjCBridgedCastExpr`. > > Once again: replace `processExplicitCastExpr` implementation with this: > ``` > void RedundantVoidArgCheck::processExplicitCastExpr( > const MatchFinder::MatchResult &Result, > const ExplicitCastExpr *ExplicitCast) { > if (protoTypeHasNoParms(ExplicitCast->getTypeAsWritten())) { > removeVoidArgumentTokens( > Result, > ExplicitCast->getTypeInfoAsWritten()->getTypeLoc().getSourceRange(), > "cast expression"); > } > } > ``` > ... and remove the other three `process...Cast` methods and the corresponding > `if` branches. > > Also, register a single `explicitCastExpr` matcher instead of separate > matchers for all kinds of casts. Fixed. When I took out the cStyleCast matcher, this test case fails:
``` /home/richard/dev/llvm/tools/clang/tools/extra/test/clang-tidy/readability-redundant-void-arg.cpp:348:19: error: expected string not found in input // CHECK-FIXES: void (*f4)() = (void (*)()) 0;{{$}} ^ /home/richard/dev/llvm-build/tools/clang/tools/extra/test/clang-tidy/Output/readability-redundant-void-arg.cpp.tmp.cpp:341:3: note: scanning from here // ^ /home/richard/dev/llvm-build/tools/clang/tools/extra/test/clang-tidy/Output/readability-redundant-void-arg.cpp.tmp.cpp:345:3: note: possible intended match here void (*f4)() = (void (*)(void)) 0; ^ ``` So I left in the matcher for `cStyleCastExpr`. http://reviews.llvm.org/D7639 EMAIL PREFERENCES http://reviews.llvm.org/settings/panel/emailpreferences/ _______________________________________________ cfe-commits mailing list cfe-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits