From 2a46658beef7de998dfcf85ca5e9ddf97f63a8bf Mon Sep 17 00:00:00 2001 From: Antoine Pitrou Date: Mon, 21 Sep 2009 21:17:48 +0000 Subject: [PATCH] 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. --- Misc/NEWS | 3 +++ Modules/_io/fileio.c | 8 ++++---- Modules/_io/textio.c | 6 +++--- 3 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Misc/NEWS b/Misc/NEWS index 1cc8f741b34..89cbf3ca460 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -379,6 +379,9 @@ Core and Builtins Library ------- +- Issue #6236, #6348: Fix various failures in the `io` module under AIX + and other platforms, when using a non-gcc compiler. Patch by egreen. + - Issue #6954: Fixed crash when using DISTUTILS_DEBUG flag in Distutils. - Issue #6851: Fix urllib.urlopen crash on secondairy threads on OSX 10.6 diff --git a/Modules/_io/fileio.c b/Modules/_io/fileio.c index 989c86641d8..e98de9e69fa 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; diff --git a/Modules/_io/textio.c b/Modules/_io/textio.c index 3b627f2245f..2f99a606b2e 100644 --- a/Modules/_io/textio.c +++ b/Modules/_io/textio.c @@ -190,9 +190,9 @@ typedef struct { PyObject_HEAD PyObject *decoder; PyObject *errors; - int pendingcr:1; - int translate:1; - unsigned int seennl:3; + signed int pendingcr: 1; + signed int translate: 1; + unsigned int seennl: 3; } nldecoder_object; static int