bug-binutils
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug ld/7027] 64-bit libstdc++.so fails to link on Solaris 11/SPARC:


From: Nick Clifton
Subject: Re: [Bug ld/7027] 64-bit libstdc++.so fails to link on Solaris 11/SPARC: could not read symbols: Bad value
Date: Fri, 14 Nov 2008 14:49:49 +0000
User-agent: Thunderbird 2.0.0.16 (X11/20080723)

Hi Rainer,

+             if ((! ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == 
R_SPARC_PLT32)
+                 || (ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == 
R_SPARC_PLT64))

The ABI_64_P() part doesn't trigger since ELF32_R_TYPE (rel->r_info) is 18
(i.e. R_SPARC_WPLT30) at this point.  I don't really have an idea why/if
the 32-bit part works.

As a matter of interest if you change this to:

  if ((! ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == R_SPARC_PLT32)
   || (ABI_64_P (abfd) && ELF32_R_TYPE (rel->r_info) == R_SPARC_WPLT30))

does the patch then work ? (I agree that the 32-bit case does seem rather mysterious).

Cheers
  Nick





reply via email to

[Prev in Thread] Current Thread [Next in Thread]