[PATCH] D76121: Modernize DeclTest
Marcel Hlopko via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Fri Mar 13 02:15:38 PDT 2020
hlopko created this revision.
hlopko added a reviewer: gribozavr.
Herald added a project: clang.
Herald added a subscriber: cfe-commits.
This patch removes a call to the old ASTUnit::findFileRegionDecls and
replaces it with ast matchers.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D76121
Files:
clang/unittests/AST/DeclTest.cpp
Index: clang/unittests/AST/DeclTest.cpp
===================================================================
--- clang/unittests/AST/DeclTest.cpp
+++ clang/unittests/AST/DeclTest.cpp
@@ -13,10 +13,11 @@
#include "clang/AST/ASTContext.h"
#include "clang/AST/Mangle.h"
#include "clang/ASTMatchers/ASTMatchFinder.h"
+#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/Basic/LLVM.h"
#include "clang/Tooling/Tooling.h"
-#include "gtest/gtest.h"
#include "llvm/IR/DataLayout.h"
+#include "gtest/gtest.h"
using namespace clang::ast_matchers;
using namespace clang::tooling;
@@ -76,14 +77,9 @@
assert(Ctx.getTargetInfo().getDataLayout().getGlobalPrefix() &&
"Expected target to have a global prefix");
DiagnosticsEngine &Diags = AST->getDiagnostics();
- SourceManager &SM = AST->getSourceManager();
- FileID MainFileID = SM.getMainFileID();
- // Find the method decls within the AST.
- SmallVector<Decl *, 1> Decls;
- AST->findFileRegionDecls(MainFileID, Code.find('{'), 0, Decls);
- ASSERT_TRUE(Decls.size() == 1);
- CXXRecordDecl *DeclS = cast<CXXRecordDecl>(Decls[0]);
+ auto *DeclS =
+ selectFirst<CXXRecordDecl>("d", match(cxxRecordDecl().bind("d"), Ctx));
NamedDecl *DeclF = *DeclS->method_begin();
NamedDecl *DeclG = *(++DeclS->method_begin());
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76121.250150.patch
Type: text/x-patch
Size: 1300 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20200313/19d72683/attachment-0001.bin>
More information about the cfe-commits
mailing list