================ @@ -66,3 +67,37 @@ void Progress::ReportProgress() { m_debugger_id); } } + +ProgressManager &ProgressManager::InstanceImpl() { + static std::once_flag g_once_flag; + static ProgressManager *g_progress_manager = nullptr; + std::call_once(g_once_flag, []() { + // NOTE: known leak to avoid global destructor chain issues. + g_progress_manager = new ProgressManager(); + }); + return *g_progress_manager; +} + +ProgressManager::ProgressManager() : m_progress_category_map() {} + +ProgressManager::~ProgressManager() {} + +ProgressManager &ProgressManager::Instance() { return InstanceImpl(); } ---------------- clayborg wrote:
Remove `ProgressManager &ProgressManager::InstanceImpl()` and inline the code from that function in this function. https://github.com/llvm/llvm-project/pull/81319 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits