[Python-checkins] Fix compiler warnings in init_dump_ascii_wstr() (GH-22150)

Victor Stinner webhook-mailer at python.org
Tue Sep 15 09:41:23 EDT 2020


https://github.com/python/cpython/commit/640e8e1d5f61d5868453d992da04bf4741327748
commit: 640e8e1d5f61d5868453d992da04bf4741327748
branch: master
author: Victor Stinner <vstinner at python.org>
committer: GitHub <noreply at github.com>
date: 2020-09-09T12:07:17+02:00
summary:

Fix compiler warnings in init_dump_ascii_wstr() (GH-22150)

Fix GCC 9.3 (using -O3) warnings on x86:

initconfig.c: In function ‘init_dump_ascii_wstr’:
initconfig.c:2679:34: warning: format ‘%lc’ expects argument of type
‘wint_t’, but argument 2 has type ‘wchar_t’ {aka ‘long int’}
 2679 |             PySys_WriteStderr("%lc", ch);
initconfig.c:2682:38: warning: format ‘%x’ expects argument of type
‘unsigned int’, but argument 2 has type ‘wchar_t’ {aka ‘long int’}
 2682 |             PySys_WriteStderr("\\x%02x", ch);
initconfig.c:2686:38: warning: format ‘%x’ expects argument of type
‘unsigned int’, but argument 2 has type ‘wchar_t’ {aka ‘long int’}
 2686 |             PySys_WriteStderr("\\U%08x", ch);
initconfig.c:2690:38: warning: format ‘%x’ expects argument of type
‘unsigned int’, but argument 2 has type ‘wchar_t’ {aka ‘long int’}
 2690 |             PySys_WriteStderr("\\u%04x", ch);

files:
M Python/initconfig.c

diff --git a/Python/initconfig.c b/Python/initconfig.c
index 38d64b63afcc9..880e145ec031c 100644
--- a/Python/initconfig.c
+++ b/Python/initconfig.c
@@ -2670,7 +2670,7 @@ init_dump_ascii_wstr(const wchar_t *str)
 
     PySys_WriteStderr("'");
     for (; *str != L'\0'; str++) {
-        wchar_t ch = *str;
+        unsigned int ch = (unsigned int)*str;
         if (ch == L'\'') {
             PySys_WriteStderr("\\'");
         } else if (0x20 <= ch && ch < 0x7f) {



More information about the Python-checkins mailing list