https://raw.githubusercontent.com/termux/termux-packages/master/packages/espeak/char_unsigned_narrowing.patch diff -u -r ../espeak-1.48.01-source/src/tr_languages.cpp ./src/tr_languages.cpp --- ../espeak-1.48.01-source/src/tr_languages.cpp 2014-02-02 11:52:30.000000000 +0100 +++ ./src/tr_languages.cpp 2014-02-11 22:02:07.000000000 +0100 @@ -198,7 +198,7 @@ 0x200d, 1, // zero width joiner 0, 0 }; -const char string_ordinal[] = {0xc2,0xba,0}; // masculine ordinal character, UTF-8 +const unsigned char string_ordinal[] = {0xc2,0xba,0}; // masculine ordinal character, UTF-8 static Translator* NewTranslator(void) @@ -758,7 +758,7 @@ tr->langopts.stress_flags = S_FINAL_SPANISH | S_FINAL_DIM_ONLY | S_FINAL_NO_2; tr->langopts.numbers = NUM_SINGLE_STRESS | NUM_DECIMAL_COMMA | NUM_AND_UNITS | NUM_OMIT_1_HUNDRED | NUM_OMIT_1_THOUSAND | NUM_ROMAN | NUM_ROMAN_ORDINAL; tr->langopts.numbers2 = NUM2_ORDINAL_NO_AND; - tr->langopts.roman_suffix = string_ordinal; + tr->langopts.roman_suffix = (char*) string_ordinal; } else if(name2 == L_pap)