llvm-project/lldb/packages/Python/lldbsuite
Adrian Vogelsgesang 8aa3137551 [LLDB] Do not dereference promise pointer in coroutine_handle pretty printer
So far, the pretty printer for `std::coroutine_handle` internally
dereferenced the contained frame pointer displayed the `promise`
as a sub-value. As noticed in https://reviews.llvm.org/D132624
by @labath, this can lead to an endless loop in lldb during printing
if the coroutine frame pointers form a cycle.

This commit breaks the cycle by exposing the `promise` as a pointer
type instead of a value type. The depth to which the `frame variable`
and the `expression` commands dereference those pointers can be
controlled using the `--ptr-depth` argument.

Differential Revision: https://reviews.llvm.org/D132815
2023-01-31 07:40:31 -08:00
..
support [lldb] Remove uses of six module (NFC) 2022-08-11 19:06:15 -07:00
test [LLDB] Do not dereference promise pointer in coroutine_handle pretty printer 2023-01-31 07:40:31 -08:00
test_event
__init__.py