Skip to content
Snippets Groups Projects
Commit 23f0ebbc authored by eric pouech's avatar eric pouech Committed by Alexandre Julliard
Browse files

dbghelp/dwarf: Add definitions of some GNU extensions for FORMs.


And return failure when encoutering them, as they are not supported yet.

Signed-off-by: default avatarEric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard's avatarAlexandre Julliard <julliard@winehq.org>
parent 12a77842
No related branches found
No related tags found
No related merge requests found
......@@ -501,6 +501,8 @@ static void dwarf2_swallow_attribute(dwarf2_traverse_context_t* ctx,
case DW_FORM_block2: step = dwarf2_parse_u2(ctx); break;
case DW_FORM_block4: step = dwarf2_parse_u4(ctx); break;
case DW_FORM_sec_offset:
case DW_FORM_GNU_ref_alt:
case DW_FORM_GNU_strp_alt:
case DW_FORM_strp: step = head->offset_size; break;
default:
FIXME("Unhandled attribute form %lx\n", abbrev_attr->form);
......@@ -633,6 +635,14 @@ static BOOL dwarf2_fill_attr(const dwarf2_parse_context_t* ctx,
TRACE("sec_offset<%s>\n", wine_dbgstr_longlong(attr->u.lluvalue));
break;
case DW_FORM_GNU_ref_alt:
FIXME("Unhandled FORM_GNU_ref_alt\n");
attr->u.uvalue = 0;
return FALSE;
case DW_FORM_GNU_strp_alt:
FIXME("Unhandled FORM_GNU_strp_alt\n");
attr->u.string = NULL;
return FALSE;
default:
FIXME("Unhandled attribute form %lx\n", abbrev_attr->form);
break;
......
......@@ -266,6 +266,10 @@ typedef enum dwarf_form_e
DW_FORM_exprloc = 0x18,
DW_FORM_flag_present = 0x19,
DW_FORM_ref_sig8 = 0x20,
/** GNU extensions */
DW_FORM_GNU_ref_alt = 0x1f20,
DW_FORM_GNU_strp_alt = 0x1f21,
} dwarf_form_t;
/** type encoding */
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment