================ @@ -6754,12 +6754,12 @@ size_t TypeSystemClang::GetIndexOfChildMemberWithName( llvm::StringRef field_name = field->getName(); if (field_name.empty()) { CompilerType field_type = GetType(field->getType()); + std::vector<uint32_t> save_indices = child_indexes; ---------------- cmtice wrote:
Actually, I take that back. I've been playing around with this, and *not* clearing the vector is not a viable solution, because the code the clears the vector (when an error condition is encountered) is inside a loop that *also* pushes items into the vector. So there could be several successful iterations, lengthening the vector, but final failure. At the point of failure there could be some number of no-longer-valid indexes that have been added to the vector, so clearing it is the only option (other than saving it before the loop and restoring it when the error condition is encountered...). https://github.com/llvm/llvm-project/pull/117808 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits