[clang-tidy] Fix a false positive in the make_pair checker if an argument has a explicit template argument.
This required a rather ugly workaround for a problem in ASTMatchers where
callee() is only overloaded for Stmt and Decl but not for Expr.
llvm-svn: 213509
diff --git a/clang-tools-extra/test/clang-tidy/google-explicit-make-pair.cpp b/clang-tools-extra/test/clang-tidy/google-explicit-make-pair.cpp
index 4d7b209..895b8e6 100644
--- a/clang-tools-extra/test/clang-tidy/google-explicit-make-pair.cpp
+++ b/clang-tools-extra/test/clang-tidy/google-explicit-make-pair.cpp
@@ -21,6 +21,9 @@
// CHECK-FIXES: std::make_pair(1, 2)
}
+template <typename T>
+int t();
+
void test(int i) {
std::make_pair<int, int>(i, i);
// CHECK-MESSAGES: :[[@LINE-1]]:3: warning: for C++11-compatibility, omit template arguments from make_pair
@@ -45,4 +48,5 @@
templ(1U, 2U);
std::make_pair(i, 1); // no-warning
+ std::make_pair(t<int>, 1);
}