Skip to content

Commit 557a6b8

Browse files
authored
[lldb][NFC] use llvm::erase_if to remove non matching types (#168279)
1 parent b32c434 commit 557a6b8

File tree

1 file changed

+10
-18
lines changed

1 file changed

+10
-18
lines changed

lldb/source/Symbol/Symtab.cpp

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -722,15 +722,11 @@ Symtab::AppendSymbolIndexesWithNameAndType(ConstString symbol_name,
722722
std::vector<uint32_t> &indexes) {
723723
std::lock_guard<std::recursive_mutex> guard(m_mutex);
724724

725-
if (AppendSymbolIndexesWithName(symbol_name, indexes) > 0) {
726-
std::vector<uint32_t>::iterator pos = indexes.begin();
727-
while (pos != indexes.end()) {
728-
if (symbol_type == eSymbolTypeAny ||
729-
m_symbols[*pos].GetType() == symbol_type)
730-
++pos;
731-
else
732-
pos = indexes.erase(pos);
733-
}
725+
if (AppendSymbolIndexesWithName(symbol_name, indexes) > 0 &&
726+
symbol_type != eSymbolTypeAny) {
727+
llvm::erase_if(indexes, [this, symbol_type](uint32_t index) {
728+
return m_symbols[index].GetType() != symbol_type;
729+
});
734730
}
735731
return indexes.size();
736732
}
@@ -742,15 +738,11 @@ uint32_t Symtab::AppendSymbolIndexesWithNameAndType(
742738
std::lock_guard<std::recursive_mutex> guard(m_mutex);
743739

744740
if (AppendSymbolIndexesWithName(symbol_name, symbol_debug_type,
745-
symbol_visibility, indexes) > 0) {
746-
std::vector<uint32_t>::iterator pos = indexes.begin();
747-
while (pos != indexes.end()) {
748-
if (symbol_type == eSymbolTypeAny ||
749-
m_symbols[*pos].GetType() == symbol_type)
750-
++pos;
751-
else
752-
pos = indexes.erase(pos);
753-
}
741+
symbol_visibility, indexes) > 0 &&
742+
symbol_type != eSymbolTypeAny) {
743+
llvm::erase_if(indexes, [this, symbol_type](uint32_t index) {
744+
return m_symbols[index].GetType() != symbol_type;
745+
});
754746
}
755747
return indexes.size();
756748
}

0 commit comments

Comments
 (0)