[clang-tools-extra] r282384 - Revert r282382; it had no reference to Revision.

Kirill Bobyrev via cfe-commits cfe-commits at lists.llvm.org
Sun Sep 25 23:33:58 PDT 2016


Author: omtcyfz
Date: Mon Sep 26 01:33:58 2016
New Revision: 282384

URL: http://llvm.org/viewvc/llvm-project?rev=282384&view=rev
Log:
Revert r282382; it had no reference to Revision.

Modified:
    clang-tools-extra/trunk/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
    clang-tools-extra/trunk/test/clang-tidy/readability-redundant-smartptr-get.cpp

Modified: clang-tools-extra/trunk/clang-tidy/readability/RedundantSmartptrGetCheck.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/clang-tidy/readability/RedundantSmartptrGetCheck.cpp?rev=282384&r1=282383&r2=282384&view=diff
==============================================================================
--- clang-tools-extra/trunk/clang-tidy/readability/RedundantSmartptrGetCheck.cpp (original)
+++ clang-tools-extra/trunk/clang-tidy/readability/RedundantSmartptrGetCheck.cpp Mon Sep 26 01:33:58 2016
@@ -60,27 +60,21 @@ void registerMatchersForGetEquals(MatchF
   // might be on global namespace or found by ADL, might be a template, etc.
   // For now, lets keep a list of known standard types.
 
-  const auto IsAKnownSmartptr =
-      recordDecl(hasAnyName("::std::unique_ptr", "::std::shared_ptr"));
+  const auto IsAKnownSmartptr = recordDecl(
+      anyOf(hasName("::std::unique_ptr"), hasName("::std::shared_ptr")));
 
   // Matches against nullptr.
   Finder->addMatcher(
-      binaryOperator(anyOf(hasOperatorName("=="), hasOperatorName("!=")),
-                     hasEitherOperand(ignoringImpCasts(
-                         anyOf(cxxNullPtrLiteralExpr(), gnuNullExpr(),
-                               integerLiteral(equals(0))))),
-                     hasEitherOperand(callToGet(IsAKnownSmartptr))),
+      binaryOperator(
+          anyOf(hasOperatorName("=="), hasOperatorName("!=")),
+          hasEitherOperand(ignoringImpCasts(cxxNullPtrLiteralExpr())),
+          hasEitherOperand(callToGet(IsAKnownSmartptr))),
       Callback);
-
-  // Matches against if(ptr.get())
-  Finder->addMatcher(
-      ifStmt(hasCondition(ignoringImpCasts(callToGet(IsAKnownSmartptr)))),
-      Callback);
-
-  // FIXME: Match and fix if (l.get() == r.get()).
+  // TODO: Catch ptr.get() == other_ptr.get()
 }
 
-} // namespace
+
+}  // namespace
 
 void RedundantSmartptrGetCheck::registerMatchers(MatchFinder *Finder) {
   // Only register the matchers for C++; the functionality currently does not
@@ -108,11 +102,10 @@ bool allReturnTypesMatch(const MatchFind
       Result.Nodes.getNodeAs<Type>("getType")->getUnqualifiedDesugaredType();
   return OpArrowType == OpStarType && OpArrowType == GetType;
 }
-} // namespace
+}  // namespace
 
 void RedundantSmartptrGetCheck::check(const MatchFinder::MatchResult &Result) {
-  if (!allReturnTypesMatch(Result))
-    return;
+  if (!allReturnTypesMatch(Result)) return;
 
   bool IsPtrToPtr = Result.Nodes.getNodeAs<Decl>("ptr_to_ptr") != nullptr;
   bool IsMemberExpr = Result.Nodes.getNodeAs<Expr>("memberExpr") != nullptr;

Modified: clang-tools-extra/trunk/test/clang-tidy/readability-redundant-smartptr-get.cpp
URL: http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/readability-redundant-smartptr-get.cpp?rev=282384&r1=282383&r2=282384&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/readability-redundant-smartptr-get.cpp (original)
+++ clang-tools-extra/trunk/test/clang-tidy/readability-redundant-smartptr-get.cpp Mon Sep 26 01:33:58 2016
@@ -113,37 +113,6 @@ void Positive() {
   // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: redundant get() call
   // CHECK-MESSAGES: i = *PointerWithOverloadedGet().get();
   // CHECK-FIXES: i = *PointerWithOverloadedGet();
-
-  bb = std::unique_ptr<int>().get() == NULL;
-  // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: redundant get() call
-  // CHECK-MESSAGES: bb = std::unique_ptr<int>().get() == NULL;
-  // CHECK-FIXES: bb = std::unique_ptr<int>() == NULL;
-  bb = ss->get() == NULL;
-  // CHECK-MESSAGES: :[[@LINE-1]]:8: warning: redundant get() call
-  // CHECK-MESSAGES: bb = ss->get() == NULL;
-  // CHECK-FIXES: bb = *ss == NULL;
-
-  std::unique_ptr<int> x, y;
-  if (x.get() == nullptr);
-  // CHECK-MESSAGES: :[[@LINE-1]]:7: warning: redundant get() call
-  // CHECK-MESSAGES: if (x.get() == nullptr);
-  // CHECK-FIXES: if (x == nullptr);
-  if (nullptr == y.get());
-  // CHECK-MESSAGES: :[[@LINE-1]]:18: warning: redundant get() call
-  // CHECK-MESSAGES: if (nullptr == y.get());
-  // CHECK-FIXES: if (nullptr == y);
-  if (x.get() == NULL);
-  // CHECK-MESSAGES: :[[@LINE-1]]:7: warning: redundant get() call
-  // CHECK-MESSAGES: if (x.get() == NULL);
-  // CHECK-FIXES: if (x == NULL);
-  if (NULL == x.get());
-  // CHECK-MESSAGES: :[[@LINE-1]]:15: warning: redundant get() call
-  // CHECK-MESSAGES: if (NULL == x.get());
-  // CHECK-FIXES: if (NULL == x);
-  if (x.get());
-  // CHECK-MESSAGES: :[[@LINE-1]]:7: warning: redundant get() call
-  // CHECK-MESSAGES: if (x.get());
-  // CHECK-FIXES: if (x);
 }
 
 void Negative() {
@@ -168,5 +137,7 @@ void Negative() {
   (*Fail2().get()).Do();
 
   int_ptr ip;
-  bool bb = ip.get() == nullptr;
+  bool bb = std::unique_ptr<int>().get() == NULL;
+  bb = ip.get() == nullptr;
+  bb = u->get() == NULL;
 }




More information about the cfe-commits mailing list