summaryrefslogtreecommitdiff
path: root/lldb/source/Plugins/Language/CPlusPlus/MsvcStlTuple.cpp
AgeCommit message (Collapse)Author
2025-07-15[LLDB] Add formatters for MSVC STL std::tuple (#148548)nerix
Adds synthetic children for MSVC STL's [`std::tuple`](https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/inc/tuple). A `tuple` is a chain of base classes: ```cpp template <> class tuple<> {}; template <class _This, class... _Rest> class tuple<_This, _Rest...> : private tuple<_Rest...> { _Tuple_val<_This> _Myfirst; }; ``` So the provider walks the base classes to the desired one. The implementation makes it hard to detect if the empty tuple is from this STL. Fortunately, libstdc++'s synthetic children provider works for empty MSVC STL tuples as well. Towards #24834.