https://github.com/Nerixyz updated 
https://github.com/llvm/llvm-project/pull/148176

>From 0e6da6450866758c2b8a0bca7ecc5b43f4ade268 Mon Sep 17 00:00:00 2001
From: Nerixyz <nerix...@outlook.de>
Date: Fri, 11 Jul 2025 11:51:51 +0200
Subject: [PATCH 1/2] [LLDB] Use non synthetic value for MSVC smart ptr check

---
 lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp 
b/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
index 4a51879863f17..b5a85ab5deb8b 100644
--- a/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
+++ b/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
@@ -15,7 +15,8 @@
 using namespace lldb;
 
 bool lldb_private::formatters::IsMsvcStlSmartPointer(ValueObject &valobj) {
-  return valobj.GetChildMemberWithName("_Ptr") != nullptr;
+  ValueObjectSP valobj_sp = valobj.GetNonSyntheticValue();
+  return valobj_sp->GetChildMemberWithName("_Ptr") != nullptr;
 }
 
 bool lldb_private::formatters::MsvcStlSmartPointerSummaryProvider(

>From 1e03a7b12e89c1909939528039c7a7116c0a1eca Mon Sep 17 00:00:00 2001
From: nerix <ner...@hotmail.de>
Date: Fri, 11 Jul 2025 12:32:41 +0200
Subject: [PATCH 2/2] fix: check if non-synthetic exists

Co-authored-by: Michael Buch <michaelbuc...@gmail.com>
---
 .../Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp      | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp 
b/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
index b5a85ab5deb8b..11eaaced65eac 100644
--- a/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
+++ b/lldb/source/Plugins/Language/CPlusPlus/MsvcStlSmartPointer.cpp
@@ -15,8 +15,10 @@
 using namespace lldb;
 
 bool lldb_private::formatters::IsMsvcStlSmartPointer(ValueObject &valobj) {
-  ValueObjectSP valobj_sp = valobj.GetNonSyntheticValue();
-  return valobj_sp->GetChildMemberWithName("_Ptr") != nullptr;
+  if (auto valobj_sp = valobj.GetNonSyntheticValue())
+    return valobj_sp->GetChildMemberWithName("_Ptr") != nullptr;
+
+   return false;
 }
 
 bool lldb_private::formatters::MsvcStlSmartPointerSummaryProvider(

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to