diff --git a/lldb/examples/synthetic/gnu_libstdcpp.py b/lldb/examples/synthetic/gnu_libstdcpp.py --- a/lldb/examples/synthetic/gnu_libstdcpp.py +++ b/lldb/examples/synthetic/gnu_libstdcpp.py @@ -1,5 +1,4 @@ from __future__ import division -import re import lldb.formatters.Logger # C++ STL formatters for LLDB @@ -22,14 +21,14 @@ try: self.payload = self.valobj.GetChildMemberWithName('_M_payload') self.value = self.payload.GetChildMemberWithName('_M_payload') - self.count = self.payload.GetChildMemberWithName('_M_engaged').GetValueAsUnsigned(0) + self.has_value = self.payload.GetChildMemberWithName('_M_engaged').GetValueAsUnsigned(0) == 1 except: - self.count = 0 + self.has_value = 0 return False def num_children(self): - return self.count + return 1 if self.has_value else 0 def get_child_index(self, name): return 0