hrev46991 adds 1 changeset to branch 'master' old head: 84e7206b05947b1d3d87ad189d195348de3dcfcd new head: c9eb4468ca170d8a13ac61b1c9b5c2ec302092fd overview: http://cgit.haiku-os.org/haiku/log/?qt=range&q=c9eb446+%5E84e7206 ---------------------------------------------------------------------------- c9eb446: Debugger: Add handling for rvalue reference type entries. Fixes part of #10659. [ Rene Gollent <rene@xxxxxxxxxxx> ] ---------------------------------------------------------------------------- Revision: hrev46991 Commit: c9eb4468ca170d8a13ac61b1c9b5c2ec302092fd URL: http://cgit.haiku-os.org/haiku/commit/?id=c9eb446 Author: Rene Gollent <rene@xxxxxxxxxxx> Date: Sat Mar 8 17:44:46 2014 UTC Ticket: https://dev.haiku-os.org/ticket/10659 ---------------------------------------------------------------------------- 2 files changed, 28 insertions(+), 2 deletions(-) src/apps/debugger/dwarf/DebugInfoEntries.cpp | 20 +++++++++++++++++++- src/apps/debugger/dwarf/DebugInfoEntries.h | 10 +++++++++- ---------------------------------------------------------------------------- diff --git a/src/apps/debugger/dwarf/DebugInfoEntries.cpp b/src/apps/debugger/dwarf/DebugInfoEntries.cpp index 4c52889..17154bb 100644 --- a/src/apps/debugger/dwarf/DebugInfoEntries.cpp +++ b/src/apps/debugger/dwarf/DebugInfoEntries.cpp @@ -1,6 +1,6 @@ /* * Copyright 2009, Ingo Weinhold, ingo_weinhold@xxxxxx. - * Copyright 2011-2013, Rene Gollent, rene@xxxxxxxxxxx. + * Copyright 2011-2014, Rene Gollent, rene@xxxxxxxxxxx. * Distributed under the terms of the MIT License. */ @@ -2573,6 +2573,21 @@ DIETypeUnit::Tag() const } +// #pragma mark - DIERValueReferenceType + + +DIERValueReferenceType::DIERValueReferenceType() +{ +} + + +uint16 +DIERValueReferenceType::Tag() const +{ + return DW_TAG_rvalue_reference_type; +} + + // #pragma mark - DIETemplateTemplateParameter @@ -2969,6 +2984,9 @@ DebugInfoEntryFactory::CreateDebugInfoEntry(uint16 tag, DebugInfoEntry*& _entry) case DW_TAG_type_unit: entry = new(std::nothrow) DIETypeUnit; break; + case DW_TAG_rvalue_reference_type: + entry = new(std::nothrow) DIERValueReferenceType; + break; case DW_TAG_GNU_template_template_param: entry = new(std::nothrow) DIETemplateTemplateParameter; break; diff --git a/src/apps/debugger/dwarf/DebugInfoEntries.h b/src/apps/debugger/dwarf/DebugInfoEntries.h index 66eb2db..88de47a 100644 --- a/src/apps/debugger/dwarf/DebugInfoEntries.h +++ b/src/apps/debugger/dwarf/DebugInfoEntries.h @@ -1,6 +1,6 @@ /* * Copyright 2009, Ingo Weinhold, ingo_weinhold@xxxxxx. - * Copyright 2013, Rene Gollent, rene@xxxxxxxxxxx. + * Copyright 2013-2014, Rene Gollent, rene@xxxxxxxxxxx. * Distributed under the terms of the MIT License. */ #ifndef DEBUG_INFO_ENTRIES_H @@ -1633,6 +1633,14 @@ public: }; +class DIERValueReferenceType : public DIEReferenceType { +public: + DIERValueReferenceType(); + + virtual uint16 Tag() const; +}; + + class DIETemplateTemplateParameter : public DIEDeclaredBase { public: DIETemplateTemplateParameter();