From a01f1adb87c71d9fbd07334f00bd94e106b9ad43 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Wed, 6 Jun 2012 01:37:37 +0200 Subject: [PATCH] Close #6203: Document that Python 3 sets LC_CTYPE at startup to the user's preferred locale encoding --- Doc/library/locale.rst | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Doc/library/locale.rst b/Doc/library/locale.rst index 45aba0af0f7..d46f1cfd9d6 100644 --- a/Doc/library/locale.rst +++ b/Doc/library/locale.rst @@ -475,8 +475,11 @@ in such a way that frequent locale changes may cause core dumps. This makes the locale somewhat painful to use correctly. Initially, when a program is started, the locale is the ``C`` locale, no matter -what the user's preferred locale is. The program must explicitly say that it -wants the user's preferred locale settings by calling ``setlocale(LC_ALL, '')``. +what the user's preferred locale is. There is one exception: the +:data:`LC_CTYPE` category is changed at startup to set the current locale +encoding to the user's preferred locale encoding. The program must explicitly +say that it wants the user's preferred locale settings for other categories by +calling ``setlocale(LC_ALL, '')``. It is generally a bad idea to call :func:`setlocale` in some library routine, since as a side effect it affects the entire program. Saving and restoring it