2000-05-10 H.J. Lu <hjl@gnu.org>
authorH.J. Lu <hjl.tools@gmail.com>
Wed, 10 May 2000 23:12:35 +0000 (23:12 +0000)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 10 May 2000 23:12:35 +0000 (23:12 +0000)
* ldlang.c (open_input_bfds): Don't load the same file within
a group again if the whole archive has been loaded already.

ld/ChangeLog
ld/ldlang.c

index 9ada466837e59eb4640e8ac74a52fdb688c9d13b..474658cc388407c0d41d6e8ce9539168e691a37a 100644 (file)
@@ -1,3 +1,8 @@
+2000-05-10  H.J. Lu  <hjl@gnu.org>
+
+       * ldlang.c (open_input_bfds): Don't load the same file within
+       a group again if the whole archive has been loaded already.
+
 2000-05-03  Alan Modra  <alan@linuxcare.com.au>
 
        From Ulf Carlsson <ulfc@engr.sgi.com> and Andreas Jaeger <aj@suse.de>
index 8f0c607b7a1cf9425fee90130dd72259a6d43c33..d43140f06b2fa4970b3833e848110fb1dd2df06f 100644 (file)
@@ -1864,8 +1864,10 @@ open_input_bfds (s, force)
 
              /* If we are being called from within a group, and this
                  is an archive which has already been searched, then
-                 force it to be researched.  */
+                 force it to be researched unless the whole archive
+                has been loaded already.  */
              if (force
+                 && !s->input_statement.whole_archive
                  && s->input_statement.loaded
                  && bfd_check_format (s->input_statement.the_bfd,
                                       bfd_archive))