Debugger: Rework DIETypeUnit.
DIETypeUnit now inherits from DIECompileUnitBase in order to handle things like setting the language info properly. This was previously missing and would lead to occasional crashes with DWARF4.
This commit is contained in:
@@ -2536,8 +2536,6 @@ DIESharedType::AddAttribute_decl_column(uint16 attributeName,
|
||||
|
||||
|
||||
DIETypeUnit::DIETypeUnit()
|
||||
:
|
||||
fLanguage(0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -2549,15 +2547,6 @@ DIETypeUnit::Tag() const
|
||||
}
|
||||
|
||||
|
||||
status_t
|
||||
DIETypeUnit::AddAttribute_language(uint16 attributeName,
|
||||
const AttributeValue& value)
|
||||
{
|
||||
fLanguage = value.constant;
|
||||
return B_OK;
|
||||
}
|
||||
|
||||
|
||||
// #pragma mark - DIETemplateTypeParameterPack
|
||||
|
||||
|
||||
|
||||
@@ -1606,19 +1606,11 @@ private:
|
||||
};
|
||||
|
||||
|
||||
class DIETypeUnit : public DebugInfoEntry {
|
||||
class DIETypeUnit : public DIECompileUnitBase {
|
||||
public:
|
||||
DIETypeUnit();
|
||||
|
||||
virtual uint16 Tag() const;
|
||||
|
||||
uint16 Language() const { return fLanguage; }
|
||||
|
||||
virtual status_t AddAttribute_language(uint16 attributeName,
|
||||
const AttributeValue& value);
|
||||
|
||||
private:
|
||||
uint16 fLanguage;
|
||||
};
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user