From ef5d0b5e97ec8e6fa395d377b09aa7755e345b4f Mon Sep 17 00:00:00 2001 From: Dimitry Andric Date: Mon, 18 Dec 2017 20:12:36 +0000 Subject: Vendor import of lldb trunk r321017: https://llvm.org/svn/llvm-project/lldb/trunk@321017 --- source/Symbol/TypeSystem.cpp | 40 ++++++++++++++++++++++++++-------------- 1 file changed, 26 insertions(+), 14 deletions(-) (limited to 'source/Symbol/TypeSystem.cpp') diff --git a/source/Symbol/TypeSystem.cpp b/source/Symbol/TypeSystem.cpp index fa5e0bc7da6e..b99f21e1e347 100644 --- a/source/Symbol/TypeSystem.cpp +++ b/source/Symbol/TypeSystem.cpp @@ -23,19 +23,20 @@ #include "lldb/Symbol/CompilerType.h" using namespace lldb_private; +using namespace lldb; TypeSystem::TypeSystem(LLVMCastKind kind) : m_kind(kind), m_sym_file(nullptr) {} TypeSystem::~TypeSystem() {} -lldb::TypeSystemSP TypeSystem::CreateInstance(lldb::LanguageType language, - Module *module) { +static lldb::TypeSystemSP CreateInstanceHelper(lldb::LanguageType language, + Module *module, Target *target) { uint32_t i = 0; TypeSystemCreateInstance create_callback; while ((create_callback = PluginManager::GetTypeSystemCreateCallbackAtIndex( i++)) != nullptr) { lldb::TypeSystemSP type_system_sp = - create_callback(language, module, nullptr); + create_callback(language, module, target); if (type_system_sp) return type_system_sp; } @@ -44,18 +45,13 @@ lldb::TypeSystemSP TypeSystem::CreateInstance(lldb::LanguageType language, } lldb::TypeSystemSP TypeSystem::CreateInstance(lldb::LanguageType language, - Target *target) { - uint32_t i = 0; - TypeSystemCreateInstance create_callback; - while ((create_callback = PluginManager::GetTypeSystemCreateCallbackAtIndex( - i++)) != nullptr) { - lldb::TypeSystemSP type_system_sp = - create_callback(language, nullptr, target); - if (type_system_sp) - return type_system_sp; - } + Module *module) { + return CreateInstanceHelper(language, module, nullptr); +} - return lldb::TypeSystemSP(); +lldb::TypeSystemSP TypeSystem::CreateInstance(lldb::LanguageType language, + Target *target) { + return CreateInstanceHelper(language, nullptr, target); } bool TypeSystem::IsAnonymousType(lldb::opaque_compiler_type_t type) { @@ -105,6 +101,22 @@ CompilerType TypeSystem::GetTypeForFormatters(void *type) { return CompilerType(this, type); } +TemplateArgumentKind +TypeSystem::GetTemplateArgumentKind(opaque_compiler_type_t type, size_t idx) { + return eTemplateArgumentKindNull; +} + +CompilerType TypeSystem::GetTypeTemplateArgument(opaque_compiler_type_t type, + size_t idx) { + return CompilerType(); +} + +llvm::Optional +TypeSystem::GetIntegralTemplateArgument(opaque_compiler_type_t type, + size_t idx) { + return llvm::None; +} + LazyBool TypeSystem::ShouldPrintAsOneLiner(void *type, ValueObject *valobj) { return eLazyBoolCalculate; } -- cgit v1.3