Author: Stephen Kelly Date: 2020-11-23T14:27:48Z New Revision: f052cf494f07a33af5aa7c680cfe0bfcca24beae
URL: https://github.com/llvm/llvm-project/commit/f052cf494f07a33af5aa7c680cfe0bfcca24beae DIFF: https://github.com/llvm/llvm-project/commit/f052cf494f07a33af5aa7c680cfe0bfcca24beae.diff LOG: Update mode used in traverse() examples traverse() predates the IgnoreUnlessSpelledInSource mode. Update example and test code to use the newer mode. Differential Revision: https://reviews.llvm.org/D91917 Added: Modified: clang/docs/LibASTMatchersReference.html clang/include/clang/ASTMatchers/ASTMatchers.h clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp Removed: ################################################################################ diff --git a/clang/docs/LibASTMatchersReference.html b/clang/docs/LibASTMatchersReference.html index fbc53ed743a2..9f14ab9f4c5b 100644 --- a/clang/docs/LibASTMatchersReference.html +++ b/clang/docs/LibASTMatchersReference.html @@ -5567,7 +5567,7 @@ <h2 id="traversal-matchers">AST Traversal Matchers</h2> int i = 3.0; } The matcher - traverse(TK_IgnoreImplicitCastsAndParentheses, + traverse(TK_IgnoreUnlessSpelledInSource, varDecl(hasInitializer(floatLiteral().bind("init"))) ) matches the variable declaration with "init" bound to the "3.0". diff --git a/clang/include/clang/ASTMatchers/ASTMatchers.h b/clang/include/clang/ASTMatchers/ASTMatchers.h index d8b049f45341..0da469ea0f78 100644 --- a/clang/include/clang/ASTMatchers/ASTMatchers.h +++ b/clang/include/clang/ASTMatchers/ASTMatchers.h @@ -782,7 +782,7 @@ AST_POLYMORPHIC_MATCHER_P( /// \endcode /// The matcher /// \code -/// traverse(TK_IgnoreImplicitCastsAndParentheses, +/// traverse(TK_IgnoreUnlessSpelledInSource, /// varDecl(hasInitializer(floatLiteral().bind("init"))) /// ) /// \endcode diff --git a/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp b/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp index 004c667f053d..b0ec1719daaf 100644 --- a/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp +++ b/clang/unittests/ASTMatchers/ASTMatchersTraversalTest.cpp @@ -1873,8 +1873,8 @@ void foo() auto Matcher = varDecl(hasInitializer(floatLiteral())); EXPECT_TRUE(notMatches(VarDeclCode, traverse(TK_AsIs, Matcher))); - EXPECT_TRUE(matches(VarDeclCode, - traverse(TK_IgnoreImplicitCastsAndParentheses, Matcher))); + EXPECT_TRUE( + matches(VarDeclCode, traverse(TK_IgnoreUnlessSpelledInSource, Matcher))); auto ParentMatcher = floatLiteral(hasParent(varDecl(hasName("i")))); @@ -2715,14 +2715,14 @@ void foo() )cpp"; EXPECT_TRUE( - matches(Code, traverse(TK_IgnoreImplicitCastsAndParentheses, + matches(Code, traverse(TK_IgnoreUnlessSpelledInSource, callExpr(has(callExpr(traverse( TK_AsIs, callExpr(has(implicitCastExpr( has(floatLiteral()))))))))))); EXPECT_TRUE(matches( Code, - traverse(TK_IgnoreImplicitCastsAndParentheses, + traverse(TK_IgnoreUnlessSpelledInSource, traverse(TK_AsIs, implicitCastExpr(has(floatLiteral())))))); } @@ -2738,8 +2738,7 @@ void constructImplicit() { } )cpp"; - auto Matcher = - traverse(TK_IgnoreImplicitCastsAndParentheses, implicitCastExpr()); + auto Matcher = traverse(TK_IgnoreUnlessSpelledInSource, implicitCastExpr()); // Verfiy that it does not segfault EXPECT_FALSE(matches(Code, Matcher)); @@ -2766,7 +2765,7 @@ void foo() EXPECT_TRUE(matches( Code, functionDecl(anyOf(hasDescendant(Matcher), - traverse(TK_IgnoreImplicitCastsAndParentheses, + traverse(TK_IgnoreUnlessSpelledInSource, functionDecl(hasDescendant(Matcher))))))); } _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits