about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--locale/programs/linereader.c2
-rw-r--r--localedata/ChangeLog8
-rw-r--r--localedata/Makefile2
-rw-r--r--localedata/tests/test5.cm13
-rw-r--r--localedata/tests/test5.def36
-rwxr-xr-xlocaledata/tst-locale.sh4
6 files changed, 62 insertions, 3 deletions
diff --git a/locale/programs/linereader.c b/locale/programs/linereader.c
index 8da5c5330f..6692164b60 100644
--- a/locale/programs/linereader.c
+++ b/locale/programs/linereader.c
@@ -317,7 +317,7 @@ get_toplvl_escape (struct linereader *lr)
       if (base != 16 && isdigit (ch))
 	{
 	  byte *= base;
-	  base += ch - '0';
+	  byte += ch - '0';
 
 	  ch = lr_getc (lr);
 	}
diff --git a/localedata/ChangeLog b/localedata/ChangeLog
index 2dc4aa7a50..7a74d1f089 100644
--- a/localedata/ChangeLog
+++ b/localedata/ChangeLog
@@ -1,3 +1,11 @@
+1998-04-29  Ulrich Drepper  <drepper@cygnus.com>
+
+	* tst-locale.sh: Add comment for when multi-byte charsets in
+	locales work.
+	* tests/test5.cm: New file.
+	* tests/test5.def: New file.
+	* Makefile (ld-test-names): Add test5.
+
 1998-04-28  Ulrich Drepper  <drepper@cygnus.com>
 
 	* locales/de_DE: Use . as thousands separator and 3;3 groups for
diff --git a/localedata/Makefile b/localedata/Makefile
index 25dde67657..9be179abed 100644
--- a/localedata/Makefile
+++ b/localedata/Makefile
@@ -37,7 +37,7 @@ test-output := $(foreach s, .out .xout, \
 generated := $(test-input) $(test-output)
 generated-dirs := $(basename $(test-input)) en_US
 
-ld-test-names := test1 test2 test3 test4
+ld-test-names := test1 test2 test3 test4 test5
 ld-test-srcs := $(addprefix tests/,$(addsuffix .cm,$(ld-test-names)) \
 				   $(addsuffix .def,$(ld-test-names)))
 
diff --git a/localedata/tests/test5.cm b/localedata/tests/test5.cm
new file mode 100644
index 0000000000..9d23814a1c
--- /dev/null
+++ b/localedata/tests/test5.cm
@@ -0,0 +1,13 @@
+<comment_char> %
+<escape_char> /
+<mb_cur_max> 2
+<mb_cur_min> 1
+CHARMAP
+<k0101>...<k0194>       /xa1/xa1
+<k0201>...<k0294>       /xa2/xa1
+<k1601>...<k1694>       /xa3/xa1
+<k1701>...<k1794>       /xa4/xa1
+<k4001>...<k4094>       /xa5/xa1
+<k5001>...<k5094>       /xa6/xa1
+<k6001>...<k6094>       /xa7/xa1
+END CHARMAP
diff --git a/localedata/tests/test5.def b/localedata/tests/test5.def
new file mode 100644
index 0000000000..c009033bb9
--- /dev/null
+++ b/localedata/tests/test5.def
@@ -0,0 +1,36 @@
+escape_char /
+comment_char %
+
+LC_TIME
+
+abday    "<k0101><k0102><k0103>";"<k0101><k0102><k0103>";/
+         "<k4001><k4002><k4003>";"<k4001><k4002><k4003>";/
+         "<k5001><k5002><k5003>";"<k5001><k5002><k5003>";/
+         "<k6001><k6002><k6003>"
+day      "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>";/
+         "<k6001><k6002><k6003>"
+abmon    "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>"
+mon    "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>";/
+        "<k6001>";"<k6001>"
+
+d_t_fmt ""
+d_fmt   ""
+t_fmt   ""
+am_pm   "<k6001><k5002>";"<k5002><k4036>"
+t_fmt_ampm ""
+
+END LC_TIME
diff --git a/localedata/tst-locale.sh b/localedata/tst-locale.sh
index 699a18b8aa..e52749de6d 100755
--- a/localedata/tst-locale.sh
+++ b/localedata/tst-locale.sh
@@ -39,12 +39,14 @@ test_locale ()
 }
 
 # I take this out for now since it is a known problem
-# (see [PR libc/229] and [PR libc/454].
+# (see [PR libc/229] and [PR libc/454]. --drepper
 # test_locale IBM437 de_DE de_DE.437
 test_locale tests/test1.cm tests/test1.def test1
 test_locale tests/test2.cm tests/test2.def test2
 test_locale tests/test3.cm tests/test3.def test3
 test_locale tests/test4.cm tests/test4.def test4
+# I know that multi-byte charsets do not yet work. --drepper
+# test_locale tests/test5.cm tests/test5.def test5
 
 exit 0