Message108174
> Why do you say that? If c is -1, then Py_CHARMASK(c) is 255, which is a
> positive integer.
What srid seems to be saying is that chars are unsigned on AIX, and therefore Py_CHARMASK() returns -1. Hence his patch proposal.
Of course, it is dubious why EOF is not tested separately rather than passing it to Py_ISALNUM(). Micro-optimization? At least a comment should be added.
Also, really, the Py_CHARMASK() macro seems poorly specified. It claims to "convert a possibly signed character to a nonnegative int", but this is wrong: it doesn't convert to an int at all. Furthermore, it does a cast in one branch but not in the other, which can give bad surprises as here. |
|
Date |
User |
Action |
Args |
2010-06-19 12:16:53 | pitrou | set | recipients:
+ pitrou, loewis, eric.smith, r.david.murray, srid, skrah |
2010-06-19 12:16:53 | pitrou | set | messageid: <1276949813.63.0.9361433769.issue9020@psf.upfronthosting.co.za> |
2010-06-19 12:16:52 | pitrou | link | issue9020 messages |
2010-06-19 12:16:51 | pitrou | create | |
|