Issue #6236, #6348: Fix various failures in the io module under AIX
and other platforms, when using a non-gcc compiler. Patch by egreen.
In addition, I made explicit the signedness of all bitfields in the
IO library.
diff --git a/Modules/_io/fileio.c b/Modules/_io/fileio.c
index 989c866..e98de9e 100644
--- a/Modules/_io/fileio.c
+++ b/Modules/_io/fileio.c
@@ -45,10 +45,10 @@
typedef struct {
PyObject_HEAD
int fd;
- unsigned readable : 1;
- unsigned writable : 1;
- int seekable : 2; /* -1 means unknown */
- int closefd : 1;
+ unsigned int readable : 1;
+ unsigned int writable : 1;
+ signed int seekable : 2; /* -1 means unknown */
+ unsigned int closefd : 1;
PyObject *weakreflist;
PyObject *dict;
} fileio;