Implement handling of DW_AT_artificial for DIEFormalParameter.

This commit is contained in:
Rene Gollent
2011-12-10 16:50:15 -05:00
parent eed9bc771c
commit 03da60709c
2 changed files with 14 additions and 1 deletions
@@ -872,6 +872,15 @@ DIEFormalParameter::AddAttribute_abstract_origin(uint16 attributeName,
} }
status_t
DIEFormalParameter::AddAttribute_artificial(uint16 attributeName,
const AttributeValue& value)
{
fArtificial = value.flag;
return B_OK;
}
status_t status_t
DIEFormalParameter::AddAttribute_const_value(uint16 attributeName, DIEFormalParameter::AddAttribute_const_value(uint16 attributeName,
const AttributeValue& value) const AttributeValue& value)
+5 -1
View File
@@ -558,16 +558,19 @@ public:
const ConstantAttributeValue* ConstValue() const const ConstantAttributeValue* ConstValue() const
{ return &fValue; } { return &fValue; }
bool IsArtificial() const { return fArtificial; }
virtual status_t AddAttribute_abstract_origin( virtual status_t AddAttribute_abstract_origin(
uint16 attributeName, uint16 attributeName,
const AttributeValue& value); const AttributeValue& value);
virtual status_t AddAttribute_artificial(uint16 attributeName,
const AttributeValue& value);
virtual status_t AddAttribute_const_value(uint16 attributeName, virtual status_t AddAttribute_const_value(uint16 attributeName,
const AttributeValue& value); const AttributeValue& value);
virtual status_t AddAttribute_type(uint16 attributeName, virtual status_t AddAttribute_type(uint16 attributeName,
const AttributeValue& value); const AttributeValue& value);
// TODO: // TODO:
// DW_AT_artificial
// DW_AT_default_value // DW_AT_default_value
// DW_AT_endianity // DW_AT_endianity
// DW_AT_is_optional // DW_AT_is_optional
@@ -579,6 +582,7 @@ private:
DebugInfoEntry* fAbstractOrigin; DebugInfoEntry* fAbstractOrigin;
DIEType* fType; DIEType* fType;
ConstantAttributeValue fValue; ConstantAttributeValue fValue;
bool fArtificial;
}; };