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/Core/FileSpec.cpp b/source/Core/FileSpec.cpp
index f99fcd0..3650a82 100644
--- a/source/Core/FileSpec.cpp
+++ b/source/Core/FileSpec.cpp
@@ -19,8 +19,8 @@
 #include <fstream>
 
 #include "llvm/ADT/StringRef.h"
-#include "llvm/System/Path.h"
-#include "llvm/System/Program.h"
+#include "llvm/Support/Path.h"
+#include "llvm/Support/Program.h"
 
 #include "lldb/Core/FileSpec.h"
 #include "lldb/Core/DataBufferHeap.h"
diff --git a/source/Expression/ClangExpressionParser.cpp b/source/Expression/ClangExpressionParser.cpp
index ffc2c9d..be7a4e9 100644
--- a/source/Expression/ClangExpressionParser.cpp
+++ b/source/Expression/ClangExpressionParser.cpp
@@ -54,9 +54,9 @@
 #include "llvm/LLVMContext.h"
 #include "llvm/Support/ErrorHandling.h"
 #include "llvm/Support/MemoryBuffer.h"
-#include "llvm/System/DynamicLibrary.h"
-#include "llvm/System/Host.h"
-#include "llvm/System/Signals.h"
+#include "llvm/Support/DynamicLibrary.h"
+#include "llvm/Support/Host.h"
+#include "llvm/Support/Signals.h"
 #include "llvm/Target/TargetRegistry.h"
 #include "llvm/Target/TargetSelect.h"
 
@@ -243,11 +243,11 @@
     
     // 5. Set up the source management objects inside the compiler
     
-    m_file_manager.reset(new clang::FileManager());
-    m_file_system_options.reset(new clang::FileSystemOptions());
+    clang::FileSystemOptions file_system_options;
+    m_file_manager.reset(new clang::FileManager(file_system_options));
     
     if (!m_compiler->hasSourceManager())
-        m_compiler->createSourceManager(*m_file_manager.get(), *m_file_system_options.get());
+        m_compiler->createSourceManager(*m_file_manager.get());
     
     m_compiler->createFileManager();
     m_compiler->createPreprocessor();
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);
 }