alexandreyy created this revision.
alexandreyy added reviewers: labath, clayborg.
Std unique pointers were not being printed. The unique pointer layout was
changed in libstdc++ 6.0.23.
https://reviews.llvm.org/D44015
Files:
source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
Index: source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
===================================================================
--- source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
+++ source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
@@ -64,6 +64,16 @@
ValueObjectSP tuple_sp =
valobj_sp->GetChildMemberWithName(ConstString("_M_t"), true);
+
+ ValueObjectSP tuple_sp_child =
+ tuple_sp->GetChildMemberWithName(ConstString("_M_t"), true);
+
+ /* if there is a _M_t child, the pointers are found in the
+ * tuple_sp_child (for libstdc++ 6.0.23). */
+ if (tuple_sp_child) {
+ tuple_sp = tuple_sp_child;
+ }
+
if (!tuple_sp)
return false;
Index: source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
===================================================================
--- source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
+++ source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
@@ -64,6 +64,16 @@
ValueObjectSP tuple_sp =
valobj_sp->GetChildMemberWithName(ConstString("_M_t"), true);
+
+ ValueObjectSP tuple_sp_child =
+ tuple_sp->GetChildMemberWithName(ConstString("_M_t"), true);
+
+ /* if there is a _M_t child, the pointers are found in the
+ * tuple_sp_child (for libstdc++ 6.0.23). */
+ if (tuple_sp_child) {
+ tuple_sp = tuple_sp_child;
+ }
+
if (!tuple_sp)
return false;
_______________________________________________
lldb-commits mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits