summaryrefslogtreecommitdiff
path: root/lldb/source/Utility/Diagnostics.cpp
AgeCommit message (Collapse)Author
2023-10-20[lldb] Use llvm::erase_if (NFC)Kazu Hirata
2023-02-09[lldb] Add the ability to remove diagnostic callbacksJonas Devlieghere
Add the ability to remove diagnostic callbacks. This is necessary for diagnostics who's lifetime is tied to objects that can be destroyed. Differential revision: https://reviews.llvm.org/D143548
2023-01-07[lldb] Use std::optional instead of llvm::Optional (NFC)Kazu Hirata
This patch replaces (llvm::|)Optional< with std::optional<. I'll post a separate patch to clean up the "using" declarations, #include "llvm/ADT/Optional.h", etc. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
2023-01-07[lldb] Add #include <optional> (NFC)Kazu Hirata
This patch adds #include <optional> to those files containing llvm::Optional<...> or Optional<...>. I'll post a separate patch to actually replace llvm::Optional with std::optional. This is part of an effort to migrate from llvm::Optional to std::optional: https://discourse.llvm.org/t/deprecating-llvm-optional-x-hasvalue-getvalue-getvalueor/63716
2022-10-31[lldb] Emit diagnostic events in the diagnostic dumpJonas Devlieghere
Connect the diagnostic events with the diagnostic infrastructure. - Emit existing diagnostic events (warnings and errors) to the diagnostic log. - Introduce a new diagnostic event (info) that's used exclusively for diagnostic logging and does not get broadcast. Differential revision: https://reviews.llvm.org/D136648
2022-10-31[lldb] Add a "diagnostics dump" commandJonas Devlieghere
Add a "diagnostics dump" command to, as the name implies, dump the diagnostics to disk. The goal of this command is to let the user generate the diagnostics in case of an issue that doesn't cause the debugger to crash. This command is also critical for testing, where we don't want to cause a crash to emit the diagnostics. Differential revision: https://reviews.llvm.org/D135622
2022-10-31[lldb] Add diagnosticsJonas Devlieghere
Around this time last year, I said on the mailing list [1] that I wanted to to transform the reproducers into something that resembles a sysdiagnose on Apple platforms: a collection of files containing a variety of information to help diagnose bugs or troubleshoot issues. This patch adds that framework. Based on lessons learned from the reproducers, I've intentionally tried to keep it small and simple. Different parts of LLDB can register callbacks (this is necessary for layering purposes) that will get called when the diagnostics should be generated. [1] https://lists.llvm.org/pipermail/lldb-dev/2021-September/017045.html Differential revision: https://reviews.llvm.org/D134991