kastiglione created this revision.
kastiglione added reviewers: jingham, bulbazord.
Herald added a project: All.
kastiglione requested review of this revision.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.

It turns out all existing callers of `GetChildMemberWithName` pass true for 
`can_create`.
This change makes `true` the default value, callers don't have to pass an 
opaque true.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D151966

Files:
  lldb/include/lldb/Core/ValueObject.h
  lldb/include/lldb/Core/ValueObjectRegister.h
  lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
  lldb/source/API/SBValue.cpp
  lldb/source/Core/ValueObject.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
  lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
  lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
  lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
  lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
  lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
  lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
  lldb/source/Target/StackFrame.cpp

Index: lldb/source/Target/StackFrame.cpp
===================================================================
--- lldb/source/Target/StackFrame.cpp
+++ lldb/source/Target/StackFrame.cpp
@@ -604,7 +604,7 @@
       valobj_sp = GetValueObjectForFrameVariable(variable_sp, use_dynamic);
       if (!valobj_sp)
         return valobj_sp;
-      valobj_sp = valobj_sp->GetChildMemberWithName(name_const_string, true);
+      valobj_sp = valobj_sp->GetChildMemberWithName(name_const_string);
       if (valobj_sp)
         break;
     }
@@ -705,13 +705,13 @@
           return ValueObjectSP();
         }
       }
