Without this patch, the compiler complains “warning: cast from provenance-free integer type to pointer type will give pointer that can not be dereferenced” and some tests fail. * lib/thread-optim.h (_GL_MULTITHREADED_VIA_ELF) [__CHERI_PURE_CAPABILITY__]: Don’t define. --- ChangeLog | 9 +++++++++ lib/thread-optim.h | 9 +++++---- 2 files changed, 14 insertions(+), 4 deletions(-)
diff --git a/ChangeLog b/ChangeLog index ef34e06bb6..2087507129 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2026-08-31 Paul Eggert <[email protected]> + + thread-optim: port to CheriBSD purecap + Without this patch, the compiler complains “warning: cast from + provenance-free integer type to pointer type will give pointer + that can not be dereferenced” and some tests fail. + * lib/thread-optim.h (_GL_MULTITHREADED_VIA_ELF) + [__CHERI_PURE_CAPABILITY__]: Don’t define. + 2026-08-31 Bruno Haible <[email protected]> fenv-exceptions-tracking-c99 tests: Fix test on Solaris 11 OpenIndiana. diff --git a/lib/thread-optim.h b/lib/thread-optim.h index dc097c8046..fe6affb20c 100644 --- a/lib/thread-optim.h +++ b/lib/thread-optim.h @@ -70,10 +70,11 @@ # define gl_multithreaded() 1 # define _GL_MULTITHREADED_ALWAYS_TRUE -#elif defined __ELF__ /* Linux, Hurd, FreeBSD, NetBSD, OpenBSD, Solaris, ... */\ - && HAVE_LINK_H \ - && (HAVE_DL_ITERATE_PHDR /* not Solaris 10, not Haiku */ \ - && !defined __FILC__ /* not Fil-C */) +#elif (defined __ELF__ /* Linux, Hurd, FreeBSD, NetBSD, OpenBSD, ... */ \ + && HAVE_LINK_H \ + && HAVE_DL_ITERATE_PHDR /* not Solaris 10, not Haiku */ \ + && !defined __CHERI_PURE_CAPABILITY__ /* not CheriBSD purecap */ \ + && !defined __FILC__ /* not Fil-C */) /* We can detect whether pthread_create() can be invoked, by looking at the contents of the PLT of the executable and of each shared object. */ -- 2.55.0
