[Lldb-commits] [lldb] [lldb-dap] Use protocol types for exceptioninfo (PR #165858)
David Spickett via lldb-commits
lldb-commits at lists.llvm.org
Wed Nov 5 05:47:28 PST 2025
DavidSpickett wrote:
The good news is this reproduces on Arm 32-bit just by running it. It's not linked to system load.
> Please, could you please try changing ProtocolRequests.cpp::toJSON( const ExceptionInfoResponseBody &ERB) line 639 from
> result.insert({"description", ERB.description.c_str()}); to
> result.insert({"description", ERB.description}); and rerun the test.
Making this change fixes the test.
> and try getting the output of the following reproducer
Without change:
```
$ ./bin/lldb /tmp/test.o
(lldb) target create "/tmp/test.o"
Current executable set to '/tmp/test.o' (arm).
(lldb) run
Process 3987817 launched: '/tmp/test.o' (arm)
terminate called after throwing an instance of 'std::invalid_argument'
what(): throwing exception for testing
Process 3987817 stopped
* thread #1, name = 'test.o', stop reason = signal SIGABRT
frame #0: 0xf7d1b6c6 libc.so.6`__libc_do_syscall at libc-do-syscall.S:47
(lldb) script
Python Interactive Interpreter. To exit, type 'quit()', 'exit()' or Ctrl-D.
>>> stream = lldb.SBStream()
>>> lldb.thread.GetStopDescription(stream)
True
>>> stream.GetData()
'signal SIGABRT'
>>>
```
With the change the result is the same.
https://github.com/llvm/llvm-project/pull/165858
More information about the lldb-commits
mailing list