https://sourceware.org/bugzilla/show_bug.cgi?id=19073

--- Comment #4 from Andreas Krebbel <krebbel at linux dot vnet.ibm.com> ---
(gdb) p name
$1 = 0x8024eab7 "setjmp"
(gdb) p shortname
$2 = 0x3ff77b15020 "setjmp"
(gdb) p shortlen
$3 = 18446744071559648585
(gdb) l
1722
1723      shortlen = p - name;
1724      shortname = (char *) bfd_hash_allocate (&info->hash->table, shortlen
+ 1);
1725      if (shortname == NULL)
1726        return FALSE;
1727      memcpy (shortname, name, shortlen);
1728      shortname[shortlen] = '\0';
1729
1730      /* We are going to create a new symbol.  Merge it with any existing
1731         symbol with this name.  For the purposes of the merge, act as
(gdb) p p
$4 = 0x0
(gdb) p name
$5 = 0x8024eab7 "setjmp"
(gdb) p h->versioned
$6 = versioned

The problem is that there might be symbols marked as versioned but without
having @ in its names. p is NULL then.

We have that with setjmp in Glibc:
234157: 0000000000015030     8 FUNC    WEAK   DEFAULT    2 setjmp@@GLIBC_2.2
234509: 0000000000015030     8 FUNC    WEAK   DEFAULT    2 setjmp

-- 
You are receiving this mail because:
You are on the CC list for the bug.

_______________________________________________
bug-binutils mailing list
bug-binutils@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-binutils

Reply via email to