From: Antoine Pitrou Date: Mon, 21 Sep 2009 21:42:29 +0000 (+0000) Subject: Merged revisions 75009 via svnmerge from X-Git-Tag: v3.1.2rc1~500 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=384c92083296c7533fe36d5081c4c6dbee10990d;p=thirdparty%2FPython%2Fcpython.git Merged revisions 75009 via svnmerge from svn+ssh://pythondev@svn.python.org/python/branches/py3k ................ r75009 | antoine.pitrou | 2009-09-21 23:37:02 +0200 (lun., 21 sept. 2009) | 13 lines Merged revisions 75007 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r75007 | antoine.pitrou | 2009-09-21 23:17:48 +0200 (lun., 21 sept. 2009) | 7 lines 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/Misc/NEWS b/Misc/NEWS index 41edb17a61b5..83ff6bfe1f07 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -21,6 +21,9 @@ Core and Builtins Library ------- +- Issue #6236, #6348: Fix various failures in the I/O library 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 #4606: Passing 'None' if ctypes argtype is set to POINTER(...) diff --git a/Modules/_io/fileio.c b/Modules/_io/fileio.c index b21712cc9184..f5ba9715374b 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 b91852e35164..333c93f92087 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