[PATCH 00/10] Update tests for GCC 4.9.3 and 5.4.1

Sam James sam@gentoo.org
Sat Dec 14 12:55:55 GMT 2024


"H.J. Lu" <hjl.tools@gmail.com> writes:

> Workaround the following GCC 4.9.3 and 5.4.1 issues in glibc tests:
>
> 1. GCC 4.9 error with
>
> #if expression is true
> #elif expression with undefined macro
>
> 2. elf/ifuncmain9.c fails at run-time when compiled with GCC 5.
> 3. GCC 4.9 constexpr problem.
> 4. __builtin_add_overflow and __builtin_mul_overflow are unavailable.
> 5. Missing braces around initializer errors.
> 6. ATOMIC_INT_LOCK_FREE isn't a CPP constant.
> 7. Unsupported -Wmemset-transposed-args.
> 8. Can't fold "copysign (0, -1)".
>
> Tested with GCC 4.9.3 and GCC 5.4.1.
>
> H.J. Lu (10):
>   include/bits/sigstksz.h: Avoid #elif IS_IN (libsupport)
>   regex.h: Avoid #elif __STDC_VERSION__
>   ifuncmain9.c: Return EXIT_UNSUPPORTED for GCC 5 or older
>   tst-assert-c++.cc: Return EXIT_UNSUPPORTED for GCC 4.9 or older
>   Return EXIT_UNSUPPORTED if __builtin_add_overflow unavailable
>   Add braces in initializers for GCC 4.9 or older
>   Return EXIT_UNSUPPORTED if __builtin_mul_overflow unavailable
>   tst-minsigstksz-1.c: Return EXIT_UNSUPPORTED for GCC 4.9 or older
>   tester.c: Use -Wmemset-transposed-args for GCC 5 or newer
>   Don't use copysign in initializer
>
>  assert/tst-assert-c++.cc                       | 10 ++++++++++
>  elf/ifuncmain9.c                               |  9 +++++++--
>  elf/tst-stringtable.c                          | 10 ++++++++++
>  include/bits/sigstksz.h                        |  6 ++++--
>  io/tst-utimensat-skeleton.c                    |  5 +++++
>  misc/tst-fd_to_filename.c                      | 10 ++++++++++
>  misc/tst-preadvwritev2-common.c                |  2 +-
>  nss/getaddrinfo.c                              |  2 +-
>  posix/regex.h                                  | 18 +++++++++++-------
>  posix/tst-spawn7.c                             |  4 ++--
>  rt/tst-timer-sigmask.c                         |  4 ++--
>  signal/tst-minsigstksz-1.c                     |  2 +-
>  .../tst-printf-format-skeleton-double.c        | 10 ++++++++--
>  .../tst-printf-format-skeleton-ldouble.c       | 10 ++++++++--
>  stdlib/tst-system.c                            |  2 +-
>  string/tester.c                                |  2 ++
>  sysdeps/pthread/tst-cancel28.c                 |  4 ++--
>  sysdeps/unix/sysv/linux/tst-getcwd-smallbuff.c |  4 ++--
>  sysdeps/unix/sysv/linux/tst-getdents64.c       |  7 +++++++
>  .../sysv/linux/tst-socket-timestamp-compat.c   |  4 ++--
>  time/tst-ctime.c                               |  5 +++++
>  time/tst-difftime.c                            |  7 ++++++-
>  time/tst-itimer.c                              | 13 ++++++++-----
>  time/tst-mktime4.c                             |  8 +++++++-
>  24 files changed, 122 insertions(+), 36 deletions(-)

If you have time, could you look at Clang next? If not, I'll put it on
my list. Thanks.


More information about the Libc-alpha mailing list