aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog8
-rw-r--r--gcc/collect2.c7
-rw-r--r--gcc/cppmain.c7
-rw-r--r--gcc/gcc.c7
-rw-r--r--gcc/gcov.c7
-rw-r--r--gcc/protoize.c7
-rw-r--r--gcc/toplev.c7
7 files changed, 50 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index dd67022..5aa47d7 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,11 @@
+2000-12-14 Philipp Thomas <pthomas@suse.de>
+ * protoize.c (main): Correctly set locale categories.
+ * gcc.c (main): Likewise.
+ * cppmain.c (general_init): Likewise.
+ * toplev.c (main): Likewise.
+ * gcov.c (main): Likewise.
+ * collect2.c (main): Likewise.
+
2000-12-17 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* c-common.c (c_common_nodes_and_builtins): Create a
diff --git a/gcc/collect2.c b/gcc/collect2.c
index 6792eef..fcfdb34 100644
--- a/gcc/collect2.c
+++ b/gcc/collect2.c
@@ -870,9 +870,16 @@ main (argc, argv)
COLLECT2_HOST_INITIALIZATION;
#endif
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);
diff --git a/gcc/cppmain.c b/gcc/cppmain.c
index 7e12d6b..f3bf2a0 100644
--- a/gcc/cppmain.c
+++ b/gcc/cppmain.c
@@ -129,9 +129,16 @@ general_init (const char *argv0)
xmalloc_set_program_name (progname);
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);
}
diff --git a/gcc/gcc.c b/gcc/gcc.c
index 242067a..33b8a89 100644
--- a/gcc/gcc.c
+++ b/gcc/gcc.c
@@ -5248,9 +5248,16 @@ main (argc, argv)
GCC_DRIVER_HOST_INITIALIZATION;
#endif
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);
diff --git a/gcc/gcov.c b/gcc/gcov.c
index a1c57e5..457c4ad 100644
--- a/gcc/gcov.c
+++ b/gcc/gcov.c
@@ -242,9 +242,16 @@ main (argc, argv)
int argc;
char **argv;
{
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);
diff --git a/gcc/protoize.c b/gcc/protoize.c
index 6816952..6780b00 100644
--- a/gcc/protoize.c
+++ b/gcc/protoize.c
@@ -4583,9 +4583,16 @@ main (argc, argv)
#endif
pname = pname ? pname+1 : argv[0];
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);
diff --git a/gcc/toplev.c b/gcc/toplev.c
index 1e98568..572532f 100644
--- a/gcc/toplev.c
+++ b/gcc/toplev.c
@@ -4525,9 +4525,16 @@ main (argc, argv)
--p;
progname = p;
+/* LC_CTYPE determines the character set used by the terminal so it has be set
+ to output messages correctly. */
+
#ifdef HAVE_LC_MESSAGES
+ setlocale (LC_CTYPE, "");
setlocale (LC_MESSAGES, "");
+#else
+ setlocale (LC_ALL, "");
#endif
+
(void) bindtextdomain (PACKAGE, localedir);
(void) textdomain (PACKAGE);