diff options
Diffstat (limited to 'include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h')
-rw-r--r-- | include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h b/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h index 9bf073831565..9713dce362d2 100644 --- a/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h +++ b/include/llvm/DebugInfo/PDB/ConcreteSymbolEnumerator.h @@ -34,12 +34,11 @@ public: std::unique_ptr<ChildType> getChildAtIndex(uint32_t Index) const override { std::unique_ptr<PDBSymbol> Child = Enumerator->getChildAtIndex(Index); - return make_concrete_child(std::move(Child)); + return unique_dyn_cast_or_null<ChildType>(Child); } std::unique_ptr<ChildType> getNext() override { - std::unique_ptr<PDBSymbol> Child = Enumerator->getNext(); - return make_concrete_child(std::move(Child)); + return unique_dyn_cast_or_null<ChildType>(Enumerator->getNext()); } void reset() override { Enumerator->reset(); } @@ -50,11 +49,6 @@ public: } private: - std::unique_ptr<ChildType> - make_concrete_child(std::unique_ptr<PDBSymbol> Child) const { - ChildType *ConcreteChild = dyn_cast_or_null<ChildType>(Child.release()); - return std::unique_ptr<ChildType>(ConcreteChild); - } std::unique_ptr<IPDBEnumSymbols> Enumerator; }; |