This issue tracker has been migrated to GitHub ,
and is currently read-only.
For more information,
see the GitHub FAQs in the Python's Developer Guide.
| Author | pitrou |
|---|---|
| Recipients | mark.dickinson, pitrou, serhiy.storchaka, skrah |
| Date | 2013年02月09日.20:49:58 |
| SpamBayes Score | -1.0 |
| Marked as misclassified | Yes |
| Message-id | <1360442999.41.0.373385180849.issue17173@psf.upfronthosting.co.za> |
| In-reply-to |
| Content | |
|---|---|
Grepping through the code reveals we are still using a number of locale-dependent C library functions: Python/mystrtoul.c:102: while (*str && isspace(Py_CHARMASK(*str))) Python/mystrtoul.c:141: while (isspace(Py_CHARMASK(*str))) Python/mystrtoul.c:269: while (*str && isspace(Py_CHARMASK(*str))) Python/formatter_unicode.c:404: while (pos<end && isdigit(PyUnicode_READ_CHAR(s, pos))) Python/ast.c:3764: if (isalpha(quote)) { Python/dynload_aix.c:144: while (isdigit(Py_CHARMASK(*message[i]))) message[i]++ ; Objects/longobject.c:2011: while (*str != '0円' && isspace(Py_CHARMASK(*str))) Objects/longobject.c:2255: while (*str && isspace(Py_CHARMASK(*str))) Modules/getaddrinfo.c:228: if (! isdigit(*q)) Modules/_sre.c:153:#define SRE_LOC_IS_DIGIT(ch) (!((ch) & ~255) ? isdigit((ch)) : 0) Modules/_sre.c:154:#define SRE_LOC_IS_SPACE(ch) (!((ch) & ~255) ? isspace((ch)) : 0) Modules/_sre.c:156:#define SRE_LOC_IS_ALNUM(ch) (!((ch) & ~255) ? isalnum((ch)) : 0) Modules/binascii.c:1138: if (isdigit(c)) Modules/_decimal/libmpdec/io.c:153: if (!isdigit((uchar)*s)) Modules/_decimal/libmpdec/io.c:157: if (!isdigit((uchar)*(s+1))) Modules/_decimal/libmpdec/io.c:159: isdigit((uchar)*(s+2)))) Modules/_decimal/libmpdec/io.c:185: while (isdigit((uchar)*s)) Modules/_decimal/libmpdec/io.c:825: if (isdigit((uchar)*cp)) { Modules/_decimal/libmpdec/io.c:847: if (!isdigit((uchar)*cp)) { Modules/_decimal/libmpdec/io.c:1087: assert(isdigit((uchar)*dp)); Modules/_decimal/libmpdec/io.c:1089: while (isdigit((uchar)*dp)) { Modules/_decimal/libmpdec/io.c:1244: if (isupper((uchar)type)) { Modules/_struct.c:1273: if (isspace(Py_CHARMASK(c))) Modules/_struct.c:1338: if (isspace(Py_CHARMASK(c))) Include/pyctype.h has locale-agnostic counterpart (a bit faster probably, too). |
|
| History | |||
|---|---|---|---|
| Date | User | Action | Args |
| 2013年02月09日 20:49:59 | pitrou | set | recipients: + pitrou, mark.dickinson, skrah, serhiy.storchaka |
| 2013年02月09日 20:49:59 | pitrou | set | messageid: <1360442999.41.0.373385180849.issue17173@psf.upfronthosting.co.za> |
| 2013年02月09日 20:49:59 | pitrou | link | issue17173 messages |
| 2013年02月09日 20:49:58 | pitrou | create | |