[all-commits] [llvm/llvm-project] 83a6a0: [lldb] Print lldbassert to debugger diagnostics

Jonas Devlieghere via All-commits all-commits at lists.llvm.org
Tue Jun 13 20:46:47 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 83a6a0a620476d2fa181cb663ccbf06cc9d7a24f
      https://github.com/llvm/llvm-project/commit/83a6a0a620476d2fa181cb663ccbf06cc9d7a24f
  Author: Jonas Devlieghere <jonas at devlieghere.com>
  Date:   2023-06-13 (Tue, 13 Jun 2023)

  Changed paths:
    M lldb/include/lldb/Core/Debugger.h
    M lldb/include/lldb/Utility/LLDBAssert.h
    M lldb/source/API/SystemInitializerFull.cpp
    M lldb/source/Core/Debugger.cpp
    M lldb/source/Utility/LLDBAssert.cpp

  Log Message:
  -----------
  [lldb] Print lldbassert to debugger diagnostics

When hitting an lldbassert in a non-assert build, we emit a blurb
including the assertion, the triggering file and line and a pretty
backtrace leading up to the issue. Currently, this is all printed to
stderr. That's fine on the command line, but when used as library, for
example from Xcode, this information doesn't make it to the user. This
patch uses the diagnostic infrastructure to report LLDB asserts as
diagnostic events.

The patch is slightly more complicated than I would've liked because of
layering. lldbassert is part of Utility while the debugger diagnostics
are implemented in Core.

Differential revision: https://reviews.llvm.org/D152866




More information about the All-commits mailing list