Re: x32: mariadb: if defined __ILP32__ and __x86_64__ ?
наб <[email protected]> Wed, 3 Jul 2024 13:40:23 +0200
| Newsgroups | gmane.linux.debian.ports.amd64 |
|---|---|
| Message-ID | <ajnqnbjljauqr26ahjvisd66lxuwpqitdb6axibo2yggaetned@tarta.nabijaczleweli.xyz> |
Hi! On Tue, Jul 02, 2024 at 09:05:14PM -0700, Otto Kekäläinen wrote: > tests/mysql_client_fw.c > @@ -1442 > > #if defined __x86_64__ > compile_time_assert(sizeof(MYSQL) == 1272); > #elif defined __i386__ > compile_time_assert(sizeof(MYSQL) == 964); > #endif > > How should I fix this for x32? What is the preprocessor if clause and > can I safely assume the size is 964? The comment before this reads /* this limited check is enough, if sizeof(MYSQL) changes, it changes everywhere */ so this looks like an ABI stability check, validating not that MYSQL should be Some Specific Size, but that it's The Size It Was Last Time. IMO turn the first line into #if defined(__x86_64__) && !defined(__ILP32__) since they did actually just want to check if the size is the same they measured on amd64 and i386. And if it were to change on either of these two, it would change everywhere (apparently). Best,
signature.asc
(application/pgp-signature, 833 B)
-----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEfWlHToQCjFzAxEFjvP0LAY0mWPEFAmaFOKQACgkQvP0LAY0m WPESXRAAijyq4dlnQWuctpIprbtsY0bGznGIH58p3MSkSH+bESCK8u/gldPnpmDq DNMQTlUmRldc/5pJp8GNV/Kesc0u8hrJXkwJw5Avqo6kxPYcigBSiJtchLVjglju 6R34VUB4FDnvccrp7j5UeFOqXUGtAET5Q1TwYp01kupNZHnZL7hx/Isn2IUHJll3 ChNLxVeqe8lIaBD47G+7yTSht2RzmnSegKutESbIpmDR68c//wjZ5U8s0xyAhuTN iLaK3wmTJ+OFTPlMrgQ8+LcNGpuGwCtwjNmt8+UQEbANeHVC6Jg2NRD/wKteDm/t R0HQok2apWmpu7X4m+Esmub257TUeDgaCZBy4ZEQ0OytZJNry2nBkYPilnl0eadG 6vbqRdjoLic4kCIjZTpUmjkUU34zrXz9gCtOQGwimFoiyXYvYollQqKsJnQdXEJx ydQ4URSGr0mnH9V2wIB9Llb15G6fuCeA0rLONizqQ8GmAoCT6a2d74tZa8+JpK8y cIXgeZuoaSq+KdtiavGdPVCPAN0uMEiRqKPMXKfiGcJWD6OkaW+oD44OH3QM5kFG kMTXGREwYKiSpuN+ySKx1AvvCaYkpUF3Knb2VRrZE1HZMBpLsh5+64dZCIspzppC +gIbBuDmGoRhY6ehnr9h20VZw9fHfV6yG1uhIHCwOWS72dLFJr0= =XNWH -----END PGP SIGNATURE-----