diff options
author | Jonathan Wakely <jwakely@redhat.com> | 2025-08-19 17:08:07 +0100 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2025-08-28 17:48:03 +0100 |
commit | 59db4ce2df1db33ad361eca06a7aec99b24d0d2f (patch) | |
tree | 1a2ef73ecafce1ee7bbe7d77b82de5cd21e71b99 /libjava/classpath | |
parent | 3c95766e92d6782eb945593c043a16be096707af (diff) | |
download | gcc-59db4ce2df1db33ad361eca06a7aec99b24d0d2f.zip gcc-59db4ce2df1db33ad361eca06a7aec99b24d0d2f.tar.gz gcc-59db4ce2df1db33ad361eca06a7aec99b24d0d2f.tar.bz2 |
fixincludes: Skip pthread_incomplete_struct_argument for modern glibc [PR118009]
The pthread_incomplete_struct_argument fix was intended for ancient
versions of Glibc (only 2.3.3 and 2.3.4, I believe). From Glibc 2.3.5
the pthread.h header already included the change to use a pointer
instead of an array, so the fixinclude was no longer used.
However, the https://sourceware.org/bugzilla/show_bug.cgi?id=26647 fix
changed the __setjmpbuf declaration to use struct __jmp_buf_tag __env[1]
again, which caused this fixinclude to start matching again. This means
that GCC now installs a "fixed" pthread.h with a change to a declaration
that guarded by #if ! __GNUC_PREREQ (11, 0), i.e. it's not even relevant
for modern versions of GCC. The "fixed" pthread.h causes problems for
users because of changes to internal implementation details of the
pthread_cond_t type, which require the "fixed" pthread.h to be updated
with mkheaders if Glibc is updated.
This change adds a bypass to the fixinclude, so that it no longer
matches modern Glibc versions, and only applies to glibc versions 2.3.3
and 2.3.4 as originally intended.
Also remove outdated reference to svn in the comment at the top of the
generated file.
fixincludes/ChangeLog:
PR bootstrap/118009
PR bootstrap/119089
* inclhack.def (pthread_incomplete_struct_argument): Add bypass.
* fixincl.tpl: Remove reference to svn in comment.
* fixincl.x: Regenerate.
Reviewed-by: Jason Merrill <jason@redhat.com>
Diffstat (limited to 'libjava/classpath')
0 files changed, 0 insertions, 0 deletions