------- Comment #4 from pinskia at gcc dot gnu dot org  2006-09-20 06:09 -------
Actually, wait GCC outputs the correct thing:
        case dw_val_class_die_ref:
          if (AT_ref_external (a))
            {
              char *sym = AT_ref (a)->die_symbol;

              gcc_assert (sym);
              dw2_asm_output_offset (DWARF2_ADDR_SIZE, sym, debug_info_section,
                                     "%s", name);
            }
          else
            {
              gcc_assert (AT_ref (a)->die_offset);
              dw2_asm_output_data (DWARF_OFFSET_SIZE, AT_ref (a)->die_offset,
                                   "%s", name);
            }

....
    case dw_val_class_die_ref:
      if (AT_ref_external (a))
        return DW_FORM_ref_addr;
      else
        return DW_FORM_ref;

So we really output dwarf2 (and not dwarf3 and this is invalid.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |RESOLVED
         Resolution|                            |INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29146

Reply via email to