summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--libio/iofwide.c9
-rw-r--r--locale/C-ctype.c4
-rw-r--r--locale/C-translit.h.in2
-rw-r--r--localedata/ChangeLog2
-rw-r--r--wcsmbs/wcsmbsload.c4
6 files changed, 21 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog
index 4b293da563..0edb79291d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2000-07-26 Ulrich Drepper <drepper@redhat.com>
+
+ * libio/iofwide.c: Enable transliteration for conversion from wchar_t
+ by default.
+ * locale/C-ctype.c: Likewise.
+ * wcsmbs/wcsmbsload.c: Likewise.
+
2000-07-26 Greg McGary <greg@mcgary.org>
* Makeconfig (+link-bounded, link-libc-bounded,
diff --git a/libio/iofwide.c b/libio/iofwide.c
index c0ee083029..ae4f63f454 100644
--- a/libio/iofwide.c
+++ b/libio/iofwide.c
@@ -35,6 +35,7 @@
# include <langinfo.h>
# include <locale/localeinfo.h>
# include <wcsmbs/wcsmbsload.h>
+# include <iconv/gconv_int.h>
#endif
@@ -76,6 +77,12 @@ struct _IO_codecvt __libio_codecvt =
};
+static struct __gconv_trans_data libio_translit =
+{
+ .__trans_fct = __gconv_transliterate
+};
+
+
/* Return orientation of stream. If mode is nonzero try to change
the orientation first. */
#undef _IO_fwide
@@ -134,7 +141,7 @@ _IO_fwide (fp, mode)
cc->__cd_out.__cd.__data[0].__statep = &fp->_wide_data->_IO_state;
/* XXX For now no transliteration. */
- cc->__cd_out.__cd.__data[0].__trans = NULL;
+ cc->__cd_out.__cd.__data[0].__trans = &libio_translit;
}
#else
# error "somehow determine this from LC_CTYPE"
diff --git a/locale/C-ctype.c b/locale/C-ctype.c
index 66f2d21598..0b960d9b59 100644
--- a/locale/C-ctype.c
+++ b/locale/C-ctype.c
@@ -343,9 +343,9 @@ const char _nl_C_LC_CTYPE_width[256] =
const struct locale_data _nl_C_LC_CTYPE =
{
_nl_C_name,
- NULL, 0, 0, /* no file mapped */
+ NULL, 0, 0, /* no file mapped */
UNDELETABLE,
- 0,
+ 1, /* Enable transliteration by default. */
NULL,
66,
{
diff --git a/locale/C-translit.h.in b/locale/C-translit.h.in
index e2f711ea59..4734789ecb 100644
--- a/locale/C-translit.h.in
+++ b/locale/C-translit.h.in
@@ -1,4 +1,4 @@
-/* Transliteration for the C locale.
+/* Transliteration for the C locale. -*-C-*-
Copyright (C) 2000 Free Software Foundation, Inc.
This file is part of the GNU C Library.
Contributed by Ulrich Drepper <drepper@redhat.com>, 2000.
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 7a1debfd69..822fb1fe83 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,7 +1,7 @@
2000-07-26 Ulrich Drepper <drepper@redhat.com>
* charmaps/BIG5: New file.
- Contributed by Tung-Han Hsieh <thhsieh@twcpro.phys.ntu.edu.tw>.Update.
+ Contributed by Tung-Han Hsieh <thhsieh@twcpro.phys.ntu.edu.tw>.
2000-07-25 Ulrich Drepper <drepper@redhat.com>
diff --git a/wcsmbs/wcsmbsload.c b/wcsmbs/wcsmbsload.c
index 51c7ef5051..ea246032d5 100644
--- a/wcsmbs/wcsmbsload.c
+++ b/wcsmbs/wcsmbsload.c
@@ -41,7 +41,7 @@ static struct __gconv_step to_wc =
.__shlib_handle = NULL,
.__modname = NULL,
.__counter = INT_MAX,
- .__from_name = "ANSI_X3.4-1968//",
+ .__from_name = "ANSI_X3.4-1968//TRANSLIT",
.__to_name = "INTERNAL",
.__fct = __gconv_transform_ascii_internal,
.__init_fct = NULL,
@@ -60,7 +60,7 @@ static struct __gconv_step to_mb =
.__modname = NULL,
.__counter = INT_MAX,
.__from_name = "INTERNAL",
- .__to_name = "ANSI_X3.4-1968//",
+ .__to_name = "ANSI_X3.4-1968//TRANSLIT",
.__fct = __gconv_transform_internal_ascii,
.__init_fct = NULL,
.__end_fct = NULL,