diff options
author | Jonas Devlieghere <jonas@devlieghere.com> | 2019-02-11 23:13:08 +0000 |
---|---|---|
committer | Jonas Devlieghere <jonas@devlieghere.com> | 2019-02-11 23:13:08 +0000 |
commit | 796ac80b863ed92c3d8bcc296f678ff416afc8a8 (patch) | |
tree | 2d135344aad0612c190b08cf7fd218d98a2a368b /lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp | |
parent | 6cbc92915ae8f5cb1d5b265e15858e79c718e7ba (diff) | |
download | bcm5719-llvm-796ac80b863ed92c3d8bcc296f678ff416afc8a8.tar.gz bcm5719-llvm-796ac80b863ed92c3d8bcc296f678ff416afc8a8.zip |
Use std::make_shared in LLDB (NFC)
Unlike std::make_unique, which is only available since C++14,
std::make_shared is available since C++11. Not only is std::make_shared
a lot more readable compared to ::reset(new), it also performs a single
heap allocation for the object and control block.
Differential revision: https://reviews.llvm.org/D57990
llvm-svn: 353764
Diffstat (limited to 'lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp')
-rw-r--r-- | lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp index 27985d02dfd..a2231307381 100644 --- a/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp +++ b/lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionParser.cpp @@ -6,7 +6,6 @@ // //===----------------------------------------------------------------------===// -#include <cctype> #include "clang/AST/ASTContext.h" #include "clang/AST/ASTDiagnostic.h" #include "clang/AST/ExternalASTSource.h" @@ -89,6 +88,9 @@ #include "lldb/Utility/StreamString.h" #include "lldb/Utility/StringList.h" +#include <cctype> +#include <memory> + using namespace clang; using namespace llvm; using namespace lldb_private; @@ -1104,11 +1106,11 @@ lldb_private::Status ClangExpressionParser::PrepareForExecution( custom_passes.EarlyPasses->run(*llvm_module_ap); } - execution_unit_sp.reset( - new IRExecutionUnit(m_llvm_context, // handed off here + execution_unit_sp = std::make_shared<IRExecutionUnit>( + m_llvm_context, // handed off here llvm_module_ap, // handed off here function_name, exe_ctx.GetTargetSP(), sc, - m_compiler->getTargetOpts().Features)); + m_compiler->getTargetOpts().Features); ClangExpressionHelper *type_system_helper = dyn_cast<ClangExpressionHelper>(m_expr.GetTypeSystemHelper()); |