Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/src/external/gpl3/binutils/dist/libiberty/simple-object-xcoff.c,v rcsdiff: /ftp/cvs/cvsroot/src/external/gpl3/binutils/dist/libiberty/simple-object-xcoff.c,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.1.1.2 retrieving revision 1.1.1.2.2.1 diff -u -p -r1.1.1.2 -r1.1.1.2.2.1 --- src/external/gpl3/binutils/dist/libiberty/simple-object-xcoff.c 2018/04/14 22:18:25 1.1.1.2 +++ src/external/gpl3/binutils/dist/libiberty/simple-object-xcoff.c 2019/06/10 21:52:25 1.1.1.2.2.1 @@ -596,15 +596,24 @@ simple_object_xcoff_find_sections (simpl aux = (unsigned char *) auxent; if (u64) { + /* Use an intermediate 64-bit type to avoid + compilation warning about 32-bit shift below on + hosts with 32-bit off_t which aren't supported by + AC_SYS_LARGEFILE. */ + ulong_type x_scnlen64; + if ((auxent->u.xcoff64.x_csect.x_smtyp & 0x7) != XTY_SD || auxent->u.xcoff64.x_csect.x_smclas != XMC_XO) continue; - x_scnlen = fetch_32 (aux + offsetof (union external_auxent, - u.xcoff64.x_csect.x_scnlen_hi)); - x_scnlen = x_scnlen << 32 - | fetch_32 (aux + offsetof (union external_auxent, - u.xcoff64.x_csect.x_scnlen_lo)); + x_scnlen64 = + fetch_32 (aux + offsetof (union external_auxent, + u.xcoff64.x_csect.x_scnlen_hi)); + x_scnlen = + ((x_scnlen64 << 32) + | fetch_32 (aux + + offsetof (union external_auxent, + u.xcoff64.x_csect.x_scnlen_lo))); } else {