summaryrefslogtreecommitdiffstats
path: root/clang/lib
diff options
context:
space:
mode:
authorGabor Marton <martongabesz@gmail.com>2018-12-12 11:22:55 +0000
committerGabor Marton <martongabesz@gmail.com>2018-12-12 11:22:55 +0000
commitbe77a9846dff41262c1fdef0d533611d8f0ad8e2 (patch)
tree5de5937e88e6a10084607caaedd1c4255f4a36d0 /clang/lib
parent3732b4ce2590c44032d4acc8ee103546e2e61197 (diff)
downloadbcm5719-llvm-be77a9846dff41262c1fdef0d533611d8f0ad8e2.tar.gz
bcm5719-llvm-be77a9846dff41262c1fdef0d533611d8f0ad8e2.zip
[ASTImporter] Remove import of definition from GetAlreadyImportedOrNull
Summary: a_sidorin Reviewers: a.sidorin Subscribers: rnkovacs, dkrupp, Szelethus, cfe-commits Differential Revision: https://reviews.llvm.org/D53755 llvm-svn: 348923
Diffstat (limited to 'clang/lib')
-rw-r--r--clang/lib/AST/ASTImporter.cpp18
1 files changed, 8 insertions, 10 deletions
diff --git a/clang/lib/AST/ASTImporter.cpp b/clang/lib/AST/ASTImporter.cpp
index 633b2e48db4..90724241dbb 100644
--- a/clang/lib/AST/ASTImporter.cpp
+++ b/clang/lib/AST/ASTImporter.cpp
@@ -1580,6 +1580,9 @@ Error ASTNodeImporter::ImportDeclParts(
return Err;
ToD = cast_or_null<NamedDecl>(Importer.GetAlreadyImportedOrNull(D));
+ if (ToD)
+ if (Error Err = ASTNodeImporter(*this).ImportDefinitionIfNeeded(D, ToD))
+ return Err;
return Error::success();
}
@@ -7745,17 +7748,12 @@ Attr *ASTImporter::Import(const Attr *FromAttr) {
return ToAttr;
}
-Decl *ASTImporter::GetAlreadyImportedOrNull(Decl *FromD) {
- llvm::DenseMap<Decl *, Decl *>::iterator Pos = ImportedDecls.find(FromD);
- if (Pos != ImportedDecls.end()) {
- Decl *ToD = Pos->second;
- // FIXME: move this call to ImportDeclParts().
- if (Error Err = ASTNodeImporter(*this).ImportDefinitionIfNeeded(FromD, ToD))
- llvm::consumeError(std::move(Err));
- return ToD;
- } else {
+Decl *ASTImporter::GetAlreadyImportedOrNull(const Decl *FromD) const {
+ auto Pos = ImportedDecls.find(FromD);
+ if (Pos != ImportedDecls.end())
+ return Pos->second;
+ else
return nullptr;
- }
}
Expected<Decl *> ASTImporter::Import_New(Decl *FromD) {
OpenPOWER on IntegriCloud