From 0e16ecfa1e7689c0b3be626f9a3441ebb5710c70 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 28 Jun 2000 04:27:24 +0000 Subject: Update. * locale/programs/ld-ctype.c (ctype_finish): Take all characters from the input charset into account when generating the hash table. (allocate_arrays): Correct setting default width. Not all empty slots in the table are filled, only those not covert explicitly by the locale description and in the charset. * stdio-common/vfscanf.c: Make sure to always return WEOF and EOF for wide character version. For %C handling, test correct pointer variable for NULL. * wcsmbs/wctob.c: Handle WEOF special. * wcsmbs/wcwidth.h: 0xff in width array means invalid character. * wctype/wctype.h: Protect gcc-isms with __extension__. Avoid always-true test to avoid warning. --- localedata/tests-mbwc/dat_swscanf.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'localedata/tests-mbwc/dat_swscanf.c') diff --git a/localedata/tests-mbwc/dat_swscanf.c b/localedata/tests-mbwc/dat_swscanf.c index 24274401ba..cce5b336e6 100644 --- a/localedata/tests-mbwc/dat_swscanf.c +++ b/localedata/tests-mbwc/dat_swscanf.c @@ -33,7 +33,6 @@ TST_SWSCANF tst_swscanf_loc [] = }, }, /*------------------------ 02 -----------------------*/ - /* x 2 */ { { { 0x00E4, 0x00C4, 0x0000 /* "äÄ" */ }, @@ -60,8 +59,13 @@ TST_SWSCANF tst_swscanf_loc [] = }, L"1%d:2%d:3%d:4%d:5%d:6%d:7%d:8%d:9%d", 0 }, - { 1,EINVAL,1,EOF, +#ifdef SHOJI_IS_RIGHT + { 1,EINVAL,1,WEOF, + 0,0,0,0,"", { 0x0000 }, +#else + { 0,0,1,0, 0,0,0,0,"", { 0x0000 }, +#endif }, }, /*---------------------------------------------------*/ @@ -136,7 +140,6 @@ TST_SWSCANF tst_swscanf_loc [] = }, }, /*------------------------ 03 -----------------------*/ - /* */ { { { 0x0031, 0x003A, 0x0030, 0x003A, @@ -144,12 +147,16 @@ TST_SWSCANF tst_swscanf_loc [] = 0x0061, 0x003A, 0x0063, 0x0064, 0x0000, 0x0000, }, - L"%2$d:%1$u:%f:%c:%s", 0 + L"%2$d:%1$u:%3$f:%4$c:%5$s", 0 }, { 1,0,1,5, 0, 1, 3.9, 'a', "cd", { 0x0000 } }, }, +#ifdef SHOJI_IS_RIGHT + /* XXX This test does not make sense. The format string is + L"\x1\x2\x25\x53" and it is supposed to match the words + 0x30A2, 0x30A4, 0x0001. */ /*------------------------ 04 -----------------------*/ /* x 2 */ { { { @@ -161,6 +168,7 @@ TST_SWSCANF tst_swscanf_loc [] = 0,0,0,0,"", { 0x0000 } }, }, +#endif /*---------------------------------------------------*/ { is_last: 1} /* Last element. */ } -- cgit v1.2.3