+2014-11-13 Daiki Ueno <ueno@gnu.org>
+
+ gen-uni-tables: check out-of-range values added to 3-level tables
+ * lib/gen-uni-tables.c (output_category, output_bidi_category)
+ (output_joining_type, output_ident_category): Check out-of-range
+ values added to 3-level tables.
+
2014-11-13 Daiki Ueno <ueno@gnu.org>
gen-uni-tables: utilize 'assert'
for (log2_value = 0; value > 1; value >>= 1, log2_value++);
+ assert (log2_value <= 0x1f);
+
category_table_add (&t, ch, log2_value);
}
{
int value = get_bidi_category (ch);
+ assert (value <= 0x1f);
+
bidi_category_table_add (&t, ch, value);
}
{
uint8_t value = unicode_joining_type[ch];
+ assert (value == (uint8_t)~(uint8_t)0 || value <= 0x0f);
+
joining_type_table_add (&t, ch, value);
}
for (ch = 0; ch < 0x110000; ch++)
{
int syntaxcode = predicate (ch);
+
+ assert (syntaxcode <= 0x03);
+
if (syntaxcode != UC_IDENTIFIER_INVALID)
identsyntax_table_add (&t, ch, syntaxcode);
}