steveire created this revision. steveire added a reviewer: aaron.ballman. Herald added subscribers: cfe-commits, dkrupp, donat.nagy, Szelethus, a.sidorin, baloghadamsoftware. Herald added a project: clang.
Repository: rG LLVM Github Monorepo https://reviews.llvm.org/D72532 Files: clang/lib/Analysis/ExprMutationAnalyzer.cpp Index: clang/lib/Analysis/ExprMutationAnalyzer.cpp =================================================================== --- clang/lib/Analysis/ExprMutationAnalyzer.cpp +++ clang/lib/Analysis/ExprMutationAnalyzer.cpp @@ -284,11 +284,12 @@ maybeEvalCommaExpr(equalsNode(Exp)))); const auto Matches = - match(findAll(stmt(anyOf(AsAssignmentLhs, AsIncDecOperand, AsNonConstThis, + match(traverse(ast_type_traits::TK_AsIs, + findAll(stmt(anyOf(AsAssignmentLhs, AsIncDecOperand, AsNonConstThis, AsAmpersandOperand, AsPointerFromArrayDecay, AsOperatorArrowThis, AsNonConstRefArg, AsLambdaRefCaptureInit, AsNonConstRefReturn)) - .bind("stmt")), + .bind("stmt"))), Stm, Context); return selectFirst<Stmt>("stmt", Matches); } @@ -387,13 +388,13 @@ parmVarDecl(hasType(nonConstReferenceType())).bind("parm")); const auto IsInstantiated = hasDeclaration(isInstantiated()); const auto FuncDecl = hasDeclaration(functionDecl().bind("func")); - const auto Matches = match( + const auto Matches = match(traverse(ast_type_traits::TK_AsIs, findAll(expr(anyOf(callExpr(NonConstRefParam, IsInstantiated, FuncDecl, unless(callee(namedDecl(hasAnyName( "::std::move", "::std::forward"))))), cxxConstructExpr(NonConstRefParam, IsInstantiated, FuncDecl))) - .bind(NodeID<Expr>::value)), + .bind(NodeID<Expr>::value))), Stm, Context); for (const auto &Nodes : Matches) { const auto *Exp = Nodes.getNodeAs<Expr>(NodeID<Expr>::value);
Index: clang/lib/Analysis/ExprMutationAnalyzer.cpp =================================================================== --- clang/lib/Analysis/ExprMutationAnalyzer.cpp +++ clang/lib/Analysis/ExprMutationAnalyzer.cpp @@ -284,11 +284,12 @@ maybeEvalCommaExpr(equalsNode(Exp)))); const auto Matches = - match(findAll(stmt(anyOf(AsAssignmentLhs, AsIncDecOperand, AsNonConstThis, + match(traverse(ast_type_traits::TK_AsIs, + findAll(stmt(anyOf(AsAssignmentLhs, AsIncDecOperand, AsNonConstThis, AsAmpersandOperand, AsPointerFromArrayDecay, AsOperatorArrowThis, AsNonConstRefArg, AsLambdaRefCaptureInit, AsNonConstRefReturn)) - .bind("stmt")), + .bind("stmt"))), Stm, Context); return selectFirst<Stmt>("stmt", Matches); } @@ -387,13 +388,13 @@ parmVarDecl(hasType(nonConstReferenceType())).bind("parm")); const auto IsInstantiated = hasDeclaration(isInstantiated()); const auto FuncDecl = hasDeclaration(functionDecl().bind("func")); - const auto Matches = match( + const auto Matches = match(traverse(ast_type_traits::TK_AsIs, findAll(expr(anyOf(callExpr(NonConstRefParam, IsInstantiated, FuncDecl, unless(callee(namedDecl(hasAnyName( "::std::move", "::std::forward"))))), cxxConstructExpr(NonConstRefParam, IsInstantiated, FuncDecl))) - .bind(NodeID<Expr>::value)), + .bind(NodeID<Expr>::value))), Stm, Context); for (const auto &Nodes : Matches) { const auto *Exp = Nodes.getNodeAs<Expr>(NodeID<Expr>::value);
_______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits