Am Freitag, 25. Juli 2025, 20:51:41 Mitteleuropäische Sommerzeit schrieb Sam James: > Cherry picked from LLVM commit c99b1bcd505064f2e086e6b1034ce0b0c91ea5b9. >
FWIW I can confirm that this fixes the build of gcc on ppc64 (both BE and LE) with glibc-2.42. [ * The constants are removed in future glibc-2.42, so you need that to reproduce it. * Other architectures (than ppc64) are currently not affected since the constants are present in linux-headers there. ] > The termio ioctls are no longer used after commit 59978b21ad9c > ("[sanitizer_common] Remove interceptors for deprecated struct termio > (#137403)"), remove them. Fixes this build error: > > ../../../../libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:765:27: > error: invalid application of ‘sizeof’ to incomplete type > ‘__sanitizer::termio’ > 765 | unsigned IOCTL_TCGETA = TCGETA; > | ^~~~~~ > ../../../../libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:769:27: > error: invalid application of ‘sizeof’ to incomplete type > ‘__sanitizer::termio’ > 769 | unsigned IOCTL_TCSETA = TCSETA; > | ^~~~~~ > ../../../../libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:770:28: > error: invalid application of ‘sizeof’ to incomplete type > ‘__sanitizer::termio’ > 770 | unsigned IOCTL_TCSETAF = TCSETAF; > | ^~~~~~~ > ../../../../libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp:771:28: > error: invalid application of ‘sizeof’ to incomplete type > ‘__sanitizer::termio’ > 771 | unsigned IOCTL_TCSETAW = TCSETAW; > | ^~~~~~~ > --- > We need this for imminent glibc-2.42. Testing running now. OK if that > succeeds? Ideally for backports too after some soak time? (Note that > we already backported Florian's r16-360-g1789c57dc97ea2 to 15, this > change is a followup to that, and I'd like to backport his change further > back as well). > > .../sanitizer_common/sanitizer_platform_limits_posix.cpp | 4 ---- > .../sanitizer_common/sanitizer_platform_limits_posix.h | 4 ---- > 2 files changed, 8 deletions(-) > > diff --git > a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp > b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp > index 490e75fe8f65..9856ac3c3ec4 100644 > --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp > +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.cpp > @@ -762,13 +762,9 @@ unsigned struct_ElfW_Phdr_sz = sizeof(Elf_Phdr); > unsigned IOCTL_SOUND_PCM_WRITE_FILTER = SOUND_PCM_WRITE_FILTER; > #endif // SOUND_VERSION > unsigned IOCTL_TCFLSH = TCFLSH; > - unsigned IOCTL_TCGETA = TCGETA; > unsigned IOCTL_TCGETS = TCGETS; > unsigned IOCTL_TCSBRK = TCSBRK; > unsigned IOCTL_TCSBRKP = TCSBRKP; > - unsigned IOCTL_TCSETA = TCSETA; > - unsigned IOCTL_TCSETAF = TCSETAF; > - unsigned IOCTL_TCSETAW = TCSETAW; > unsigned IOCTL_TCSETS = TCSETS; > unsigned IOCTL_TCSETSF = TCSETSF; > unsigned IOCTL_TCSETSW = TCSETSW; > diff --git a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h > b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h > index a80df656826e..cfac4903b76b 100644 > --- a/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h > +++ b/libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h > @@ -1274,13 +1274,9 @@ extern unsigned IOCTL_SNDCTL_COPR_SENDMSG; > extern unsigned IOCTL_SNDCTL_COPR_WCODE; > extern unsigned IOCTL_SNDCTL_COPR_WDATA; > extern unsigned IOCTL_TCFLSH; > -extern unsigned IOCTL_TCGETA; > extern unsigned IOCTL_TCGETS; > extern unsigned IOCTL_TCSBRK; > extern unsigned IOCTL_TCSBRKP; > -extern unsigned IOCTL_TCSETA; > -extern unsigned IOCTL_TCSETAF; > -extern unsigned IOCTL_TCSETAW; > extern unsigned IOCTL_TCSETS; > extern unsigned IOCTL_TCSETSF; > extern unsigned IOCTL_TCSETSW; > > base-commit: ba5a6787374dea3e90f09771134d16b9f6d2714e > -- Andreas K. Hüttel dilfri...@gentoo.org Gentoo Linux developer (council, toolchain, base-system, perl, libreoffice)
signature.asc
Description: This is a digitally signed message part.