[Bug debug/53453] darwin linker expects both AT_name and AT_comp_dir debug notes

howarth at nitro dot med.uc.edu gcc-bugzilla@gcc.gnu.org
Tue May 22 14:40:00 GMT 2012


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

--- Comment #2 from Jack Howarth <howarth at nitro dot med.uc.edu> 2012-05-22 13:58:13 UTC ---
(In reply to comment #1)
> It looks like the lines...
> 
>       if (!IS_ABSOLUTE_PATH (filename) && filename[0] != '<')
>         add_comp_dir_attribute (die);
> 
> in gen_compile_unit_die() of dwarf2out.c need adjusted for darwin to
> insure that add_comp_dir_attribute (die) is always called.

I notice later in dwarf2out_finish() of dwarf2out.c that we have...


 if (!IS_ABSOLUTE_PATH (filename))
    add_comp_dir_attribute (comp_unit_die ());
  else if (get_AT (comp_unit_die (), DW_AT_comp_dir) == NULL)
    {
      bool p = false;
      htab_traverse (file_table, file_table_relative_p, &p);
      if (p)
        add_comp_dir_attribute (comp_unit_die ());
    }

perhaps gen_compile_unit_die()  needs a similar else statement?



More information about the Gcc-bugs mailing list