Add call to setlocale(LC_ALL, "").
diff --git a/Modules/main.c b/Modules/main.c
index ef18fe6..0b35a94 100644
--- a/Modules/main.c
+++ b/Modules/main.c
@@ -37,6 +37,10 @@
 #include <unistd.h>
 #endif
 
+#ifdef HAVE_LOCALE_H
+#include <locale.h>
+#endif
+
 #ifdef MS_WINDOWS
 #include <fcntl.h>
 #endif
@@ -101,6 +105,10 @@
 	int unbuffered = 0;
 	int stdin_is_interactive = 0;
 
+#ifdef HAVE_SETLOCALE
+	setlocale(LC_ALL, "");
+#endif
+
 	orig_argc = argc;	/* For Py_GetArgcArgv() */
 	orig_argv = argv;
 
@@ -109,7 +117,6 @@
 	if ((p = getenv("PYTHONUNBUFFERED")) && *p != '\0')
 		unbuffered = 1;
 
-	Py_UseClassExceptionsFlag = 1;
 	while ((c = getopt(argc, argv, "c:diOSuvX")) != EOF) {
 		if (c == 'c') {
 			/* -c is the last option; following arguments