Prazek added a comment. In https://reviews.llvm.org/D27166#622108, @malcolm.parsons wrote:
> In https://reviews.llvm.org/D27166#622103, @Prazek wrote: > > > There is still one more problem: > > > > /home/prazek/llvm/lib/Analysis/ScalarEvolution.cpp:2442:11: warning: use > > auto when initializing with a template cast to avoid duplicating the type > > name [modernize-use-auto] > > const auto **O = SCEVAllocator.Allocate<const SCEV *>(Ops.size()); > > ^ > > auto > > > Any suggestions for rewriting this matcher? > > // Skip declarations that are already using auto. > unless(has(varDecl(anyOf(hasType(autoType()), > hasType(pointerType(pointee(autoType()))), > hasType(referenceType(pointee(autoType()))))))) > > > > There is also problem with function pointers > > > > /home/prazek/llvm/lib/ExecutionEngine/MCJIT/MCJIT.cpp:520:9: warning: use > > auto when initializing with a cast to avoid duplicating the type name > > [modernize-use-auto] > > int (*PF)(int, char **, const char **) = > > ^ > > auto > > > > > > > > The warning is correct, but the fixit is wrong. > Suppress fixit for function pointers? Yep, it is not worth fixing it. Have you add test cases to the cases that we discussed? ================ Comment at: clang-tidy/modernize/UseAutoCheck.cpp:173-177 +/// Matches the type that was substituted for the template parameter. +AST_MATCHER_P(SubstTemplateTypeParmType, hasReplacementType, + ast_matchers::internal::Matcher<QualType>, InnerMatcher) { + return InnerMatcher.matches(Node.getReplacementType(), Finder, Builder); +} ---------------- malcolm.parsons wrote: > Prazek wrote: > > alexfh wrote: > > > Ideally, this should go to ASTMatchers.h (with a proper test and > > > documentation). > > I agree > @Prazek Are you talking about `hasReplacementType` or > `hasExplicitTemplateArgs`? It is good now. https://reviews.llvm.org/D27166 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits