diff options
Diffstat (limited to 'lldb/source/Core/ValueObjectVariable.cpp')
-rw-r--r-- | lldb/source/Core/ValueObjectVariable.cpp | 30 |
1 files changed, 10 insertions, 20 deletions
diff --git a/lldb/source/Core/ValueObjectVariable.cpp b/lldb/source/Core/ValueObjectVariable.cpp index 09e2f1f2476..38c0d91324a 100644 --- a/lldb/source/Core/ValueObjectVariable.cpp +++ b/lldb/source/Core/ValueObjectVariable.cpp @@ -54,13 +54,13 @@ ValueObjectVariable::~ValueObjectVariable() { } -lldb::clang_type_t +ClangASTType ValueObjectVariable::GetClangTypeImpl () { Type *var_type = m_variable_sp->GetType(); if (var_type) return var_type->GetClangForwardType(); - return NULL; + return ClangASTType(); } ConstString @@ -84,34 +84,24 @@ ValueObjectVariable::GetQualifiedTypeName() size_t ValueObjectVariable::CalculateNumChildren() { - ClangASTType type(GetClangAST(), - GetClangType()); + ClangASTType type(GetClangType()); if (!type.IsValid()) return 0; const bool omit_empty_base_classes = true; - return ClangASTContext::GetNumChildren(type.GetASTContext(), type.GetOpaqueQualType(), omit_empty_base_classes); -} - -clang::ASTContext * -ValueObjectVariable::GetClangASTImpl () -{ - Type *var_type = m_variable_sp->GetType(); - if (var_type) - return var_type->GetClangAST(); - return 0; + return type.GetNumChildren(omit_empty_base_classes); } uint64_t ValueObjectVariable::GetByteSize() { - ClangASTType type(GetClangAST(), GetClangType()); + ClangASTType type(GetClangType()); if (!type.IsValid()) return 0; - return type.GetClangTypeByteSize(); + return type.GetByteSize(); } lldb::ValueType @@ -162,7 +152,7 @@ ValueObjectVariable::UpdateValue () loclist_base_load_addr = sc.function->GetAddressRange().GetBaseAddress().GetLoadAddress (target); } Value old_value(m_value); - if (expr.Evaluate (&exe_ctx, GetClangAST(), NULL, NULL, NULL, loclist_base_load_addr, NULL, m_value, &m_error)) + if (expr.Evaluate (&exe_ctx, NULL, NULL, NULL, loclist_base_load_addr, NULL, m_value, &m_error)) { m_resolved_value = m_value; m_value.SetContext(Value::eContextTypeVariable, variable); @@ -191,7 +181,7 @@ ValueObjectVariable::UpdateValue () case Value::eValueTypeScalar: // The variable value is in the Scalar value inside the m_value. // We can point our m_data right to it. - m_error = m_value.GetValueAsData (&exe_ctx, GetClangAST(), m_data, 0, GetModule().get()); + m_error = m_value.GetValueAsData (&exe_ctx, m_data, 0, GetModule().get()); break; case Value::eValueTypeFileAddress: @@ -231,7 +221,7 @@ ValueObjectVariable::UpdateValue () } } - if (ClangASTContext::IsAggregateType (GetClangType())) + if (GetClangType().IsAggregateType()) { // this value object represents an aggregate type whose // children have values, but this object does not. So we @@ -244,7 +234,7 @@ ValueObjectVariable::UpdateValue () // so it can extract read its value into m_data appropriately Value value(m_value); value.SetContext(Value::eContextTypeVariable, variable); - m_error = value.GetValueAsData(&exe_ctx, GetClangAST(), m_data, 0, GetModule().get()); + m_error = value.GetValueAsData(&exe_ctx, m_data, 0, GetModule().get()); } break; } |