Michael Felt <mich...@felt.demon.nl> added the comment: Did some additional research. The code can work asis when _ALL_SOURCE is undefined. Or, in other words - there does not have to be a variable syntax issue or separate code for AIX.
As you read this - please remember that since issue #32143 was 'resolved' AIX cannot compile. * https://www.gnu.org/software/autoconf/manual/autoconf-2.64/html_node/Posix-Variants.html describes _ALL_SOURCE as a macro for AIX3. Looking at AIX: /usr/include/sys/types.h - by undefining _ALL_SOURCE the typedefs in the header files are equivalent enough that the new code added for os.statvfs(path) is compiled by both gcc and xlc. As examples (from Centos) /usr/include/bits/typesizes.h:72:#define __FSID_T_TYPE struct { int __val[2]; } And from AIX: * /usr/include/sys/types.h +360 / * typedef for the File System Identifier (fsid). This must correspond +361 * to the "struct fsid" structure in _ALL_SOURCE below. +362 * / +363 typedef struct fsid_t { +364 #ifdef __64BIT_KERNEL +365 unsigned long val[2]; +366 #else / * __64BIT_KERNEL * / +367 #ifdef _ALL_SOURCE +368 unsigned int val[2]; +369 #else / * _ALL_SOURCE * / +370 unsigned int __val[2]; +371 #endif / * _ALL_SOURCE * / +372 #endif / * __64BIT_KERNEL * / +373 } fsid_t; */ (Note - a variation of the text above was in the pull request https://github.com/python/cpython/pull/4972. Per reviewer request - this is removed and a discussion is now open here.) Thank you for your comments. ---------- _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32390> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com