[all-commits] [llvm/llvm-project] cc380f: [LLDB] Add formatters for MSVC STL map-like types ...

nerix via All-commits all-commits at lists.llvm.org
Wed Jul 23 04:37:26 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: cc380f6e9ba48bfc7fad932d3031141ca88dde53
      https://github.com/llvm/llvm-project/commit/cc380f6e9ba48bfc7fad932d3031141ca88dde53
  Author: nerix <nerixdev at outlook.de>
  Date:   2025-07-23 (Wed, 23 Jul 2025)

  Changed paths:
    M lldb/source/Plugins/Language/CPlusPlus/CMakeLists.txt
    M lldb/source/Plugins/Language/CPlusPlus/CPlusPlusLanguage.cpp
    M lldb/source/Plugins/Language/CPlusPlus/MsvcStl.h
    A lldb/source/Plugins/Language/CPlusPlus/MsvcStlTree.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/map/TestDataFormatterStdMap.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/map/main.cpp
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/multimap/TestDataFormatterGenericMultiMap.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/multiset/TestDataFormatterGenericMultiSet.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/set/TestDataFormatterGenericSet.py
    M lldb/test/API/functionalities/data-formatter/data-formatter-stl/generic/set/main.cpp

  Log Message:
  -----------
  [LLDB] Add formatters for MSVC STL map-like types (#148385)

This PR adds formatters for `std::map`, `std::set`, `std::multimap`,
`std::multiset` as well as their iterators. It's done in one PR because
the types are essentially the same (a tree) except for their value type.
The iterators are required because of the tests.

`MsvcStlTreeIterSyntheticFrontEnd` is based on the libc++ equivalent. As
opposed to `std::list`, there aren't that many duplicates, so I didn't
create a generic type.

For reference, the tree is implemented in
https://github.com/microsoft/STL/blob/313964b78a8fd5a52e7965e13781f735bcce13c5/stl/inc/xtree.

Towards #24834.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list