diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b12b46590c6ce0a87134cc4e6d4fea5b84116814..95a808c36eefc4e52670707ffec9fa72c2d69076 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2013-02-03 David Edelsohn <dje.gcc@gmail.com> + Andrew Dixie <andrewd@gentrack.com> + + * collect2.c (GCC_CHECK_HDR): Do not scan objects with F_LOADONLY + flag set. + 2013-02-03 Richard Sandiford <rdsandiford@googlemail.com> * expmed.c (extract_bit_field_1): Pass the full width of the diff --git a/gcc/collect2.c b/gcc/collect2.c index 93a8429d226ae888216cf6d0a03ddeeb02b69239..0db908f2636d5f4ab4b4c1648370e844a4543f2b 100644 --- a/gcc/collect2.c +++ b/gcc/collect2.c @@ -2763,12 +2763,14 @@ scan_libraries (const char *prog_name) /* 0757 = U803XTOCMAGIC (AIX 4.3) and 0767 = U64_TOCMAGIC (AIX V5) */ #if TARGET_AIX_VERSION >= 51 # define GCC_CHECK_HDR(X) \ - ((HEADER (X).f_magic == U802TOCMAGIC && ! aix64_flag) \ - || (HEADER (X).f_magic == 0767 && aix64_flag)) + (((HEADER (X).f_magic == U802TOCMAGIC && ! aix64_flag) \ + || (HEADER (X).f_magic == 0767 && aix64_flag)) \ + && !(HEADER (X).f_flags & F_LOADONLY)) #else # define GCC_CHECK_HDR(X) \ - ((HEADER (X).f_magic == U802TOCMAGIC && ! aix64_flag) \ - || (HEADER (X).f_magic == 0757 && aix64_flag)) + (((HEADER (X).f_magic == U802TOCMAGIC && ! aix64_flag) \ + || (HEADER (X).f_magic == 0757 && aix64_flag)) \ + && !(HEADER (X).f_flags & F_LOADONLY)) #endif #endif