This patch fixes a bug dating back to 2021-12-28.
2024-09-14 Bruno Haible <br...@clisp.org> unilbrk: Fix bug in implementation of Unicode rule (LB16). * lib/gen-uni-tables.c (output_lbrk_rules_as_tables): Fix typo. * lib/unilbrk/lbrktables.c: Regenerated. diff --git a/lib/gen-uni-tables.c b/lib/gen-uni-tables.c index dac7715f55..0ea9de9f28 100644 --- a/lib/gen-uni-tables.c +++ b/lib/gen-uni-tables.c @@ -9406,7 +9406,7 @@ output_lbrk_rules_as_tables (const char *filename, const char *version) even with intervening spaces. */ before = LBP_CL; after = LBP_NS; set_table_cell (prohibited_no_sp, true); set_table_cell (prohibited_with_sp, true); - before = LBP_CL; after = LBP_CP; set_table_cell (prohibited_no_sp, true); + before = LBP_CP; after = LBP_NS; set_table_cell (prohibited_no_sp, true); set_table_cell (prohibited_with_sp, true); /* (LB15d) Do not break before ';', ',', '.', even after spaces. */ diff --git a/lib/unilbrk/lbrktables.c b/lib/unilbrk/lbrktables.c index 2494c5c87f..217933a526 100644 --- a/lib/unilbrk/lbrktables.c +++ b/lib/unilbrk/lbrktables.c @@ -44,8 +44,8 @@ const unsigned char unilbrk_table[41][41] = /* BB */ { P, I, I, I, I, I, P, P, P, P, I, I, I, I, I, I, P, P, I, I, I, P, I, I, I, I, I, I, I, I, I, I, I, I, I, I, I, I, I, I, I, }, /* HY */ { P, D, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, I, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, /* CL */ { P, I, D, I, D, I, P, P, P, P, I, P, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, -/* CP1 */ { P, I, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, I, D, D, P, I, I, D, D, D, D, D, D, D, I, D, D, D, D, D, D, I, D, D, }, -/* CP2 */ { P, I, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, +/* CP1 */ { P, I, D, I, D, I, P, P, P, P, I, P, D, D, I, D, P, P, I, D, D, P, I, I, D, D, D, D, D, D, D, I, D, D, D, D, D, D, I, D, D, }, +/* CP2 */ { P, I, D, I, D, I, P, P, P, P, I, P, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, /* EX */ { P, I, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, /* IN */ { P, I, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, }, /* NS */ { P, I, D, I, D, I, P, P, P, P, I, I, D, D, I, D, P, P, D, D, D, P, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, D, },