glibc:fw/gcc-10-fixes

Last commit made on 2019-07-22
Get this branch:
git clone -b fw/gcc-10-fixes https://git.launchpad.net/glibc

Branch merges

Branch information

Name:
fw/gcc-10-fixes
Repository:
lp:glibc

Recent commits

d5873c6... by Florian Weimer

nptl: Use uintptr_t for address diagnostic in nptl/tst-pthread-getattr

Recent GCC versions warn about the attempt to return the address of a
local variable:

tst-pthread-getattr.c: In function ‘allocate_and_test’:
tst-pthread-getattr.c:54:10: error: function returns address of local variable [-Werror=return-local-addr]
   54 | return mem;
      | ^~~
In file included from ../include/alloca.h:3,
                 from tst-pthread-getattr.c:26:
../stdlib/alloca.h:35:23: note: declared here
   35 | # define alloca(size) __builtin_alloca (size)
      | ^~~~~~~~~~~~~~~~~~~~~~~
tst-pthread-getattr.c:51:9: note: in expansion of macro ‘alloca’
   51 | mem = alloca ((size_t) (mem - target));
      | ^~~~~~

The address itself is used in a check in the caller, so using
uintptr_t instead is reasonable.

c1d1e0c... by Florian Weimer

Linux: Include <linux/sockios.h> in <bits/socket.h> under __USE_MISC

Historically, <asm/socket.h> (which is included from <bits/socket.h>)
provided ioctl operations for sockets. User code accessed them
through <sys/socket.h>. The kernel UAPI headers have removed these
definitions in favor of <linux/sockios.h>. This commit makes them
available via <sys/socket.h> again.

3d03282... by Florian Weimer

build-many-glibcs.py: Use Linux 5.2 by default

87a66e3... by Florian Weimer

Linux: Use in-tree copy of SO_ constants for !__USE_MISC [BZ #24532]

The kernel changes for a 64-bit time_t on 32-bit architectures
resulted in <asm/socket.h> indirectly including <linux/posix_types.h>.
The latter is not namespace-clean for the POSIX version of
<sys/socket.h>.

This issue has persisted across several Linux releases, so this commit
creates our own copy of the SO_* definitions for !__USE_MISC mode.

The new test socket/tst-socket-consts ensures that the copy is
consistent with the kernel definitions (which vary across
architectures). The test is tricky to get right because CPPFLAGS
includes include/libc-symbols.h, which in turn defines _GNU_SOURCE
unconditionally.

Tested with build-many-glibcs.py. I verified that a discrepancy in
the definitions actually results in a failure of the
socket/tst-socket-consts test.

719d81f... by Florian Weimer

scripts/glibcextract.py: Print source code on compiler failure

c7e4b68... by Diego

locale/C-translit.h.in: Cyrillic -> ASCII transliteration [BZ #2872]

This patch adds Cyrillic to plain ASCII transliteration table according
to GOST 7.79-2000 System B standard to the C locale.

 [BZ #2872]
 * locale/C-translit.h.in: Add Cyrillic transliteration.

1f7097d... by Florian Weimer

Linux: Update syscall-names.list to Linux 5.2

This adds the system call names fsconfig, fsmount, fsopen, fspick,
move_mount, open_tree.

Tested with build-many-glibcs.py.

3556658... by Carlos-0

Regenerate po/libc.pot for 2.30 release.

2ab9ad5... by Adhemerval Zanella

nptl: Add POSIX-proposed _clock functions to hppa pthread.h

The pthread _clock functions that were recently added to nptl need to be
declared in hppa's pthread.h too. After this change, the function
declaration part of sysdeps/nptl/pthread.h and
sysdeps/unix/sysv/linux/hppa/pthread.h are identical.

 * sysdeps/unix/sysv/linux/hppa/pthread.h: Add declarations of
 functions recently added to sysdeps/nptl/pthread.h:
 pthread_mutex_clocklock, pthread_rwlock_clockrdlock,
 pthread_rwlock_clockwrlock and pthread_cond_clockwait.

Reviewed-by: Adhemerval Zanella <email address hidden>

4a8f6d3... by Mike Crowe

nptl: Remove unnecessary forwarding of pthread_cond_clockwait from libc

In afe4de7d283ebd88157126c5494ce1796194c16e, I added forwarding functions
from libc to libpthread for __pthread_cond_clockwait and
pthread_cond_clockwait to mirror those for pthread_cond_timedwait. These
are unnecessary[1], since these functions aren't (yet) being called from
within libc itself. Let's remove them.

      * nptl/forward.c: Remove unnecessary __pthread_cond_clockwait and
 pthread_cond_clockwait forwarding functions. There are no internal
 users, so it is unnecessary to expose these functions in libc.so.
 * sysdeps/nptl/pthread-functions.h (pthread_functions): Remove
 unnecessary ptr___pthread_cond_clockwait member.
 * nptl/nptl-init.c (pthread_functions): Remove assignment of
 removed member.

Reviewed-by: Adhemerval Zanella <email address hidden>

[1] https://sourceware.org/ml/libc-alpha/2017-10/msg00082.html