mirror of
https://github.com/python/cpython.git
synced 2025-08-29 13:15:11 +00:00
Checkpoint. Manipulated things so that string literals are always
unicode, and a few other compensating changes, e.g. str <- unicode, chr <- unichr, and repr() of a unicode string no longer starts with 'u'. Lots of unit tests are broken, but some basic things work, in particular distutils works so the extensions can be built, and test_builtin.py works.
This commit is contained in:
parent
d4617f24ca
commit
572dbf8f13
28 changed files with 68 additions and 81 deletions
|
@ -2072,7 +2072,6 @@ PyObject *unicodeescape_string(const Py_UNICODE *s,
|
|||
p = PyString_AS_STRING(repr);
|
||||
|
||||
if (quotes) {
|
||||
*p++ = 'u';
|
||||
*p++ = (findchar(s, size, '\'') &&
|
||||
!findchar(s, size, '"')) ? '"' : '\'';
|
||||
}
|
||||
|
@ -2081,7 +2080,7 @@ PyObject *unicodeescape_string(const Py_UNICODE *s,
|
|||
|
||||
/* Escape quotes and backslashes */
|
||||
if ((quotes &&
|
||||
ch == (Py_UNICODE) PyString_AS_STRING(repr)[1]) || ch == '\\') {
|
||||
ch == (Py_UNICODE) PyString_AS_STRING(repr)[0]) || ch == '\\') {
|
||||
*p++ = '\\';
|
||||
*p++ = (char) ch;
|
||||
continue;
|
||||
|
@ -2167,7 +2166,7 @@ PyObject *unicodeescape_string(const Py_UNICODE *s,
|
|||
*p++ = (char) ch;
|
||||
}
|
||||
if (quotes)
|
||||
*p++ = PyString_AS_STRING(repr)[1];
|
||||
*p++ = PyString_AS_STRING(repr)[0];
|
||||
|
||||
*p = '\0';
|
||||
_PyString_Resize(&repr, p - PyString_AS_STRING(repr));
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue