ValueObjectSynthetic could be wrapping a ValueObjectDynamic. In that case, we want to report that the ValueObject is dynamic since synthetic values are supposed to be just their parent with different children

llvm-svn: 175563
This commit is contained in:
Enrico Granata 2013-02-19 22:03:00 +00:00
parent 086f6cde5d
commit 4c5b3f7df6
2 changed files with 16 additions and 4 deletions

View File

@ -83,7 +83,19 @@ public:
virtual bool
IsDynamic ()
{
return false;
if (m_parent)
return m_parent->IsDynamic();
else
return false;
}
virtual lldb::DynamicValueType
GetDynamicValueType ()
{
if (m_parent)
return m_parent->GetDynamicValueType();
else
return lldb::eNoDynamicValues;
}
virtual ValueObject *

View File

@ -115,9 +115,9 @@ ValueObjectSynthetic::GetDynamicValue (lldb::DynamicValueType valueType)
{
if (!m_parent)
return lldb::ValueObjectSP();
if (m_parent->IsDynamic() && m_parent->GetDynamicValueType() == valueType)
return m_parent->GetSP();
return ValueObject::GetDynamicValue(valueType);
if (IsDynamic() && GetDynamicValueType() == valueType)
return GetSP();
return m_parent->GetDynamicValue(valueType);
}
bool