-      child_valobj_sp = valobj_sp->GetChildMemberWithName(child_name, true);
+      child_valobj_sp = valobj_sp->GetChildMemberWithName(child_name);
       if (!child_valobj_sp) {
         if (!no_synth_child) {
           child_valobj_sp = valobj_sp->GetSyntheticValue();
           if (child_valobj_sp)
             child_valobj_sp =
-                child_valobj_sp->GetChildMemberWithName(child_name, true);
+                child_valobj_sp->GetChildMemberWithName(child_name);
         }
 
         if (no_synth_child || !child_valobj_sp) {
Index: lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
===================================================================
--- lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
+++ lldb/source/Plugins/LanguageRuntime/ObjC/AppleObjCRuntime/AppleObjCRuntime.cpp
@@ -514,7 +514,7 @@
 ThreadSP AppleObjCRuntime::GetBacktraceThreadFromException(
     lldb::ValueObjectSP exception_sp) {
   ValueObjectSP reserved_dict =
-      exception_sp->GetChildMemberWithName("reserved", true);
+      exception_sp->GetChildMemberWithName("reserved");
   if (!reserved_dict)
     return FailExceptionParsing("Failed to get 'reserved' member.");
 
@@ -567,15 +567,15 @@
 
   if (!return_addresses)
     return FailExceptionParsing("Failed to get return addresses.");
-  auto frames_value = return_addresses->GetChildMemberWithName("_frames", true);
+  auto frames_value = return_addresses->GetChildMemberWithName("_frames");
   if (!frames_value)
     return FailExceptionParsing("Failed to get frames_value.");
   addr_t frames_addr = frames_value->GetValueAsUnsigned(0);
-  auto count_value = return_addresses->GetChildMemberWithName("_cnt", true);
+  auto count_value = return_addresses->GetChildMemberWithName("_cnt");
   if (!count_value)
     return FailExceptionParsing("Failed to get count_value.");
   size_t count = count_value->GetValueAsUnsigned(0);
-  auto ignore_value = return_addresses->GetChildMemberWithName("_ignore", true);
+  auto ignore_value = return_addresses->GetChildMemberWithName("_ignore");
   if (!ignore_value)
     return FailExceptionParsing("Failed to get ignore_value.");
   size_t ignore = ignore_value->GetValueAsUnsigned(0);
Index: lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
===================================================================
--- lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
+++ lldb/source/Plugins/LanguageRuntime/CPlusPlus/CPPLanguageRuntime.cpp
@@ -138,11 +138,10 @@
   //    we will obtain the name from this pointer.
   // 5) a free function. A pointer to the function will stored after the vtable
   //    we will obtain the name from this pointer.
-  ValueObjectSP member_f_(valobj_sp->GetChildMemberWithName("__f_", true));
+  ValueObjectSP member_f_(valobj_sp->GetChildMemberWithName("__f_"));
 
   if (member_f_) {
-    ValueObjectSP sub_member_f_(
-        member_f_->GetChildMemberWithName("__f_", true));
+    ValueObjectSP sub_member_f_(member_f_->GetChildMemberWithName("__f_"));
 
     if (sub_member_f_)
         member_f_ = sub_member_f_;
Index: lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibStdcppUniquePointer.cpp
@@ -69,12 +69,11 @@
   if (!valobj_sp)
     return nullptr;
 
-  ValueObjectSP obj_child_sp = valobj_sp->GetChildMemberWithName("_M_t", true);
+  ValueObjectSP obj_child_sp = valobj_sp->GetChildMemberWithName("_M_t");
   if (!obj_child_sp)
       return nullptr;
 
-  ValueObjectSP obj_subchild_sp =
-      obj_child_sp->GetChildMemberWithName("_M_t", true);
+  ValueObjectSP obj_subchild_sp = obj_child_sp->GetChildMemberWithName("_M_t");
 
   // if there is a _M_t subchild, the tuple is found in the obj_subchild_sp
   // (for libstdc++ 6.0.23).
Index: lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibStdcppTuple.cpp
@@ -73,7 +73,7 @@
         next_child_sp = child_sp;
       } else if (name_str.startswith("std::_Head_base<")) {
         ValueObjectSP value_sp =
-            child_sp->GetChildMemberWithName("_M_head_impl", true);
+            child_sp->GetChildMemberWithName("_M_head_impl");
         if (value_sp) {
           StreamString name;
           name.Printf("[%zd]", m_members.size());
Index: lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibStdcpp.cpp
@@ -110,7 +110,7 @@
     return false;
   m_exe_ctx_ref = valobj_sp->GetExecutionContextRef();
 
-  ValueObjectSP _M_node_sp(valobj_sp->GetChildMemberWithName("_M_node", true));
+  ValueObjectSP _M_node_sp(valobj_sp->GetChildMemberWithName("_M_node"));
   if (!_M_node_sp)
     return false;
 
@@ -392,7 +392,7 @@
   if (!valobj_sp)
     return false;
 
-  auto ptr_obj_sp = valobj_sp->GetChildMemberWithName("_M_ptr", true);
+  auto ptr_obj_sp = valobj_sp->GetChildMemberWithName("_M_ptr");
   if (!ptr_obj_sp)
     return false;
 
@@ -433,7 +433,7 @@
   if (!valobj_sp)
     return false;
 
-  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("_M_ptr", true));
+  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("_M_ptr"));
   if (!ptr_sp)
     return false;
 
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxVector.cpp
@@ -119,7 +119,7 @@
 bool lldb_private::formatters::LibcxxStdVectorSyntheticFrontEnd::Update() {
   m_start = m_finish = nullptr;
   ValueObjectSP data_type_finder_sp(
-      m_backend.GetChildMemberWithName("__end_cap_", true));
+      m_backend.GetChildMemberWithName("__end_cap_"));
   if (!data_type_finder_sp)
     return false;
 
@@ -127,14 +127,14 @@
   case 1:
     // Assume a pre llvm r300140 __compressed_pair implementation:
     data_type_finder_sp =
-        data_type_finder_sp->GetChildMemberWithName("__first_", true);
+        data_type_finder_sp->GetChildMemberWithName("__first_");
     break;
   case 2: {
     // Assume a post llvm r300140 __compressed_pair implementation:
     ValueObjectSP first_elem_parent_sp =
       data_type_finder_sp->GetChildAtIndex(0, true);
     data_type_finder_sp =
-        first_elem_parent_sp->GetChildMemberWithName("__value_", true);
+        first_elem_parent_sp->GetChildMemberWithName("__value_");
     break;
   }
   default:
@@ -149,8 +149,8 @@
 
     if (m_element_size > 0) {
       // store raw pointers or end up with a circular dependency
-      m_start = m_backend.GetChildMemberWithName("__begin_", true).get();
-      m_finish = m_backend.GetChildMemberWithName("__end_", true).get();
+      m_start = m_backend.GetChildMemberWithName("__begin_").get();
+      m_finish = m_backend.GetChildMemberWithName("__end_").get();
     }
   }
   return false;
@@ -247,13 +247,13 @@
   if (!valobj_sp)
     return false;
   m_exe_ctx_ref = valobj_sp->GetExecutionContextRef();
-  ValueObjectSP size_sp(valobj_sp->GetChildMemberWithName("__size_", true));
+  ValueObjectSP size_sp(valobj_sp->GetChildMemberWithName("__size_"));
   if (!size_sp)
     return false;
   m_count = size_sp->GetValueAsUnsigned(0);
   if (!m_count)
     return true;
-  ValueObjectSP begin_sp(valobj_sp->GetChildMemberWithName("__begin_", true));
+  ValueObjectSP begin_sp(valobj_sp->GetChildMemberWithName("__begin_"));
   if (!begin_sp) {
     m_count = 0;
     return false;
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxVariant.cpp
@@ -83,7 +83,7 @@
 
 LibcxxVariantIndexValidity
 LibcxxVariantGetIndexValidity(ValueObjectSP &impl_sp) {
-  ValueObjectSP index_sp(impl_sp->GetChildMemberWithName("__index", true));
+  ValueObjectSP index_sp(impl_sp->GetChildMemberWithName("__index"));
 
   if (!index_sp)
     return LibcxxVariantIndexValidity::Invalid;
@@ -111,7 +111,7 @@
 }
 
 std::optional<uint64_t> LibcxxVariantIndexValue(ValueObjectSP &impl_sp) {
-  ValueObjectSP index_sp(impl_sp->GetChildMemberWithName("__index", true));
+  ValueObjectSP index_sp(impl_sp->GetChildMemberWithName("__index"));
 
   if (!index_sp)
     return {};
@@ -120,15 +120,14 @@
 }
 
 ValueObjectSP LibcxxVariantGetNthHead(ValueObjectSP &impl_sp, uint64_t index) {
-  ValueObjectSP data_sp(impl_sp->GetChildMemberWithName("__data", true));
+  ValueObjectSP data_sp(impl_sp->GetChildMemberWithName("__data"));
 
   if (!data_sp)
     return ValueObjectSP{};
 
   ValueObjectSP current_level = data_sp;
   for (uint64_t n = index; n != 0; --n) {
-    ValueObjectSP tail_sp(
-        current_level->GetChildMemberWithName("__tail", true));
+    ValueObjectSP tail_sp(current_level->GetChildMemberWithName("__tail"));
 
     if (!tail_sp)
       return ValueObjectSP{};
@@ -136,7 +135,7 @@
     current_level = tail_sp;
   }
 
-  return current_level->GetChildMemberWithName("__head", true);
+  return current_level->GetChildMemberWithName("__head");
 }
 } // namespace
 
@@ -265,7 +264,7 @@
   if (!template_type)
     return {};
 
-  ValueObjectSP head_value(nth_head->GetChildMemberWithName("__value", true));
+  ValueObjectSP head_value(nth_head->GetChildMemberWithName("__value"));
 
   if (!head_value)
     return {};
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxUnorderedMap.cpp
@@ -108,8 +108,8 @@
     if (!node_sp || error.Fail())
       return lldb::ValueObjectSP();
 
-    ValueObjectSP value_sp = node_sp->GetChildMemberWithName("__value_", true);
-    ValueObjectSP hash_sp = node_sp->GetChildMemberWithName("__hash_", true);
+    ValueObjectSP value_sp = node_sp->GetChildMemberWithName("__value_");
+    ValueObjectSP hash_sp = node_sp->GetChildMemberWithName("__hash_");
     if (!hash_sp || !value_sp) {
       if (!m_element_type) {
         auto p1_sp = m_backend.GetChildAtNamePath({"__table_", "__p1_"});
@@ -120,13 +120,13 @@
         switch (p1_sp->GetCompilerType().GetNumDirectBaseClasses()) {
         case 1:
           // Assume a pre llvm r300140 __compressed_pair implementation:
-          first_sp = p1_sp->GetChildMemberWithName("__first_", true);
+          first_sp = p1_sp->GetChildMemberWithName("__first_");
           break;
         case 2: {
           // Assume a post llvm r300140 __compressed_pair implementation:
           ValueObjectSP first_elem_parent_sp =
             p1_sp->GetChildAtIndex(0, true);
-          first_sp = p1_sp->GetChildMemberWithName("__value_", true);
+          first_sp = p1_sp->GetChildMemberWithName("__value_");
           break;
         }
         default:
@@ -158,14 +158,14 @@
       if (!m_node_type)
         return nullptr;
       node_sp = node_sp->Cast(m_node_type);
-      value_sp = node_sp->GetChildMemberWithName("__value_", true);
-      hash_sp = node_sp->GetChildMemberWithName("__hash_", true);
+      value_sp = node_sp->GetChildMemberWithName("__value_");
+      hash_sp = node_sp->GetChildMemberWithName("__hash_");
       if (!value_sp || !hash_sp)
         return nullptr;
     }
     m_elements_cache.push_back(
         {value_sp.get(), hash_sp->GetValueAsUnsigned(0)});
-    m_next_element = node_sp->GetChildMemberWithName("__next_", true).get();
+    m_next_element = node_sp->GetChildMemberWithName("__next_").get();
     if (!m_next_element || m_next_element->GetValueAsUnsigned(0) == 0)
       m_next_element = nullptr;
   }
@@ -192,24 +192,23 @@
   m_num_elements = 0;
   m_next_element = nullptr;
   m_elements_cache.clear();
-  ValueObjectSP table_sp = m_backend.GetChildMemberWithName("__table_", true);
+  ValueObjectSP table_sp = m_backend.GetChildMemberWithName("__table_");
   if (!table_sp)
     return false;
 
-  ValueObjectSP p2_sp = table_sp->GetChildMemberWithName("__p2_", true);
+  ValueObjectSP p2_sp = table_sp->GetChildMemberWithName("__p2_");
   ValueObjectSP num_elements_sp = nullptr;
   llvm::SmallVector<llvm::StringRef, 3> next_path;
   switch (p2_sp->GetCompilerType().GetNumDirectBaseClasses()) {
   case 1:
     // Assume a pre llvm r300140 __compressed_pair implementation:
-    num_elements_sp = p2_sp->GetChildMemberWithName("__first_", true);
+    num_elements_sp = p2_sp->GetChildMemberWithName("__first_");
     next_path.append({"__p1_", "__first_", "__next_"});
     break;
   case 2: {
     // Assume a post llvm r300140 __compressed_pair implementation:
     ValueObjectSP first_elem_parent = p2_sp->GetChildAtIndex(0, true);
-    num_elements_sp =
-        first_elem_parent->GetChildMemberWithName("__value_", true);
+    num_elements_sp = first_elem_parent->GetChildMemberWithName("__value_");
     next_path.append({"__p1_", "__value_", "__next_"});
     break;
   }
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxTuple.cpp
@@ -45,10 +45,10 @@
   m_base = nullptr;
 
   ValueObjectSP base_sp;
-  base_sp = m_backend.GetChildMemberWithName("__base_", true);
+  base_sp = m_backend.GetChildMemberWithName("__base_");
   if (!base_sp) {
     // Pre r304382 name of the base element.
-    base_sp = m_backend.GetChildMemberWithName("base_", true);
+    base_sp = m_backend.GetChildMemberWithName("base_");
   }
   if (!base_sp)
     return false;
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxQueue.cpp
@@ -49,7 +49,7 @@
 
 bool QueueFrontEnd::Update() {
   m_container_sp = nullptr;
-  ValueObjectSP c_sp = m_backend.GetChildMemberWithName("c", true);
+  ValueObjectSP c_sp = m_backend.GetChildMemberWithName("c");
   if (!c_sp)
     return false;
   m_container_sp = c_sp->GetSyntheticValue().get();
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxMap.cpp
@@ -215,19 +215,19 @@
     return m_count;
   if (m_tree == nullptr)
     return 0;
-  ValueObjectSP m_item(m_tree->GetChildMemberWithName("__pair3_", true));
+  ValueObjectSP m_item(m_tree->GetChildMemberWithName("__pair3_"));
   if (!m_item)
     return 0;
 
   switch (m_item->GetCompilerType().GetNumDirectBaseClasses()) {
   case 1:
     // Assume a pre llvm r300140 __compressed_pair implementation:
-    m_item = m_item->GetChildMemberWithName("__first_", true);
+    m_item = m_item->GetChildMemberWithName("__first_");
     break;
   case 2: {
     // Assume a post llvm r300140 __compressed_pair implementation:
     ValueObjectSP first_elem_parent = m_item->GetChildAtIndex(0, true);
-    m_item = first_elem_parent->GetChildMemberWithName("__value_", true);
+    m_item = first_elem_parent->GetChildMemberWithName("__value_");
     break;
   }
   default:
@@ -249,7 +249,7 @@
   deref = m_root_node->Dereference(error);
   if (!deref || error.Fail())
     return false;
-  deref = deref->GetChildMemberWithName("__value_", true);
+  deref = deref->GetChildMemberWithName("__value_");
   if (deref) {
     m_element_type = deref->GetCompilerType();
     return true;
@@ -355,7 +355,7 @@
         return lldb::ValueObjectSP();
       }
       GetValueOffset(iterated_sp);
-      auto child_sp = iterated_sp->GetChildMemberWithName("__value_", true);
+      auto child_sp = iterated_sp->GetChildMemberWithName("__value_");
       if (child_sp)
         iterated_sp = child_sp;
       else
@@ -419,10 +419,10 @@
   m_count = UINT32_MAX;
   m_tree = m_root_node = nullptr;
   m_iterators.clear();
-  m_tree = m_backend.GetChildMemberWithName("__tree_", true).get();
+  m_tree = m_backend.GetChildMemberWithName("__tree_").get();
   if (!m_tree)
     return false;
-  m_root_node = m_tree->GetChildMemberWithName("__begin_node_", true).get();
+  m_root_node = m_tree->GetChildMemberWithName("__begin_node_").get();
   return false;
 }
 
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxList.cpp
@@ -34,13 +34,13 @@
   ListEntry next() {
     if (!m_entry_sp)
       return ListEntry();
-    return ListEntry(m_entry_sp->GetChildMemberWithName("__next_", true));
+    return ListEntry(m_entry_sp->GetChildMemberWithName("__next_"));
   }
 
   ListEntry prev() {
     if (!m_entry_sp)
       return ListEntry();
-    return ListEntry(m_entry_sp->GetChildMemberWithName("__prev_", true));
+    return ListEntry(m_entry_sp->GetChildMemberWithName("__prev_"));
   }
 
   uint64_t value() const {
@@ -292,14 +292,13 @@
   if (err.Fail() || !backend_addr)
     return false;
 
-  ValueObjectSP impl_sp(
-      m_backend.GetChildMemberWithName("__before_begin_", true));
+  ValueObjectSP impl_sp(m_backend.GetChildMemberWithName("__before_begin_"));
   if (!impl_sp)
     return false;
   impl_sp = GetFirstValueOfLibCXXCompressedPair(*impl_sp);
   if (!impl_sp)
     return false;
-  m_head = impl_sp->GetChildMemberWithName("__next_", true).get();
+  m_head = impl_sp->GetChildMemberWithName("__next_").get();
   return false;
 }
 
@@ -314,8 +313,7 @@
     return m_count;
   if (!m_head || !m_tail || m_node_address == 0)
     return 0;
-  ValueObjectSP size_alloc(
-      m_backend.GetChildMemberWithName("__size_alloc_", true));
+  ValueObjectSP size_alloc(m_backend.GetChildMemberWithName("__size_alloc_"));
   if (size_alloc) {
     ValueObjectSP value = GetFirstValueOfLibCXXCompressedPair(*size_alloc);
     if (value) {
@@ -408,11 +406,11 @@
   m_node_address = backend_addr->GetValueAsUnsigned(0);
   if (!m_node_address || m_node_address == LLDB_INVALID_ADDRESS)
     return false;
-  ValueObjectSP impl_sp(m_backend.GetChildMemberWithName("__end_", true));
+  ValueObjectSP impl_sp(m_backend.GetChildMemberWithName("__end_"));
   if (!impl_sp)
     return false;
-  m_head = impl_sp->GetChildMemberWithName("__next_", true).get();
-  m_tail = impl_sp->GetChildMemberWithName("__prev_", true).get();
+  m_head = impl_sp->GetChildMemberWithName("__next_").get();
+  m_tail = impl_sp->GetChildMemberWithName("__prev_").get();
   return false;
 }
 
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxInitializerList.cpp
@@ -62,7 +62,7 @@
 size_t lldb_private::formatters::LibcxxInitializerListSyntheticFrontEnd::
     CalculateNumChildren() {
   m_num_elements = 0;
-  ValueObjectSP size_sp(m_backend.GetChildMemberWithName("__size_", true));
+  ValueObjectSP size_sp(m_backend.GetChildMemberWithName("__size_"));
   if (size_sp)
     m_num_elements = size_sp->GetValueAsUnsigned(0);
   return m_num_elements;
@@ -93,7 +93,7 @@
   if (std::optional<uint64_t> size = m_element_type.GetByteSize(nullptr)) {
     m_element_size = *size;
     // Store raw pointers or end up with a circular dependency.
-    m_start = m_backend.GetChildMemberWithName("__begin_", true).get();
+    m_start = m_backend.GetChildMemberWithName("__begin_").get();
   }
 
   return false;
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxxAtomic.cpp
@@ -55,12 +55,12 @@
   if (!non_sythetic)
     return {};
 
-  ValueObjectSP member__a_ = non_sythetic->GetChildMemberWithName("__a_", true);
+  ValueObjectSP member__a_ = non_sythetic->GetChildMemberWithName("__a_");
   if (!member__a_)
     return {};
 
   ValueObjectSP member__a_value =
-      member__a_->GetChildMemberWithName("__a_value", true);
+      member__a_->GetChildMemberWithName("__a_value");
   if (!member__a_value)
     return member__a_;
 
Index: lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/LibCxx.cpp
@@ -38,7 +38,7 @@
 lldb::ValueObjectSP lldb_private::formatters::GetChildMemberWithName(
     ValueObject &obj, llvm::ArrayRef<ConstString> alternative_names) {
   for (ConstString name : alternative_names) {
-    lldb::ValueObjectSP child_sp = obj.GetChildMemberWithName(name, true);
+    lldb::ValueObjectSP child_sp = obj.GetChildMemberWithName(name);
 
     if (child_sp)
       return child_sp;
@@ -52,10 +52,10 @@
   ValueObjectSP value;
   ValueObjectSP first_child = pair.GetChildAtIndex(0, true);
   if (first_child)
-    value = first_child->GetChildMemberWithName("__value_", true);
+    value = first_child->GetChildMemberWithName("__value_");
   if (!value) {
     // pre-r300140 member name
-    value = pair.GetChildMemberWithName("__first_", true);
+    value = pair.GetChildMemberWithName("__first_");
   }
   return value;
 }
@@ -67,12 +67,12 @@
   if (pair.GetNumChildren() > 1) {
     ValueObjectSP second_child = pair.GetChildAtIndex(1, true);
     if (second_child) {
-      value = second_child->GetChildMemberWithName("__value_", true);
+      value = second_child->GetChildMemberWithName("__value_");
     }
   }
   if (!value) {
     // pre-r300140 member name
-    value = pair.GetChildMemberWithName("__second_", true);
+    value = pair.GetChildMemberWithName("__second_");
   }
   return value;
 }
@@ -85,8 +85,7 @@
 
   // An optional either contains a value or not, the member __engaged_ is
   // a bool flag, it is true if the optional has a value and false otherwise.
-  ValueObjectSP engaged_sp(
-      valobj_sp->GetChildMemberWithName("__engaged_", true));
+  ValueObjectSP engaged_sp(valobj_sp->GetChildMemberWithName("__engaged_"));
 
   if (!engaged_sp)
     return false;
@@ -152,7 +151,7 @@
   ValueObjectSP valobj_sp(valobj.GetNonSyntheticValue());
   if (!valobj_sp)
     return false;
-  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_", true));
+  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_"));
   ValueObjectSP count_sp(
       valobj_sp->GetChildAtNamePath({"__cntrl_", "__shared_owners_"}));
   ValueObjectSP weakcount_sp(
@@ -195,7 +194,7 @@
   if (!valobj_sp)
     return false;
 
-  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_", true));
+  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_"));
   if (!ptr_sp)
     return false;
 
@@ -298,7 +297,7 @@
                          nullptr)
                      .get();
     if (m_pair_ptr) {
-      auto __i_(valobj_sp->GetChildMemberWithName("__i_", true));
+      auto __i_(valobj_sp->GetChildMemberWithName("__i_"));
       if (!__i_) {
         m_pair_ptr = nullptr;
         return false;
@@ -457,7 +456,7 @@
           .get();
 
   if (m_iter_ptr) {
-    auto iter_child(valobj_sp->GetChildMemberWithName("__i_", true));
+    auto iter_child(valobj_sp->GetChildMemberWithName("__i_"));
     if (!iter_child) {
       m_iter_ptr = nullptr;
       return false;
@@ -604,10 +603,10 @@
     return lldb::ValueObjectSP();
 
   if (idx == 0)
-    return valobj_sp->GetChildMemberWithName("__ptr_", true);
+    return valobj_sp->GetChildMemberWithName("__ptr_");
 
   if (idx == 1) {
-    if (auto ptr_sp = valobj_sp->GetChildMemberWithName("__ptr_", true)) {
+    if (auto ptr_sp = valobj_sp->GetChildMemberWithName("__ptr_")) {
       Status status;
       auto value_sp = ptr_sp->Dereference(status);
       if (status.Success()) {
@@ -632,8 +631,7 @@
   if (!target_sp)
     return false;
 
-  lldb::ValueObjectSP cntrl_sp(
-      valobj_sp->GetChildMemberWithName("__cntrl_", true));
+  lldb::ValueObjectSP cntrl_sp(valobj_sp->GetChildMemberWithName("__cntrl_"));
 
   m_cntrl = cntrl_sp.get(); // need to store the raw pointer to avoid a circular
                             // dependency
@@ -716,7 +714,7 @@
   if (!valobj_sp)
     return false;
 
-  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_", true));
+  ValueObjectSP ptr_sp(valobj_sp->GetChildMemberWithName("__ptr_"));
   if (!ptr_sp)
     return false;
 
@@ -771,8 +769,7 @@
 // TODO: Support big-endian architectures.
 static std::optional<std::pair<uint64_t, ValueObjectSP>>
 ExtractLibcxxStringInfo(ValueObject &valobj) {
-  ValueObjectSP valobj_r_sp =
-      valobj.GetChildMemberWithName("__r_", /*can_create=*/true);
+  ValueObjectSP valobj_r_sp = valobj.GetChildMemberWithName("__r_");
   if (!valobj_r_sp || !valobj_r_sp->GetError().Success())
     return {};
 
@@ -784,12 +781,11 @@
     return {};
 
   ValueObjectSP valobj_rep_sp =
-      valobj_r_base_sp->GetChildMemberWithName("__value_", /*can_create=*/true);
+      valobj_r_base_sp->GetChildMemberWithName("__value_");
   if (!valobj_rep_sp)
     return {};
 
-  ValueObjectSP l = valobj_rep_sp->GetChildMemberWithName("__l",
-                                                          /*can_create=*/true);
+  ValueObjectSP l = valobj_rep_sp->GetChildMemberWithName("__l");
   if (!l)
     return {};
 
@@ -804,13 +800,12 @@
   uint64_t size;
   uint64_t size_mode_value = 0;
 
-  ValueObjectSP short_sp =
-      valobj_rep_sp->GetChildMemberWithName("__s", /*can_create=*/true);
+  ValueObjectSP short_sp = valobj_rep_sp->GetChildMemberWithName("__s");
   if (!short_sp)
     return {};
 
-  ValueObjectSP is_long = short_sp->GetChildMemberWithName("__is_long_", true);
-  ValueObjectSP size_sp = short_sp->GetChildMemberWithName("__size_", true);
+  ValueObjectSP is_long = short_sp->GetChildMemberWithName("__is_long_");
+  ValueObjectSP size_sp = short_sp->GetChildMemberWithName("__size_");
   if (!size_sp)
     return {};
 
@@ -826,8 +821,7 @@
   }
 
   if (short_mode) {
-    ValueObjectSP location_sp =
-        short_sp->GetChildMemberWithName("__data_", true);
+    ValueObjectSP location_sp = short_sp->GetChildMemberWithName("__data_");
     if (using_bitmasks)
       size = (layout == StringLayout::DSC) ? size_mode_value
                                            : ((size_mode_value >> 1) % 256);
@@ -846,12 +840,9 @@
   }
 
   // we can use the layout_decider object as the data pointer
-  ValueObjectSP location_sp =
-      l->GetChildMemberWithName("__data_", /*can_create=*/true);
-  ValueObjectSP size_vo =
-      l->GetChildMemberWithName("__size_", /*can_create=*/true);
-  ValueObjectSP capacity_vo =
-      l->GetChildMemberWithName("__cap_", /*can_create=*/true);
+  ValueObjectSP location_sp = l->GetChildMemberWithName("__data_");
+  ValueObjectSP size_vo = l->GetChildMemberWithName("__size_");
+  ValueObjectSP capacity_vo = l->GetChildMemberWithName("__cap_");
   if (!size_vo || !location_sp || !capacity_vo)
     return {};
   size = size_vo->GetValueAsUnsigned(LLDB_INVALID_OFFSET);
Index: lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/GenericOptional.cpp
@@ -65,10 +65,10 @@
   ValueObjectSP engaged_sp;
 
   if (m_stdlib == StdLib::LibCxx)
-    engaged_sp = m_backend.GetChildMemberWithName("__engaged_", true);
+    engaged_sp = m_backend.GetChildMemberWithName("__engaged_");
   else if (m_stdlib == StdLib::LibStdcpp)
-    engaged_sp = m_backend.GetChildMemberWithName("_M_payload", true)
-                     ->GetChildMemberWithName("_M_engaged", true);
+    engaged_sp = m_backend.GetChildMemberWithName("_M_payload")
+                     ->GetChildMemberWithName("_M_engaged");
 
   if (!engaged_sp)
     return false;
@@ -92,17 +92,17 @@
     // Currently because it is part of an anonymous union
     // GetChildMemberWithName() does not peer through and find it unless we are
     // at the parent itself. We can obtain the parent through __engaged_.
-    val_sp = m_backend.GetChildMemberWithName("__engaged_", true)
+    val_sp = m_backend.GetChildMemberWithName("__engaged_")
                  ->GetParent()
                  ->GetChildAtIndex(0, true)
-                 ->GetChildMemberWithName("__val_", true);
+                 ->GetChildMemberWithName("__val_");
   else if (m_stdlib == StdLib::LibStdcpp) {
-    val_sp = m_backend.GetChildMemberWithName("_M_payload", true)
-                 ->GetChildMemberWithName("_M_payload", true);
+    val_sp = m_backend.GetChildMemberWithName("_M_payload")
+                 ->GetChildMemberWithName("_M_payload");
 
     // In some implementations, _M_value contains the underlying value of an
     // optional, and in other versions, it's in the payload member.
-    ValueObjectSP candidate = val_sp->GetChildMemberWithName("_M_value", true);
+    ValueObjectSP candidate = val_sp->GetChildMemberWithName("_M_value");
     if (candidate)
       val_sp = candidate;
   }
Index: lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
===================================================================
--- lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
+++ lldb/source/Plugins/Language/CPlusPlus/GenericBitset.cpp
@@ -90,8 +90,8 @@
     size = arg->value.getLimitedValue();
 
   m_elements.assign(size, ValueObjectSP());
-  m_first = m_backend.GetChildMemberWithName(GetDataContainerMemberName(), true)
-                .get();
+  m_first =
+      m_backend.GetChildMemberWithName(GetDataContainerMemberName()).get();
   return false;
 }
 
Index: lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
===================================================================
--- lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
+++ lldb/source/Plugins/ExpressionParser/Clang/ClangUserExpression.cpp
@@ -880,7 +880,7 @@
   // We're inside a C++ class method. This could potentially be an unnamed
   // lambda structure. If the lambda captured a "this", that should be
   // the object pointer.
-  if (auto thisChildSP = valobj_sp->GetChildMemberWithName("this", true)) {
+  if (auto thisChildSP = valobj_sp->GetChildMemberWithName("this")) {
     valobj_sp = thisChildSP;
   }
 
Index: lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
===================================================================
--- lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
+++ lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionUtil.cpp
@@ -18,7 +18,7 @@
   assert(frame);
 
   if (auto this_val_sp = frame->FindVariable(ConstString("this")))
-    if (this_val_sp->GetChildMemberWithName("this", true))
+    if (this_val_sp->GetChildMemberWithName("this"))
       return this_val_sp;
 
   return nullptr;
Index: lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
===================================================================
--- lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
+++ lldb/source/Plugins/ExpressionParser/Clang/ClangExpressionDeclMap.cpp
@@ -76,7 +76,7 @@
   assert(frame);
 
   if (auto thisValSP = frame->FindVariable(ConstString("this")))
-    if (auto thisThisValSP = thisValSP->GetChildMemberWithName("this", true))
+    if (auto thisThisValSP = thisValSP->GetChildMemberWithName("this"))
       return thisThisValSP;
 
   return nullptr;
@@ -1106,7 +1106,7 @@
     auto find_capture = [](ConstString varname,
                            StackFrame *frame) -> ValueObjectSP {
       if (auto lambda = ClangExpressionUtil::GetLambdaValueObject(frame)) {
-        if (auto capture = lambda->GetChildMemberWithName(varname, true)) {
+        if (auto capture = lambda->GetChildMemberWithName(varname)) {
           return capture;
         }
       }
Index: lldb/source/Core/ValueObject.cpp
===================================================================
--- lldb/source/Core/ValueObject.cpp
+++ lldb/source/Core/ValueObject.cpp
@@ -432,7 +432,7 @@
     return GetSP();
   ValueObjectSP root(GetSP());
   for (llvm::StringRef name : names) {
-    root = root->GetChildMemberWithName(name, true);
+    root = root->GetChildMemberWithName(name);
     if (!root) {
       return root;
     }
@@ -2154,7 +2154,7 @@
       {
         child_name.SetString(temp_expression);
         ValueObjectSP child_valobj_sp =
-            root->GetChildMemberWithName(child_name, true);
+            root->GetChildMemberWithName(child_name);
 
         if (child_valobj_sp.get()) // we know we are done, so just return
         {
@@ -2173,7 +2173,7 @@
               child_valobj_sp = root->GetNonSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           case GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
@@ -2182,7 +2182,7 @@
               child_valobj_sp = root->GetSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           case GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
@@ -2191,12 +2191,12 @@
               child_valobj_sp = root->GetNonSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             } else {
               child_valobj_sp = root->GetSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           }
@@ -2224,7 +2224,7 @@
         child_name.SetString(temp_expression.slice(0, next_sep_pos));
 
         ValueObjectSP child_valobj_sp =
-            root->GetChildMemberWithName(child_name, true);
+            root->GetChildMemberWithName(child_name);
         if (child_valobj_sp.get()) // store the new root and move on
         {
           root = child_valobj_sp;
@@ -2242,7 +2242,7 @@
               child_valobj_sp = root->GetNonSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           case GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
@@ -2251,7 +2251,7 @@
               child_valobj_sp = root->GetSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           case GetValueForExpressionPathOptions::SyntheticChildrenTraversal::
@@ -2260,12 +2260,12 @@
               child_valobj_sp = root->GetNonSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             } else {
               child_valobj_sp = root->GetSyntheticValue();
               if (child_valobj_sp.get())
                 child_valobj_sp =
-                    child_valobj_sp->GetChildMemberWithName(child_name, true);
+                    child_valobj_sp->GetChildMemberWithName(child_name);
             }
             break;
           }
@@ -2711,11 +2711,10 @@
     }
 
   } else if (HasSyntheticValue()) {
-    m_deref_valobj = GetSyntheticValue()
-                         ->GetChildMemberWithName("$$dereference$$", true)
-                         .get();
+    m_deref_valobj =
+        GetSyntheticValue()->GetChildMemberWithName("$$dereference$$").get();
   } else if (IsSynthetic()) {
-    m_deref_valobj = GetChildMemberWithName("$$dereference$$", true).get();
+    m_deref_valobj = GetChildMemberWithName("$$dereference$$").get();
   }
 
   if (m_deref_valobj) {
Index: lldb/source/API/SBValue.cpp
===================================================================
--- lldb/source/API/SBValue.cpp
+++ lldb/source/API/SBValue.cpp
@@ -715,7 +715,7 @@
   ValueLocker locker;
   lldb::ValueObjectSP value_sp(GetSP(locker));
   if (value_sp) {
-    child_sp = value_sp->GetChildMemberWithName(name, true);
+    child_sp = value_sp->GetChildMemberWithName(name);
   }
 
   SBValue sb_value;
Index: lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
===================================================================
--- lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
+++ lldb/include/lldb/Core/ValueObjectSyntheticFilter.h
@@ -54,7 +54,7 @@
   lldb::ValueObjectSP GetChildAtIndex(size_t idx, bool can_create) override;
 
   lldb::ValueObjectSP GetChildMemberWithName(llvm::StringRef name,
-                                             bool can_create) override;
+                                             bool can_create = true) override;
 
   size_t GetIndexOfChildWithName(llvm::StringRef name) override;
 
Index: lldb/include/lldb/Core/ValueObjectRegister.h
===================================================================
--- lldb/include/lldb/Core/ValueObjectRegister.h
+++ lldb/include/lldb/Core/ValueObjectRegister.h
@@ -53,7 +53,7 @@
                                   int32_t synthetic_index) override;
 
   lldb::ValueObjectSP GetChildMemberWithName(llvm::StringRef name,
-                                             bool can_create) override;
+                                             bool can_create = true) override;
 
   size_t GetIndexOfChildWithName(llvm::StringRef name) override;
 
Index: lldb/include/lldb/Core/ValueObject.h
===================================================================
--- lldb/include/lldb/Core/ValueObject.h
+++ lldb/include/lldb/Core/ValueObject.h
@@ -487,7 +487,7 @@
                      ConstString *name_of_error = nullptr);
 
   virtual lldb::ValueObjectSP GetChildMemberWithName(llvm::StringRef name,
-                                                     bool can_create);
+                                                     bool can_create = true);
 
   virtual size_t GetIndexOfChildWithName(llvm::StringRef name);
 
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits

Reply via email to