From: Pierre Muller Date: Fri, 21 May 2010 20:45:19 +0000 (+0000) Subject: * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=f346a30d48d166e2471126b8121a819ef39e3312;p=binutils-gdb.git * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter attribute. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index b7013541284..067ea48cd4d 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2010-05-21 Pierre Muller + + * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter + attribute. + 2010-05-21 Tom Tromey * dwarf2loc.c (read_pieced_value): Work properly when 'v' has an diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c index f4ef7806427..129d6c1d789 100644 --- a/gdb/dwarf2read.c +++ b/gdb/dwarf2read.c @@ -8664,6 +8664,15 @@ new_symbol (struct die_info *die, struct type *type, struct dwarf2_cu *cu) { dwarf2_const_value (attr, sym, cu); } + attr = dwarf2_attr (die, DW_AT_variable_parameter, cu); + if (attr && DW_UNSND (attr)) + { + struct type *ref_type; + + ref_type = lookup_reference_type (SYMBOL_TYPE (sym)); + SYMBOL_TYPE (sym) = ref_type; + } + add_symbol_to_list (sym, cu->list_in_scope); break; case DW_TAG_unspecified_parameters: