From: Guido van Rossum Date: Fri, 20 Jul 2001 16:36:21 +0000 (+0000) Subject: #ifdef out generation of \U escapes unless Py_UNICODE_WIDE. This X-Git-Tag: v2.2a3~1021 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=0d42e0c54a3b95aec4d4d12d1cd758438d645089;p=thirdparty%2FPython%2Fcpython.git #ifdef out generation of \U escapes unless Py_UNICODE_WIDE. This #caused warnings with the VMS C compiler. (SF bug #442998, in part.) On a narrow system the current code should never be executed since ch will always be < 0x10000. Marc-Andre: you may end up fixing this a different way, since I believe you have plans to generate \U for surrogate pairs. I'll leave that to you. --- diff --git a/Objects/unicodeobject.c b/Objects/unicodeobject.c index 08e80894d841..a46df163f6f9 100644 --- a/Objects/unicodeobject.c +++ b/Objects/unicodeobject.c @@ -1441,6 +1441,7 @@ PyObject *unicodeescape_string(const Py_UNICODE *s, *p++ = '\\'; *p++ = (char) ch; } +#ifdef Py_UNICODE_WIDE /* Map 21-bit characters to '\U00xxxxxx' */ else if (ch >= 0x10000) { *p++ = '\\'; @@ -1454,6 +1455,7 @@ PyObject *unicodeescape_string(const Py_UNICODE *s, *p++ = hexdigit[(ch >> 4) & 0xf]; *p++ = hexdigit[ch & 15]; } +#endif /* Map 16-bit characters to '\uxxxx' */ else if (ch >= 256) { *p++ = '\\';