diff options
author | Stephen Kelly <steveire@gmail.com> | 2019-12-20 21:32:43 +0000 |
---|---|---|
committer | Stephen Kelly <steveire@gmail.com> | 2019-12-20 21:33:31 +0000 |
commit | 0378f3a90341d990236c44f297b923a32b35fab1 (patch) | |
tree | 1b0c2637bbb113f0dca328972d760a8e18a43e56 /clang/unittests/AST/ASTTraverserTest.cpp | |
parent | c431c407ebcbbb526f4af93a549fa5b260a9b193 (diff) | |
download | bcm5719-llvm-0378f3a90341d990236c44f297b923a32b35fab1.tar.gz bcm5719-llvm-0378f3a90341d990236c44f297b923a32b35fab1.zip |
Revert "Customize simplified dumping and matching of LambdaExpr"
This reverts commit 494b1318ca77927e919bbf9a61749a58553d738c.
Diffstat (limited to 'clang/unittests/AST/ASTTraverserTest.cpp')
-rw-r--r-- | clang/unittests/AST/ASTTraverserTest.cpp | 119 |
1 files changed, 0 insertions, 119 deletions
diff --git a/clang/unittests/AST/ASTTraverserTest.cpp b/clang/unittests/AST/ASTTraverserTest.cpp index 4b982431297..c995f55d3c8 100644 --- a/clang/unittests/AST/ASTTraverserTest.cpp +++ b/clang/unittests/AST/ASTTraverserTest.cpp @@ -479,123 +479,4 @@ FunctionDecl 'func12' )cpp"); } -TEST(Traverse, LambdaUnlessSpelledInSource) { - - auto AST = - buildASTFromCodeWithArgs(R"cpp( - -void captures() { - int a = 0; - int b = 0; - int d = 0; - int f = 0; - - [a, &b, c = d, &e = f](int g, int h = 42) {}; -} - -void templated() { - int a = 0; - [a]<typename T>(T t) {}; -} - -struct SomeStruct { - int a = 0; - void capture_this() { - [this]() {}; - } - void capture_this_copy() { - [self = *this]() {}; - } -}; -)cpp", - {"-Wno-unused-value", "-Wno-c++2a-extensions"}); - - auto getLambdaNode = [&AST](const std::string &name) { - auto BN = ast_matchers::match( - lambdaExpr(hasAncestor(functionDecl(hasName(name)))).bind("lambda"), - AST->getASTContext()); - EXPECT_EQ(BN.size(), 1u); - return BN[0].getNodeAs<LambdaExpr>("lambda"); - }; - - { - auto L = getLambdaNode("captures"); - - EXPECT_EQ(dumpASTString(ast_type_traits::TK_IgnoreUnlessSpelledInSource, L), - R"cpp( -LambdaExpr -|-DeclRefExpr 'a' -|-DeclRefExpr 'b' -|-VarDecl 'c' -| `-DeclRefExpr 'd' -|-VarDecl 'e' -| `-DeclRefExpr 'f' -|-ParmVarDecl 'g' -|-ParmVarDecl 'h' -| `-IntegerLiteral -`-CompoundStmt -)cpp"); - - EXPECT_EQ(dumpASTString(ast_type_traits::TK_AsIs, L), - R"cpp( -LambdaExpr -|-CXXRecordDecl '' -| |-CXXMethodDecl 'operator()' -| | |-ParmVarDecl 'g' -| | |-ParmVarDecl 'h' -| | | `-IntegerLiteral -| | `-CompoundStmt -| |-FieldDecl '' -| |-FieldDecl '' -| |-FieldDecl '' -| |-FieldDecl '' -| `-CXXDestructorDecl '~' -|-ImplicitCastExpr -| `-DeclRefExpr 'a' -|-DeclRefExpr 'b' -|-ImplicitCastExpr -| `-DeclRefExpr 'd' -|-DeclRefExpr 'f' -`-CompoundStmt -)cpp"); - } - - { - auto L = getLambdaNode("templated"); - - EXPECT_EQ(dumpASTString(ast_type_traits::TK_IgnoreUnlessSpelledInSource, L), - R"cpp( -LambdaExpr -|-DeclRefExpr 'a' -|-TemplateTypeParmDecl 'T' -|-ParmVarDecl 't' -`-CompoundStmt -)cpp"); - } - - { - auto L = getLambdaNode("capture_this"); - - EXPECT_EQ(dumpASTString(ast_type_traits::TK_IgnoreUnlessSpelledInSource, L), - R"cpp( -LambdaExpr -|-CXXThisExpr -`-CompoundStmt -)cpp"); - } - - { - auto L = getLambdaNode("capture_this_copy"); - - EXPECT_EQ(dumpASTString(ast_type_traits::TK_IgnoreUnlessSpelledInSource, L), - R"cpp( -LambdaExpr -|-VarDecl 'self' -| `-UnaryOperator -| `-CXXThisExpr -`-CompoundStmt -)cpp"); - } -} - } // namespace clang |