[all-commits] [llvm/llvm-project] 44bb44: [lldb][DataFormatter] Add dereference support to l...
Michael Buch via All-commits
all-commits at lists.llvm.org
Wed May 24 05:02:15 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 44bb442fd5be3860e7819cb216621b5ea59970c3
https://github.com/llvm/llvm-project/commit/44bb442fd5be3860e7819cb216621b5ea59970c3
Author: Michael Buch <michaelbuch12 at gmail.com>
Date: 2023-05-24 (Wed, 24 May 2023)
Changed paths:
M lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/TestDataFormatterStdSmartPtr.py
M lldb/test/API/functionalities/data-formatter/data-formatter-stl/libstdcpp/smart_ptr/main.cpp
Log Message:
-----------
[lldb][DataFormatter] Add dereference support to libstdcpp std::shared_ptr formatter
This mimicks the implementation of the libstdcpp std::unique_ptr
formatter.
This has been attempted several years ago in
`0789722d85cf1f1fdbe2ffb2245ea0ba034a9f94` but was reverted in
`e7dd3972094c2f2fb42dc9d4d5344e54a431e2ce`.
The difference to the original patch is that we now maintain
a `$$dereference$$` member and we only store weak pointers
to the other children inside the synthetic frontend. This is
what the libc++ formatters do to prevent the recursion mentioned
in the revert commit.
More information about the All-commits
mailing list