diff options
author | Stefan Krah <stefan@bytereef.org> | 2010-07-19 13:36:13 (GMT) |
---|---|---|
committer | Stefan Krah <stefan@bytereef.org> | 2010-07-19 13:36:13 (GMT) |
commit | d483a1a12b5ab88cc32f140e537fc172cb0c423d (patch) | |
tree | e5434968023aecef343982949dd5ca43413963a3 | |
parent | a63726ffc887cdfc775b9ef6b4091a12511a5555 (diff) | |
download | cpython-d483a1a12b5ab88cc32f140e537fc172cb0c423d.zip cpython-d483a1a12b5ab88cc32f140e537fc172cb0c423d.tar.gz cpython-d483a1a12b5ab88cc32f140e537fc172cb0c423d.tar.bz2 |
Merged revisions 82969 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/release27-maint
........
r82969 | stefan.krah | 2010-07-19 15:14:01 +0200 (Mon, 19 Jul 2010) | 14 lines
Issue #9036: Throughout the code base, Py_CHARMASK is used on 8-bit wide
signed/unsigned chars or on integers directly derived from those. In all
cases, it could be replaced by a simple cast to (unsigned char). Reasons
for the change:
a) Make the comment more explicit.
b) If char is unsigned, the cast is optimized away.
c) If char is unsigned, gcc emits spurious "array subscript
has type 'char'" warnings.
........
-rw-r--r-- | Include/Python.h | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/Include/Python.h b/Include/Python.h index 1a05116..b09b4bb 100644 --- a/Include/Python.h +++ b/Include/Python.h @@ -147,13 +147,8 @@ PyAPI_FUNC(PyObject*) _Py_Mangle(PyObject *p, PyObject *name); Set ml_flags in the PyMethodDef to METH_NOARGS. */ #define PyArg_NoArgs(v) PyArg_Parse(v, "") -/* Convert a possibly signed character to a nonnegative int */ -/* XXX This assumes characters are 8 bits wide */ -#ifdef __CHAR_UNSIGNED__ -#define Py_CHARMASK(c) (c) -#else +/* Argument must be a char or an int in [-128, 127] or [0, 255]. */ #define Py_CHARMASK(c) ((unsigned char)((c) & 0xff)) -#endif #include "pyfpe.h" |