summaryrefslogtreecommitdiffstats
path: root/lldb/source/API/SBCompileUnit.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/API/SBCompileUnit.cpp')
-rw-r--r--lldb/source/API/SBCompileUnit.cpp26
1 files changed, 15 insertions, 11 deletions
diff --git a/lldb/source/API/SBCompileUnit.cpp b/lldb/source/API/SBCompileUnit.cpp
index 149d587913e..4e2fc6af460 100644
--- a/lldb/source/API/SBCompileUnit.cpp
+++ b/lldb/source/API/SBCompileUnit.cpp
@@ -135,17 +135,21 @@ uint32_t SBCompileUnit::GetNumSupportFiles() const {
lldb::SBTypeList SBCompileUnit::GetTypes(uint32_t type_mask) {
SBTypeList sb_type_list;
- if (m_opaque_ptr) {
- ModuleSP module_sp(m_opaque_ptr->GetModule());
- if (module_sp) {
- SymbolVendor *vendor = module_sp->GetSymbolVendor();
- if (vendor) {
- TypeList type_list;
- vendor->GetTypes(m_opaque_ptr, type_mask, type_list);
- sb_type_list.m_opaque_ap->Append(type_list);
- }
- }
- }
+ if (!m_opaque_ptr)
+ return sb_type_list;
+
+ ModuleSP module_sp(m_opaque_ptr->GetModule());
+ if (!module_sp)
+ return sb_type_list;
+
+ SymbolVendor *vendor = module_sp->GetSymbolVendor();
+ if (!vendor)
+ return sb_type_list;
+
+ TypeClass type_class = static_cast<TypeClass>(type_mask);
+ TypeList type_list;
+ vendor->GetTypes(m_opaque_ptr, type_class, type_list);
+ sb_type_list.m_opaque_ap->Append(type_list);
return sb_type_list;
}
OpenPOWER on IntegriCloud