This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: More "catch assert" Ada failures


On Mon, Jun 04, 2007 at 02:31:54PM -0700, Joel Brobecker wrote:
> With the help of Eric Botcazou, we determined GCC built straight from
> the FSF tree follows our encoding, and thus does not have the "__"
> replaced by dots. So it looks like it's something that the Debian
> version of GCC might be doing differently. Apparently, the name
> attribute generation is generated by:
> 
>   /* Generate a DW_AT_name attribute given some string value to be included as
>      the value of the attribute.  */
> 
>   static void
>   add_name_attribute (dw_die_ref die, const char *name_string)
>   {
>     if (name_string != NULL && *name_string != 0)
>       {
>         if (demangle_name_func)
>           name_string = (*demangle_name_func) (name_string);
> 
>         add_AT_string (die, DW_AT_name, name_string);
>       }
>   }
> 
> In our case (GNAT compiler), demangle_name_func is NULL, so we
> emit the encoded name without any modification. Maybe that's
> where Debian GCC does things differently?

It's got to be something else; nothing in this package calls
dwarf2out_set_demangle_name_func.  But add_name_attribute is called
with the result of dwarf2_name which comes from decl_printable_name.
I'd always expect that to give the dotted form...

Aha:

2006-10-31  Eric Botcazou  <ebotcazou@adacore.com>
            Nicolas Setton  <setton@adacore.com>
            Olivier Hainque  <hainque@adacore.com>
            Gary Dismukes  <dismukes@adacore.com>

	...

        * misc.c (gnat_dwarf_name): New function.
        (LANG_HOOKS_DWARF_NAME): Define to gnat_dwarf_name.
        (gnat_post_options): Add comment about structural alias
	analysis.
        (gnat_parse_file): Do not call cgraph_optimize here.
        (LANG_HOOKS_WRITE_GLOBALS): Define to
	gnat_write_global_declarations.

Nothing before there is going to put the mangled name in DWARF info.
I don't know if that means 4.2 or 4.3.

-- 
Daniel Jacobowitz
CodeSourcery


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]