glibc/glibc-RHEL-55471-9.patch
Tulio Magno Quites Machado Filho e87166d350 Backport fwrite tests and a fix for BZ 29459
Resolves: RHEL-55471
2025-03-10 14:29:47 -03:00

36 lines
1.1 KiB
Diff

Downstream-only patch to restore the extern ABI for functions
like fprintf that use the FILE * type. Rebuilds of applications
receive ABI change reports because of this installed header change
(indirect subtype change in libabigail terms), and given that
this part of struct _IO_FILE is strictly internal, there is no
need to expose this change to installed headers.
diff --git a/libio/bits/types/struct_FILE.h b/libio/bits/types/struct_FILE.h
index 59f316f8a03d9498..ab64e4e43d663333 100644
--- a/libio/bits/types/struct_FILE.h
+++ b/libio/bits/types/struct_FILE.h
@@ -103,15 +103,19 @@ struct _IO_FILE_complete
void *_freeres_buf;
size_t __pad5;
int _mode;
-#if __WORDSIZE == 64
+#ifdef _LIBC
+# if __WORDSIZE == 64
int _unused3;
-#endif
+# endif
__uint64_t _total_written;
-#if __WORDSIZE == 32
+# if __WORDSIZE == 32
int _unused3;
-#endif
+# endif
/* Make sure we don't get into trouble again. */
char _unused2[12 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
+#else
+ char _unused2[15 * sizeof (int) - 4 * sizeof (void *) - sizeof (size_t)];
+#endif
};
/* These macros are used by bits/stdio.h and internal headers. */