This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


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

Re: Binutils 2.11.x problems with oracle 9i


On Thu, Jun 28, 2001 at 02:18:23PM +0930, Alan Modra wrote:
> On Wed, Jun 27, 2001 at 05:31:24PM -0700, H . J . Lu wrote:
> >Alan, what happened to your patch:
> > 
> > http://sources.redhat.com/ml/binutils/2001-02/msg00094.html
> 
> I forgot about it. :)  Committing.

No, I'm not committing.  I remember now why I didn't, and that's
because both your and my patch are somewhat bogus.  (Mine as
posted even more so because it was wrong).  Anyway, we would
end up with something like

  if (! finfo->info->relocateable
      && ! finfo->info->allow_shlib_undefined
      && h->root.type == bfd_link_hash_undefined
      && (! finfo->info->shared
	  || (finfo->info->no_undefined
	      && (h->root.u.undef.abfd->flags & DYNAMIC) == 0))
      && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_DYNAMIC) != 0
      && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_REGULAR) == 0)

Considering the shared case, I reckon that

      (h->root.u.undef.abfd->flags & DYNAMIC) == 0
      && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_DYNAMIC) != 0
      && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_REGULAR) == 0

is always false.  So we really just want to revert one of rth's changes.

bfd/ChangeLog
	* elflink.h (elf_link_output_extsym): Revert 1999-04-10.

-- 
Alan Modra

Index: bfd/elflink.h
===================================================================
RCS file: /cvs/src/src/bfd/elflink.h,v
retrieving revision 1.98
diff -u -p -r1.98 elflink.h
--- elflink.h	2001/06/20 20:34:10	1.98
+++ elflink.h	2001/06/28 06:29:31
@@ -5227,8 +5227,7 @@ elf_link_output_extsym (h, data)
      warnings for them.  */
   if (! finfo->info->relocateable
       && ! finfo->info->allow_shlib_undefined
-      && ! (finfo->info->shared
-	    && !finfo->info->no_undefined)
+      && ! finfo->info->shared
       && h->root.type == bfd_link_hash_undefined
       && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_DYNAMIC) != 0
       && (h->elf_link_hash_flags & ELF_LINK_HASH_REF_REGULAR) == 0)


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