From: Alp Toker Date: Sun, 6 Jul 2014 05:36:57 +0000 (+0000) Subject: Track changes from clang r212388 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5f83864b7c9283ae1c8d310153345d3762a870e9;p=platform%2Fupstream%2Fllvm.git Track changes from clang r212388 llvm-svn: 212391 --- diff --git a/lldb/include/lldb/Symbol/ClangASTContext.h b/lldb/include/lldb/Symbol/ClangASTContext.h index d2712e5..6797ba2 100644 --- a/lldb/include/lldb/Symbol/ClangASTContext.h +++ b/lldb/include/lldb/Symbol/ClangASTContext.h @@ -71,8 +71,7 @@ public: clang::DiagnosticConsumer * getDiagnosticConsumer(); - clang::TargetOptions * - getTargetOptions(); + std::shared_ptr &getTargetOptions(); clang::TargetInfo * getTargetInfo(); diff --git a/lldb/source/Expression/ClangExpressionParser.cpp b/lldb/source/Expression/ClangExpressionParser.cpp index e5046a7..0b6d952 100644 --- a/lldb/source/Expression/ClangExpressionParser.cpp +++ b/lldb/source/Expression/ClangExpressionParser.cpp @@ -154,9 +154,9 @@ ClangExpressionParser::ClangExpressionParser (ExecutionContextScope *exe_scope, m_compiler->createDiagnostics(); // Create the target instance. - m_compiler->setTarget(TargetInfo::CreateTargetInfo(m_compiler->getDiagnostics(), - &m_compiler->getTargetOpts())); - + m_compiler->setTarget(TargetInfo::CreateTargetInfo( + m_compiler->getDiagnostics(), m_compiler->getInvocation().TargetOpts)); + assert (m_compiler->hasTarget()); // 3. Set options. diff --git a/lldb/source/Symbol/ClangASTContext.cpp b/lldb/source/Symbol/ClangASTContext.cpp index 07accbf..19835a3 100644 --- a/lldb/source/Symbol/ClangASTContext.cpp +++ b/lldb/source/Symbol/ClangASTContext.cpp @@ -499,17 +499,14 @@ ClangASTContext::getDiagnosticConsumer() return m_diagnostic_consumer_ap.get(); } -TargetOptions * -ClangASTContext::getTargetOptions() -{ +std::shared_ptr &ClangASTContext::getTargetOptions() { if (m_target_options_rp.get() == nullptr && !m_target_triple.empty()) { - m_target_options_rp.reset (); - m_target_options_rp = new TargetOptions(); + m_target_options_rp = std::make_shared(); if (m_target_options_rp.get() != nullptr) m_target_options_rp->Triple = m_target_triple; } - return m_target_options_rp.get(); + return m_target_options_rp; }