Updated to latest LLVM/Clang for external AST source changes that allow
TagDecl subclasses and Objective C interfaces to complete themselves through
the ExternalASTSource class.
git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@120749 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Symbol/ClangASTContext.cpp b/source/Symbol/ClangASTContext.cpp
index 566c3ea..14af2ab 100644
--- a/source/Symbol/ClangASTContext.cpp
+++ b/source/Symbol/ClangASTContext.cpp
@@ -356,23 +356,18 @@
ClangASTContext::getFileManager()
{
if (m_file_manager_ap.get() == NULL)
- m_file_manager_ap.reset(new clang::FileManager());
+ {
+ clang::FileSystemOptions file_system_options;
+ m_file_manager_ap.reset(new clang::FileManager(file_system_options));
+ }
return m_file_manager_ap.get();
}
-clang::FileSystemOptions *
-ClangASTContext::getFileSystemOptions()
-{
- if (m_file_system_options_ap.get() == NULL)
- m_file_system_options_ap.reset(new clang::FileSystemOptions());
- return m_file_system_options_ap.get();
-}
-
clang::SourceManager *
ClangASTContext::getSourceManager()
{
if (m_source_manager_ap.get() == NULL)
- m_source_manager_ap.reset(new clang::SourceManager(*getDiagnostic(), *getFileManager(), *getFileSystemOptions()));
+ m_source_manager_ap.reset(new clang::SourceManager(*getDiagnostic(), *getFileManager()));
return m_source_manager_ap.get();
}
@@ -748,33 +743,33 @@
};
clang_type_t
-ClangASTContext::CopyType (ASTContext *dest_context,
- ASTContext *source_context,
+ClangASTContext::CopyType (ASTContext *dst_ast,
+ ASTContext *src_ast,
clang_type_t clang_type)
{
// null_client's ownership is transferred to diagnostics
- FileManager file_manager;
FileSystemOptions file_system_options;
- ASTImporter importer(*dest_context, file_manager, file_system_options,
- *source_context, file_manager, file_system_options);
+ FileManager file_manager (file_system_options);
+ ASTImporter importer(*dst_ast, file_manager,
+ *src_ast, file_manager);
- QualType src = QualType::getFromOpaquePtr(clang_type);
- QualType dst = importer.Import(src);
+ QualType src (QualType::getFromOpaquePtr(clang_type));
+ QualType dst (importer.Import(src));
return dst.getAsOpaquePtr();
}
clang::Decl *
-ClangASTContext::CopyDecl (ASTContext *dest_context,
- ASTContext *source_context,
+ClangASTContext::CopyDecl (ASTContext *dst_ast,
+ ASTContext *src_ast,
clang::Decl *source_decl)
{
// null_client's ownership is transferred to diagnostics
- FileManager file_manager;
FileSystemOptions file_system_options;
- ASTImporter importer(*dest_context, file_manager, file_system_options,
- *source_context, file_manager, file_system_options);
+ FileManager file_manager (file_system_options);
+ ASTImporter importer(*dst_ast, file_manager,
+ *src_ast, file_manager);
return importer.Import(source_decl);
}