* dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter
authorPierre Muller <muller@sourceware.org>
Fri, 21 May 2010 20:45:19 +0000 (20:45 +0000)
committerPierre Muller <muller@sourceware.org>
Fri, 21 May 2010 20:45:19 +0000 (20:45 +0000)
attribute.

gdb/ChangeLog
gdb/dwarf2read.c

index b7013541284f9937441657f7c35d1fbc561d0ecd..067ea48cd4d462f786b56887b8321de9bbee8cef 100644 (file)
@@ -1,3 +1,8 @@
+2010-05-21  Pierre Muller  <muller@ics.u-strasbg.fr>
+
+       * dwarf2read.c (new_symbol): Handle DW_AT_variable_parameter
+       attribute.
+
 2010-05-21  Tom Tromey  <tromey@redhat.com>
 
        * dwarf2loc.c (read_pieced_value): Work properly when 'v' has an
index f4ef780642748a70f806336b219481b64803094b..129d6c1d78926b4a9b2255671f207d31c78fe47f 100644 (file)
@@ -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: