[PATCH] D55044: [clang-tidy] check for Abseil make_unique

Roman Lebedev via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Wed Mar 27 01:16:56 PDT 2019


lebedev.ri added a comment.

It is best to error-out early.
Could you please try this instead:



================
Comment at: clang-tidy/modernize/MakeSmartPtrCheck.cpp:39
 }
 
 } // namespace
----------------
```
AST_MATCHER_P(CXXNewExpr, hasInitializationStyle,
              CXXNewExpr::InitializationStyle, IS) {
  return Node.getInitializationStyle() == IS;
};
```


================
Comment at: clang-tidy/modernize/MakeSmartPtrCheck.cpp:94
                                          equalsBoundNode(PointerType))))),
                                      CanCallCtor)
                               .bind(NewExpression)),
----------------
```
CanCallCtor, anyOf(unless(IgnoreListInit), unless(hasInitializationStyle(CXXNewExpr::ListInit))))
```


================
Comment at: clang-tidy/modernize/MakeSmartPtrCheck.cpp:104
           callee(cxxMethodDecl(hasName("reset"))),
           hasArgument(0, cxxNewExpr(CanCallCtor).bind(NewExpression)),
           unless(isInTemplateInstantiation()))
----------------
```
hasArgument(0, cxxNewExpr(CanCallCtor, anyOf(unless(IgnoreListInit), unless(hasInitializationStyle(CXXNewExpr::ListInit)))).bind(NewExpression)),
```


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D55044/new/

https://reviews.llvm.org/D55044





More information about the cfe-commits mailing list