Re: [RFA] minsyms.c: Fix switching to GNU v3 ABI

Corinna Vinschen
2004-03-22T17:34:33Z

Hi,

could any symlink maintainer have a say on this?

Thanks,
Corinna

On Mar 10 19:22, Corinna Vinschen wrote:
> On Mar 10 18:54, Corinna Vinschen wrote:
> > * minsyms.c (install_minimal_symbols): Move dropping leading
> > char from linkage name from here...
> > (prim_record_minimal_symbol_and_info): ...to here.
>
> Corrected patch below. I forgot to remove the now unused leading_char
> from install_minimal_symbols.
>
> Corinna
>
>
> Index: minsyms.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/minsyms.c,v
> retrieving revision 1.41
> diff -u -p -r1.41 minsyms.c
> --- minsyms.c 9 Feb 2004 19:13:46 -0000 1.41
> +++ minsyms.c 10 Mar 2004 18:20:36 -0000
> @@ -611,6 +611,8 @@ prim_record_minimal_symbol_and_info (con
> msymbol = &msym_bunch->contents[msym_bunch_index];
> SYMBOL_INIT_LANGUAGE_SPECIFIC (msymbol, language_unknown);
> SYMBOL_LANGUAGE (msymbol) = language_auto;
> + if (name[0] == get_symbol_leading_char (objfile->obfd))
> + ++name;
> SYMBOL_SET_NAMES (msymbol, (char *)name, strlen (name), objfile);
>
> SYMBOL_VALUE_ADDRESS (msymbol) = address;
> @@ -831,7 +833,6 @@ install_minimal_symbols (struct objfile
> struct msym_bunch *bunch;
> struct minimal_symbol *msymbols;
> int alloc_count;
> - char leading_char;
>
> if (msym_count > 0)
> {
> @@ -859,18 +860,11 @@ install_minimal_symbols (struct objfile
> each bunch is full. */
>
> mcount = objfile->minimal_symbol_count;
> - leading_char = get_symbol_leading_char (objfile->obfd);
>
> for (bunch = msym_bunch; bunch != NULL; bunch = bunch->next)
> {
> for (bindex = 0; bindex < msym_bunch_index; bindex++, mcount++)
> - {
> - msymbols[mcount] = bunch->contents[bindex];
> - if (SYMBOL_LINKAGE_NAME (&msymbols[mcount])[0] == leading_char)
> - {
> - SYMBOL_LINKAGE_NAME (&msymbols[mcount])++;
> - }
> - }
> + msymbols[mcount] = bunch->contents[bindex];
> msym_bunch_index = BUNCH_SIZE;
> }

--
Corinna Vinschen
Cygwin Developer
Red Hat, Inc.