================ @@ -107,7 +107,15 @@ DecodedThread::CreateNewTraceItem(lldb::TraceItemKind kind) { (*m_last_tsc)->second.items_count++; if (m_last_nanoseconds) (*m_last_nanoseconds)->second.items_count++; - return m_item_data.back(); + + TraceItemStorage &data = m_item_data.back(); + + // If creating an error item, then properly initialize TraceItemStorage's + // non-trivially-constructible union member `error`. + if (kind == lldb::eTraceItemKindError) + new (&data.error) std::string(); ---------------- walter-erquinigo wrote:
could you just do `data.error = {}`? https://github.com/llvm/llvm-project/pull/77252 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits