diff options
Diffstat (limited to 'Build/source/libs/teckit')
32 files changed, 841 insertions, 372 deletions
diff --git a/Build/source/libs/teckit/ChangeLog b/Build/source/libs/teckit/ChangeLog index bdf1c39169c..eddc4ab8c78 100644 --- a/Build/source/libs/teckit/ChangeLog +++ b/Build/source/libs/teckit/ChangeLog @@ -1,3 +1,8 @@ +2019-05-03 Akira Kakuto <kakuto@w32tex.org> + + Import TECkit-2.5.9. + * version.ac: Adjust. + 2018-07-24 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Import TECkit-2.5.8. diff --git a/Build/source/libs/teckit/TECkit-src/ChangeLog b/Build/source/libs/teckit/TECkit-src/ChangeLog index f41b0c53af0..e51d45b7182 100644 --- a/Build/source/libs/teckit/TECkit-src/ChangeLog +++ b/Build/source/libs/teckit/TECkit-src/ChangeLog @@ -1 +1 @@ -(Not here. See the Subversion logs.) +See the commit history from git. diff --git a/Build/source/libs/teckit/TECkit-src/NEWS b/Build/source/libs/teckit/TECkit-src/NEWS index fe8e41b87f3..04e2414a5a8 100644 --- a/Build/source/libs/teckit/TECkit-src/NEWS +++ b/Build/source/libs/teckit/TECkit-src/NEWS @@ -1,3 +1,8 @@ +2019-03-18 + Version 2.5.9 + Updated Unicode character names and normalization data to 12.0.0 + Various improvements for testing, compiling, and documentation. + 2018-06-18 Version 2.5.8 Updated Unicode character names and normalization data to 11.0.0 diff --git a/Build/source/libs/teckit/TECkit-src/README b/Build/source/libs/teckit/TECkit-src/README index bdf170f5ee1..9457352b622 100644 --- a/Build/source/libs/teckit/TECkit-src/README +++ b/Build/source/libs/teckit/TECkit-src/README @@ -7,7 +7,7 @@ tools or by linking with other software packages. See the Documentation folder for information on the TECkit mapping language and conversion tool usage notes. -The TECkit libraries have been updated to support the Unicode 11.0.0 character +The TECkit libraries have been updated to support the Unicode 12.0.0 character repertoire. Starting with TECkit version 2.5.7 there are several changes with the Windows diff --git a/Build/source/libs/teckit/TECkit-src/configure.ac b/Build/source/libs/teckit/TECkit-src/configure.ac index 55e6c7df5d0..221c1822e69 100644 --- a/Build/source/libs/teckit/TECkit-src/configure.ac +++ b/Build/source/libs/teckit/TECkit-src/configure.ac @@ -1,5 +1,5 @@ AC_PREREQ(2.54) -AC_INIT(teckit, 2.5.8, nrsi@sil.org) +AC_INIT(teckit, 2.5.9, wstech@sil.org) AM_CONFIG_HEADER([config.h]) AC_CONFIG_SRCDIR([source/UnicodeNames.cpp]) AC_CONFIG_MACRO_DIR([m4]) @@ -111,7 +111,7 @@ noexpat_CFLAGS="$CFLAGS" noexpat_LIBS="$LIBS" AC_CHECK_LIB(expat, XML_ExpatVersion) AM_CONDITIONAL(SYSTEM_EXPAT, test x$ac_cv_lib_expat_XML_ExpatVersion = xyes) -expat_CFLAGS="$CFLAGS" +expat_CFLAGS="" expat_LIBS="$LIBS" CFLAGS="$noexpat_CFLAGS" LIBS="$noexpat_LIBS" diff --git a/Build/source/libs/teckit/TECkit-src/docs/TECkit_Tools.pdf b/Build/source/libs/teckit/TECkit-src/docs/TECkit_Tools.pdf Binary files differindex f79d6cdd135..142a4ed8e32 100644 --- a/Build/source/libs/teckit/TECkit-src/docs/TECkit_Tools.pdf +++ b/Build/source/libs/teckit/TECkit-src/docs/TECkit_Tools.pdf diff --git a/Build/source/libs/teckit/TECkit-src/license/LICENSING.txt b/Build/source/libs/teckit/TECkit-src/license/LICENSING.txt index 5aee456ce61..e41b4918d77 100644 --- a/Build/source/libs/teckit/TECkit-src/license/LICENSING.txt +++ b/Build/source/libs/teckit/TECkit-src/license/LICENSING.txt @@ -12,7 +12,7 @@ with a license of LGPL-2+ Rest of the project: - Copyright 2002-2018, SIL International + Copyright 2002-2019, SIL International All rights reserved. This library is free software; you can redistribute it and/or modify diff --git a/Build/source/libs/teckit/TECkit-src/m4/libtool.m4 b/Build/source/libs/teckit/TECkit-src/m4/libtool.m4 index 10ab2844c4e..ee80844b619 100644 --- a/Build/source/libs/teckit/TECkit-src/m4/libtool.m4 +++ b/Build/source/libs/teckit/TECkit-src/m4/libtool.m4 @@ -728,7 +728,6 @@ _LT_CONFIG_SAVE_COMMANDS([ cat <<_LT_EOF >> "$cfgfile" #! $SHELL # Generated automatically by $as_me ($PACKAGE) $VERSION -# Libtool was configured on host `(hostname || uname -n) 2>/dev/null | sed 1q`: # NOTE: Changes made to this file will be lost: look at ltmain.sh. # Provide generalized library-building support services. diff --git a/Build/source/libs/teckit/TECkit-src/source/Compiler.cpp b/Build/source/libs/teckit/TECkit-src/source/Compiler.cpp index 61586453130..952ea8540d1 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Compiler.cpp +++ b/Build/source/libs/teckit/TECkit-src/source/Compiler.cpp @@ -75,7 +75,7 @@ const UInt32 kSurrogateLowStart = 0xDC00UL; const UInt32 byteMask = 0x000000BFUL; const UInt32 byteMark = 0x00000080UL; -#define FOUR_CHAR_CODE(a,b,c,d) (UInt32)((a << 24) + (b << 16) + (c << 8) + d) +#define FOUR_CHAR_CODE(a,b,c,d) UInt32((a << 24) + (b << 16) + (c << 8) + d) const UInt32 kCode_Byte = FOUR_CHAR_CODE('B','y','t','e'); const UInt32 kCode_BU = FOUR_CHAR_CODE('B','-','>','U'); @@ -142,7 +142,7 @@ TECkit_Compile(char* txt, UInt32 len, Byte doCompression, TECkit_ErrorFn errFunc { TECkit_Status result = kStatus_CompilationFailed; try { - Compiler* cmp = new Compiler(txt, len, kForm_Unspecified, (bool)doCompression, false, errFunc, userData); + Compiler* cmp = new Compiler(txt, len, kForm_Unspecified, bool(doCompression), false, errFunc, userData); cmp->GetCompiledTable(*outTable, *outLen); if (*outTable == 0) result = kStatus_CompilationFailed; @@ -196,7 +196,7 @@ TECkit_GetUnicodeName(UInt32 usv) const CharName *c = &gUnicodeNames[0]; while (c->name != 0) if (c->usv == usv) - return c->name; + return const_cast<char*>(c->name); else ++c; return NULL; @@ -252,10 +252,10 @@ WINAPI TECkit_GetUnicodeValue(char* name) { const CharName *c = &gUnicodeNames[0]; - int len = strlen(name); + size_t len = strlen(name); while (c->name != 0) if (unicodeNameCompare(c->name, name, len) == 0) - return c->usv; + return static_cast<int>(c->usv); else ++c; return -1; @@ -524,7 +524,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX compiledSize = 0; usedExtStringRules = false; - textPtr = (const unsigned char*)txt; + textPtr = reinterpret_cast<const unsigned char*>(txt); textEnd = textPtr + len; ungotten = kInvalidChar; @@ -628,7 +628,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX errorState = false; string32::const_iterator i; - switch ((int)tok.type) { + switch (int(tok.type)) { default: Error("this can't happen!"); break; @@ -771,7 +771,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX case '^': // negation can only apply to a few things: GetNextToken(); - switch ((int)tok.type) { + switch (int(tok.type)) { case tok_Number: AppendLiteral(tok.val, true); break; @@ -943,8 +943,8 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX case '{': { - int repeatMin = 0; - int repeatMax = 15; + UInt32 repeatMin = 0; + UInt32 repeatMax = 15; GetNextToken(); if (tok.type == tok_Number) { repeatMin = repeatMax = tok.val; @@ -997,7 +997,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX break; if (!ExpectToken(tok_Number, "expected (NUMBER) STRING after Name")) break; - int nameID = tok.val; + UInt16 nameID = tok.val; if (!ExpectToken(')', "expected (NUMBER) STRING after Name")) break; ReadNameString(nameID); @@ -1129,7 +1129,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX bool ellipsisOK = false; while (tok.type != ')' && tok.type != tok_Newline) { GetNextToken(); - switch ((int)tok.type) { + switch (int(tok.type)) { case tok_USV: if (classType == 'B') { Error("can't use Unicode value in byte encoding"); @@ -1250,7 +1250,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX break; default: - Error("unexpected token within class", string((const char*)tokStart, (const char*)textPtr - (const char*)tokStart).c_str()); + Error("unexpected token within class", string(reinterpret_cast<const char *>(tokStart), reinterpret_cast<const char *>(textPtr - tokStart)).c_str()); break; } } @@ -1339,7 +1339,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX string trailer("</teckitMapping>\n"); compiledSize = header.length() + xmlRepresentation.length() + trailer.length(); - compiledTable = (Byte*)malloc(compiledSize + 1); + compiledTable = static_cast<Byte*>(malloc(compiledSize + 1)); if (compiledTable == NULL) throw bad_alloc(); @@ -1378,30 +1378,30 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX // pack all the name records string namesData; for (vector<UInt16>::const_iterator i = nameIDs.begin(); i != nameIDs.end(); ++i) { - appendToTable(offsets, (const char*)&offset, sizeof(offset)); + appendToTable(offsets, reinterpret_cast<const char*>(&offset), sizeof(offset)); NameRec r; WRITE(r.nameID, *i); WRITE(r.nameLength, names[*i].length()); - namesData.append((const char*)&r, sizeof(r)); + namesData.append(reinterpret_cast<const char*>(&r), sizeof(r)); namesData.append(names[*i]); if ((namesData.length() & 1) != 0) - namesData.append(1, (char)0); + namesData.append(1, '\0'); offset += namesData.length() - prevLength; prevLength = namesData.length(); } if ((namesData.length() & 2) != 0) - namesData.append(2, (char)0); + namesData.append(2, '\0'); offset += namesData.length() - prevLength; // pack the offsets to the actual mapping tables vector<string>::const_iterator t; for (t = fwdTables.begin(); t != fwdTables.end(); ++t) { - appendToTable(offsets, (const char*)&offset, sizeof(offset)); + appendToTable(offsets, reinterpret_cast<const char*>(&offset), sizeof(offset)); offset += t->size(); } for (t = revTables.end(); t != revTables.begin(); ) { --t; - appendToTable(offsets, (const char*)&offset, sizeof(offset)); + appendToTable(offsets, reinterpret_cast<const char*>(&offset), sizeof(offset)); offset += t->size(); } @@ -1417,9 +1417,9 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX for (t = revTables.begin(); t != revTables.end(); ++t) compiledSize += t->length(); - compiledTable = (Byte*)malloc(compiledSize); + compiledTable = static_cast<Byte*>(malloc(compiledSize)); if (compiledTable != 0) { - char* cp = (char*)compiledTable; + Byte* cp = compiledTable; memcpy(cp, &fh, sizeof(fh)); cp += sizeof(fh); memcpy(cp, offsets.data(), offsets.length()); @@ -1435,7 +1435,7 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX memcpy(cp, t->data(), t->length()); cp += t->length(); } - if ((char*)compiledTable + compiledSize != cp) + if (compiledTable + compiledSize != cp) cerr << "error!" << endl; } else @@ -1445,14 +1445,14 @@ Compiler::Compiler(const char* txt, UInt32 len, char inForm, bool cmp, bool genX if (errorCount == 0 && cmp) { // do the compression... unsigned long destLen = compiledSize * 11 / 10 + 20; - Byte* dest = (Byte*)malloc(destLen + 8); + Byte* dest = static_cast<Byte*>(malloc(destLen + 8)); if (dest != 0) { int result = compress2(dest + 8, &destLen, compiledTable, compiledSize, Z_BEST_COMPRESSION); if (result == Z_OK) { destLen += 8; - dest = (Byte*)realloc(dest, destLen); // shrink dest to fit - WRITE(((FileHeader*)dest)->type, kMagicNumberCmp); - WRITE(((FileHeader*)dest)->version, compiledSize); + dest = static_cast<Byte*>(realloc(dest, destLen)); // shrink dest to fit + WRITE(reinterpret_cast<FileHeader*>(dest)->type, kMagicNumberCmp); + WRITE(reinterpret_cast<FileHeader*>(dest)->version, compiledSize); free(compiledTable); compiledTable = dest; compiledSize = destLen; @@ -1500,12 +1500,12 @@ Compiler::asUTF8(const string32 s) } else { bytesToWrite = 2; c = 0x0000fffd; }; - rval.append((size_t)bytesToWrite, 0); - int index = rval.length(); + rval.append(size_t(bytesToWrite), 0); + size_t index = rval.length(); switch (bytesToWrite) { /* note: code falls through cases! */ - case 4: rval[--index] = (c | byteMark) & byteMask; c >>= 6; - case 3: rval[--index] = (c | byteMark) & byteMask; c >>= 6; - case 2: rval[--index] = (c | byteMark) & byteMask; c >>= 6; + case 4: rval[--index] = static_cast<char>((c | byteMark) & byteMask); c >>= 6; + case 3: rval[--index] = static_cast<char>((c | byteMark) & byteMask); c >>= 6; + case 2: rval[--index] = static_cast<char>((c | byteMark) & byteMask); c >>= 6; case 1: rval[--index] = c | firstByteMark[bytesToWrite]; }; } @@ -1746,7 +1746,7 @@ Compiler::IDlookup(const char* str, UInt32 len) tok.strval.erase(tok.strval.begin(), tok.strval.end()); #endif while (len-- > 0) - tok.strval.append(1, *str++); + tok.strval.append(1, static_cast<UInt32>(*str++)); return tok_Identifier; } @@ -1790,12 +1790,12 @@ Compiler::getChar() case kForm_UTF16BE: CHECK_AVAIL(2); - rval = *textPtr++ << 8; + rval = static_cast<UInt32>(*textPtr++) << 8; rval += *textPtr++; if (rval >= kSurrogateHighStart && rval <= kSurrogateHighEnd) { // check that 2 more bytes are available CHECK_AVAIL(2); - UInt32 low = *textPtr++ << 8; + UInt32 low = static_cast<UInt32>(*textPtr++) << 8; low += *textPtr++; rval = ((rval - kSurrogateHighStart) << halfShift) + (low - kSurrogateLowStart) + halfBase; } @@ -1804,29 +1804,29 @@ Compiler::getChar() case kForm_UTF16LE: CHECK_AVAIL(2); rval = *textPtr++; - rval += *textPtr++ << 8; + rval += static_cast<UInt32>(*textPtr++) << 8; if (rval >= kSurrogateHighStart && rval <= kSurrogateHighEnd) { CHECK_AVAIL(2); UInt32 low = *textPtr++; - low += *textPtr++ << 8; + low += static_cast<UInt32>(*textPtr++) << 8; rval = ((rval - kSurrogateHighStart) << halfShift) + (low - kSurrogateLowStart) + halfBase; } break; case kForm_UTF32BE: CHECK_AVAIL(4); - rval = *textPtr++ << 24; - rval += *textPtr++ << 16; - rval += *textPtr++ << 8; + rval = static_cast<UInt32>(*textPtr++) << 24; + rval += static_cast<UInt32>(*textPtr++) << 16; + rval += static_cast<UInt32>(*textPtr++) << 8; rval += *textPtr++; break; case kForm_UTF32LE: CHECK_AVAIL(4); rval = *textPtr++; - rval += *textPtr++ << 8; - rval += *textPtr++ << 16; - rval += *textPtr++ << 24; + rval += static_cast<UInt32>(*textPtr++) << 8; + rval += static_cast<UInt32>(*textPtr++) << 16; + rval += static_cast<UInt32>(*textPtr++) << 24; break; } @@ -1946,11 +1946,11 @@ Compiler::GetNextToken() case '/': case '=': case '@': - tok.type = (tokenType)currCh; + tok.type = tokenType(currCh); return true; case '<': - tok.type = (tokenType)'<'; + tok.type = tokenType('<'); if (textPtr < textEnd) { if ((currCh = getChar()) == '>') tok.type = tok_Map; @@ -1960,7 +1960,7 @@ Compiler::GetNextToken() return true; case '.': - tok.type = (tokenType)'.'; + tok.type = tokenType('.'); if (textPtr < textEnd) { if ((currCh = getChar()) == '.') tok.type = tok_Ellipsis; @@ -1978,7 +1978,7 @@ Compiler::GetNextToken() goto DEFAULT; } } - tok.type = (tokenType)'_'; + tok.type = tokenType('_'); return true; case '0': @@ -2133,7 +2133,7 @@ Compiler::Error(const char* msg, const char* s, UInt32 line) cout << " at line " << line << endl; } else - (*errorFunction)(errFuncUserData, msg, s, line); + (*errorFunction)(errFuncUserData, const_cast<char*>(msg), const_cast<char*>(s), line); errorState = true; ++errorCount; } @@ -2356,7 +2356,7 @@ Compiler::AssignTag(const string& tag) } void -Compiler::SetMinMax(int repeatMin, int repeatMax) +Compiler::SetMinMax(UInt32 repeatMin, UInt32 repeatMax) { Item* item = 0; switch (ruleState) { @@ -2577,7 +2577,7 @@ Compiler::calcMaxOutLen(Rule& rule) continue; default: - cerr << "bad rep elem type: " << (int)i->type << endl; + cerr << "bad rep elem type: " << i->type << endl; break; } } @@ -2944,12 +2944,12 @@ Compiler::isSingleCharRule(const Rule& rule) } void -Compiler::appendMatchElem(string& packedRule, Item& item, int index, +Compiler::appendMatchElem(string& packedRule, Item& item, unsigned int index, vector<MatClass>& matchClasses) { MatchElem m; WRITE(m.value.usv.data, 0); - WRITE(m.flags.repeat, (item.repeatMin << 4) + item.repeatMax); + WRITE(m.flags.repeat, (static_cast<UInt32>(item.repeatMin) << 4) + item.repeatMax); if (item.negate) WRITE(m.flags.type, kMatchElem_Negate); else @@ -2997,8 +2997,7 @@ Compiler::appendMatchElem(string& packedRule, Item& item, int index, WRITE(m.flags.type, READ(m.flags.type) | (kMatchElem_NonLit + kMatchElem_Type_EOS)); break; } - const char* p = (const char*)&m; - packedRule.append(p, sizeof(m)); + packedRule.append(reinterpret_cast<const char*>(&m), sizeof(m)); } void @@ -3039,8 +3038,7 @@ Compiler::appendReplaceElem(string& packedRule, Item& item, vector<Item>& matchS WRITE(r.flags.type, kRepElem_Unmapped); break; } - const char* p = (const char*)&r; - packedRule.append(p, sizeof(r)); + packedRule.append(reinterpret_cast<const char*>(&r), sizeof(r)); } vector<Compiler::Item> @@ -3068,29 +3066,30 @@ Compiler::addToCharMap(UInt32 ch, UInt16 index) UInt8 plane = ch >> 16; UInt8 page = (ch & 0x00ffff) >> 8; if (buildVars.planeMap.size() <= plane) - buildVars.planeMap.resize(plane + 1, 0xff); - if ((UInt8)buildVars.planeMap[plane] == (UInt8)0xff) { + buildVars.planeMap.resize(plane + 1, '\xff'); + if (UInt8(buildVars.planeMap[plane]) == 0xff) { buildVars.planeMap[plane] = buildVars.pageMaps.size(); buildVars.pageMaps.resize(buildVars.pageMaps.size() + 1); - buildVars.pageMaps.back().resize(256, 0xff); + buildVars.pageMaps.back().resize(256, '\xff'); } - UInt8 planeIndex = buildVars.planeMap[plane]; + UInt8 planeIndex = static_cast<UInt8>(buildVars.planeMap[plane]); string& pageMap = buildVars.pageMaps[planeIndex]; - if ((UInt8)pageMap[page] == (UInt8)0xff) { + if (UInt8(pageMap[page]) == 0xff) { pageMap[page] = buildVars.charMaps.size(); buildVars.charMaps.resize(buildVars.charMaps.size() + 1); buildVars.charMaps.back().resize(256); } - vector<UInt16>& charMap = buildVars.charMaps[(UInt8)pageMap[page]]; + vector<UInt16>& charMap = buildVars.charMaps[UInt8(pageMap[page])]; charMap[ch & 0x0000ff] = index; } void -Compiler::align(string& table, int alignment) +Compiler::align(string& table, string::size_type alignment) { - int remainder = table.size() % alignment; + const string::size_type length = table.size(); + const string::size_type remainder = length % alignment; if (remainder != 0) - table.resize(table.size() + alignment - remainder); + table.resize(length + alignment - remainder); } class Member { @@ -3268,7 +3267,17 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl // mapping to Unicode: direct lookup can only support one Unicode character if (rule.replaceStr.size() == 1) { const Item& rep = rule.replaceStr.front(); - int t = rep.tag.length() > 0 ? findTag(rep.tag, rule.matchStr) : 0; + vector<Item>::size_type tag; + if (rep.tag.length() > 0) { + const int result = findTag(rep.tag, rule.matchStr); + if (result < 0) { + Error("tag not found", rep.tag.c_str(), rule.lineNumber); + continue; + } + tag = static_cast<vector<Item>::size_type>(result); + } else { + tag = 0; + } switch (rep.type) { case 0: WRITE(lookup[i].usv, rep.val); @@ -3276,11 +3285,7 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl case kMatchElem_Type_Class: { - if (t == -1) { - Error("tag not found", rep.tag.c_str(), rule.lineNumber); - continue; - } - const Item& mat = rule.matchStr[t]; + const Item& mat = rule.matchStr[tag]; if (mat.type != kMatchElem_Type_Class) { Error("improper use of class as target of mapping", 0, rule.lineNumber); continue; @@ -3307,7 +3312,7 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl case kMatchElem_Type_Copy: // should only occur in UU table - if (t > (int)rule.matchStr.size()) { + if (tag > rule.matchStr.size()) { Error("no corresponding item for copy", 0, rule.lineNumber); goto ERR_FOUND; } @@ -3324,13 +3329,18 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl if (rule.replaceStr.size() <= 3) { WRITE(lookup[i].bytes.count, rule.replaceStr.size()); // this will get overwritten by lookup[i].rules.type if string rules turn out to be needed - UInt32 j; - for (j = 0; j < rule.replaceStr.size(); ++j) { + for (UInt32 j = 0; j < rule.replaceStr.size(); ++j) { const Item& rep = rule.replaceStr[j]; - int t = rep.tag.length() > 0 ? findTag(rep.tag, rule.matchStr) : j; - if (t == -1) { - Error("tag not found", rep.tag.c_str(), rule.lineNumber); - goto ERR_FOUND; + vector<Item>::size_type tag; + if (rep.tag.length() > 0) { + const int result = findTag(rep.tag, rule.matchStr); + if (result < 0) { + Error("tag not found", rep.tag.c_str(), rule.lineNumber); + goto ERR_FOUND; + } + tag = static_cast<vector<Item>::size_type>(result); + } else { + tag = j; } switch (rep.type) { case 0: // literal @@ -3338,12 +3348,12 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl break; case kMatchElem_Type_Class: - if (t > (int)rule.matchStr.size()) { + if (tag > rule.matchStr.size()) { Error("no corresponding item for class replacement", 0, rule.lineNumber); goto ERR_FOUND; } else { - const Item& mat = rule.matchStr[t]; + const Item& mat = rule.matchStr[tag]; if (mat.type != kMatchElem_Type_Class) { Error("improper use of class as target of mapping", 0, rule.lineNumber); goto ERR_FOUND; @@ -3370,7 +3380,7 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl case kMatchElem_Type_Copy: // should only occur in BB table - if (t > (int)rule.matchStr.size()) { + if (tag > rule.matchStr.size()) { Error("no corresponding item for copy", 0, rule.lineNumber); goto ERR_FOUND; } @@ -3455,22 +3465,22 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl currentPass.supplementaryChars = true; UInt32 headerOffset = table.size(); - table.append((const char*)&th, sizeof(th)); + table.append(reinterpret_cast<const char*>(&th), sizeof(th)); if (fromUni) { WRITE(th.pageBase, table.size()); UInt32 i, j; if (currentPass.supplementaryChars) { - buildVars.planeMap.resize(17, 0xff); + buildVars.planeMap.resize(17, '\xff'); for (i = 0; i < buildVars.planeMap.size(); ++i) appendToTable(table, buildVars.planeMap[i]); - appendToTable(table, (UInt8)buildVars.pageMaps.size()); + appendToTable(table, UInt8(buildVars.pageMaps.size())); align(table, 4); } for (i = 0; i < buildVars.pageMaps.size(); ++i) for (j = 0; j < buildVars.pageMaps[i].size(); ++j) - appendToTable(table, (UInt8)buildVars.pageMaps[i][j]); + appendToTable(table, UInt8(buildVars.pageMaps[i][j])); align(table, 4); for (i = 0; i < buildVars.charMaps.size(); ++i) @@ -3515,17 +3525,17 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl sortedClass.erase(sortedClass.begin() + j); } - appendToTable(classes, (UInt32)sortedClass.size()); + appendToTable(classes, UInt32(sortedClass.size())); if (fromUni) if (currentPass.supplementaryChars) for (Class::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) appendToTable(classes, *x); else for (Class::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) - appendToTable(classes, (UInt16)*x); + appendToTable(classes, UInt16(*x)); else for (Class::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) - appendToTable(classes, (UInt8)*x); + appendToTable(classes, UInt8(*x)); align(classes, 4); } // copy the real classOffsets into the table @@ -3563,17 +3573,17 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl sortedClass.erase(sortedClass.begin() + j); } - appendToTable(classes, (UInt32)sortedClass.size()); + appendToTable(classes, UInt32(sortedClass.size())); if (toUni) if (currentPass.supplementaryChars) for (vector<Member>::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) appendToTable(classes, x->value); else for (vector<Member>::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) - appendToTable(classes, (UInt16)x->value); + appendToTable(classes, UInt16(x->value)); else for (vector<Member>::iterator x = sortedClass.begin(); x != sortedClass.end(); ++x) - appendToTable(classes, (UInt8)(x->value)); + appendToTable(classes, UInt8(x->value)); align(classes, 4); } // copy the real classOffsets into the table @@ -3588,7 +3598,7 @@ Compiler::buildTable(vector<Rule>& rules, bool fromUni, bool toUni, string& tabl if (currentPass.supplementaryChars) WRITE(th.flags, READ(th.flags) | kTableFlags_Supplementary); WRITE(th.length, table.size()); - table.replace(0, sizeof(th), (const char*)&th, sizeof(th)); + table.replace(0, sizeof(th), reinterpret_cast<const char*>(&th), sizeof(th)); } void diff --git a/Build/source/libs/teckit/TECkit-src/source/Compiler.h b/Build/source/libs/teckit/TECkit-src/source/Compiler.h index 00da2824922..1f3975b83d8 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Compiler.h +++ b/Build/source/libs/teckit/TECkit-src/source/Compiler.h @@ -20,8 +20,7 @@ Changes: -------------------------------------------------------------------------*/ -#ifndef __Compiler_H__ -#define __Compiler_H__ +#pragma once #ifdef HAVE_CONFIG_H # include "config.h" /* a Unix-ish setup where we have config.h available */ @@ -274,7 +273,7 @@ protected: bool GetNextToken(); bool ExpectToken(tokenType type, const char* errMsg); bool ExpectToken(char c, const char* errMsg) - { return ExpectToken((tokenType)c, errMsg); } + { return ExpectToken(tokenType(c), errMsg); } void Error(const char* errMsg, const char* s = 0, UInt32 line = 0xffffffff); void StartDefaultPass(); void AppendLiteral(UInt32 val, bool negate = false); @@ -284,7 +283,7 @@ protected: void AppendToRule(const Item& item); bool tagExists(bool rhs, const string& tag); void AssignTag(const string& tag); - void SetMinMax(int repeatMin, int repeatMax); + void SetMinMax(UInt32 repeatMin, UInt32 repeatMax); void FinishPass(); string asUTF8(const string32 s); void ReadNameString(UInt16 nameID); @@ -307,19 +306,18 @@ protected: long uniClassIndex(UInt32 charCode, UInt32 classIndex); long byteClassIndex(UInt8 charCode, UInt32 classIndex); bool isSingleCharRule(const Rule& rule); - void appendMatchElem(string& packedRule, Item& item, int index, + void appendMatchElem(string& packedRule, Item& item, unsigned int index, vector<MatClass>& matchClasses); void appendReplaceElem(string& packedRule, Item& item, vector<Item>& matchStr, vector<RepClass>& repClasses); void appendToTable(string& s, const char* ptr, UInt32 len); template <class T> void appendToTable(string& table, T x) { + const char* xp = reinterpret_cast<const char*>(&x); #ifdef WORDS_BIGENDIAN - const char* xp = (const char*)&x; table.append(xp, sizeof(x)); #else /* split into separate statements to work around VC++6 problems */ - const char* xp = (const char*)&x; xp = xp + sizeof(T); for (unsigned int i = 0; i < sizeof(T); ++i) { xp = xp - 1; @@ -329,7 +327,7 @@ protected: } vector<Item> reverseContext(const vector<Item>& ctx); - void align(string& table, int alignment); + void align(string& table, string::size_type alignment); void xmlOut(const char* s); void xmlOut(const string& s); @@ -345,5 +343,3 @@ extern "C" { }; extern CharName gUnicodeNames[]; } - -#endif /* __Compiler_H__ */ diff --git a/Build/source/libs/teckit/TECkit-src/source/Engine.cpp b/Build/source/libs/teckit/TECkit-src/source/Engine.cpp index e8df9ba391c..9b7f104f020 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Engine.cpp +++ b/Build/source/libs/teckit/TECkit-src/source/Engine.cpp @@ -400,12 +400,12 @@ Pass::Pass(const TableHeader* inTable, Converter* cnv) bSupplementaryChars = (READ(tableHeader->flags) & kTableFlags_Supplementary) != 0; numPageMaps = 1; - pageBase = (const Byte*)tableHeader + READ(tableHeader->pageBase); - lookupBase = (const Lookup*)((const Byte*)tableHeader + READ(tableHeader->lookupBase)); - matchClassBase = (const Byte*)tableHeader + READ(tableHeader->matchClassBase); - repClassBase = (const Byte*)tableHeader + READ(tableHeader->repClassBase); - stringListBase = (const Byte*)tableHeader + READ(tableHeader->stringListBase); - stringRuleData = (const Byte*)tableHeader + READ(tableHeader->stringRuleData); + pageBase = reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->pageBase); + lookupBase = reinterpret_cast<const Lookup*>(reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->lookupBase)); + matchClassBase = reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->matchClassBase); + repClassBase = reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->repClassBase); + stringListBase = reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->stringListBase); + stringRuleData = reinterpret_cast<const Byte*>(tableHeader) + READ(tableHeader->stringRuleData); if (bInputIsUnicode && bSupplementaryChars) { // support supplementary plane chars @@ -580,7 +580,7 @@ binary_search(const T* array, UInt32 count, UInt32 value) long Pass::classMatch(UInt32 classNumber, UInt32 inChar) const { - const UInt32* classPtr = (const UInt32*)(matchClassBase + READ(*((const UInt32*)matchClassBase + classNumber))); + const UInt32* classPtr = reinterpret_cast<const UInt32*>(matchClassBase + READ(*(reinterpret_cast<const UInt32*>(matchClassBase) + classNumber))); UInt32 memberCount = READ(*classPtr++); if (bInputIsUnicode) { if (bSupplementaryChars) { @@ -591,16 +591,16 @@ Pass::classMatch(UInt32 classNumber, UInt32 inChar) const } else { // classes are 16-bit - const UInt16* p = binary_search((const UInt16*)classPtr, memberCount, inChar); + const UInt16* p = binary_search(reinterpret_cast<const UInt16*>(classPtr), memberCount, inChar); if (READ(*p) == inChar) - return p - (const UInt16*)classPtr; + return p - reinterpret_cast<const UInt16*>(classPtr); } } else { // classes are 8-bit - const UInt8* p = binary_search((const UInt8*)classPtr, memberCount, inChar); + const UInt8* p = binary_search(reinterpret_cast<const UInt8*>(classPtr), memberCount, inChar); if (READ(*p) == inChar) - return p - (const UInt8*)classPtr; + return p - reinterpret_cast<const UInt8*>(classPtr); } return -1; } @@ -608,16 +608,16 @@ Pass::classMatch(UInt32 classNumber, UInt32 inChar) const UInt32 Pass::repClassMember(UInt32 classNumber, UInt32 index) const { - const UInt32* classPtr = (const UInt32*)(repClassBase + READ(*((const UInt32*)repClassBase + classNumber))); + const UInt32* classPtr = reinterpret_cast<const UInt32*>(repClassBase + READ(*(reinterpret_cast<const UInt32*>(repClassBase) + classNumber))); UInt32 memberCount = READ(*classPtr++); if (index < memberCount) if (bOutputIsUnicode) if (bSupplementaryChars) return READ(classPtr[index]); else - return READ(((const UInt16*)classPtr)[index]); + return READ(reinterpret_cast<const UInt16*>(classPtr)[index]); else { - return READ(((const UInt8*)classPtr)[index]); + return READ(reinterpret_cast<const UInt8*>(classPtr)[index]); } else return 0; // this can't happen if the compiler is right! @@ -997,7 +997,7 @@ Pass::DoMapping() if (bInputIsUnicode) { // Unicode lookup UInt16 charIndex = 0; - if ((const UInt8*)lookupBase == pageBase) { + if (reinterpret_cast<const UInt8*>(lookupBase) == pageBase) { // leave charIndex == 0 : pass with no rules } else { @@ -1005,7 +1005,7 @@ Pass::DoMapping() const UInt8* pageMap = 0; if (bSupplementaryChars) { if ((plane < 17) && (READ(planeMap[plane]) != 0xff)) { - pageMap = (const UInt8*)(pageBase + 256 * READ(planeMap[plane])); + pageMap = reinterpret_cast<const UInt8*>(pageBase + 256 * READ(planeMap[plane])); goto GOT_PAGE_MAP; } } @@ -1014,7 +1014,7 @@ Pass::DoMapping() GOT_PAGE_MAP: UInt8 page = (inChar >> 8) & 0xff; if (READ(pageMap[page]) != 0xff) { - const UInt16* charMapBase = (const UInt16*)(pageBase + 256 * numPageMaps); + const UInt16* charMapBase = reinterpret_cast<const UInt16*>(pageBase + 256 * numPageMaps); const UInt16* charMap = charMapBase + 256 * READ(pageMap[page]); charIndex = READ(charMap[inChar & 0xff]); } @@ -1024,7 +1024,7 @@ Pass::DoMapping() } else { // byte-oriented lookup - if (pageBase != (const Byte*)tableHeader) { + if (pageBase != reinterpret_cast<const Byte*>(tableHeader)) { // dbcsPage present long pageNumber = READ(pageBase[inChar]); if (pageNumber == 0) @@ -1054,14 +1054,14 @@ Pass::DoMapping() UInt8 ruleType = READ(lookup->rules.type); if (ruleType == kLookupType_StringRules || (ruleType & kLookupType_RuleTypeMask) == kLookupType_ExtStringRules) { // process string rule list - const UInt32* ruleList = (const UInt32*)stringListBase + READ(lookup->rules.ruleIndex); + const UInt32* ruleList = reinterpret_cast<const UInt32*>(stringListBase) + READ(lookup->rules.ruleIndex); bool matched = false; bool allowInsertion = true; int ruleCount = READ(lookup->rules.ruleCount); if ((ruleType & kLookupType_RuleTypeMask) == kLookupType_ExtStringRules) ruleCount += 256 * (ruleType & kLookupType_ExtRuleCountMask); for ( ; ruleCount > 0; --ruleCount) { - const StringRule* rule = (const StringRule*)(stringRuleData + READ(*ruleList)); + const StringRule* rule = reinterpret_cast<const StringRule*>(stringRuleData + READ(*ruleList)); #ifdef TRACING if (traceLevel > 0) { cerr << "** trying match: "; @@ -1075,7 +1075,7 @@ if (traceLevel > 0) { if (matchElems == 0 && allowInsertion == false) continue; patternLength = matchElems + READ(rule->postLength); - pattern = (const MatchElem*)(rule + 1); // point past the defined struct for the rule header + pattern = reinterpret_cast<const MatchElem*>(rule + 1); // point past the defined struct for the rule header direction = 1; infoLimit = matchElems; @@ -1116,7 +1116,7 @@ if (traceLevel > 0) { cerr << "** GENERATES:"; } #endif - const RepElem* r = (const RepElem*)(pattern + patternLength); + const RepElem* r = reinterpret_cast<const RepElem*>(pattern + patternLength); for (int i = 0; i < READ(rule->repLength); ++i, ++r) { #ifdef TRACING if (traceLevel > 0) @@ -1285,11 +1285,11 @@ Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, finalStage = this; UInt16 normForm = 0; if (inTable != 0) { - const FileHeader* fh = (const FileHeader*)inTable; + const FileHeader* fh = reinterpret_cast<const FileHeader*>(inTable); if (READ(fh->type) == kMagicNumberCmp) { // the table is compressed; allocate a new buffer and decompress unsigned long uncompressedLen = READ(fh->version); - table = (Byte*)malloc(uncompressedLen); + table = static_cast<Byte*>(malloc(uncompressedLen)); if (table == 0) { status = kStatus_OutOfMemory; return; @@ -1299,7 +1299,7 @@ Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, status = kStatus_InvalidMapping; return; } - fh = (const FileHeader*)table; + fh = reinterpret_cast<const FileHeader*>(table); } if (READ(fh->type) != kMagicNumber) { @@ -1312,7 +1312,7 @@ Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, } if (table == 0) { - table = (Byte*)malloc(inTableSize); + table = static_cast<Byte*>(malloc(inTableSize)); if (table == 0) { status = kStatus_OutOfMemory; return; @@ -1320,8 +1320,8 @@ Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, memcpy(table, inTable, inTableSize); } - fh = (const FileHeader*)table; - const UInt32* nameOffsets = (const UInt32*)(table + sizeof(FileHeader)); + fh = reinterpret_cast<const FileHeader*>(table); + const UInt32* nameOffsets = reinterpret_cast<const UInt32*>(table + sizeof(FileHeader)); const UInt32* tableBase = nameOffsets + READ(fh->numNames); UInt32 numTables = READ(fh->numFwdTables); if (!forward) { @@ -1376,7 +1376,7 @@ Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, // create the processing pipeline for (UInt32 i = 0; i < numTables; ++i) { - const TableHeader* t = (const TableHeader*)(table + READ(tableBase[i])); + const TableHeader* t = reinterpret_cast<const TableHeader*>(table + READ(tableBase[i])); Stage* p = 0; switch (READ(t->type)) { case kTableType_BB: @@ -1686,7 +1686,7 @@ Converter::IsForward() const void Converter::GetFlags(UInt32& sourceFlags, UInt32& targetFlags) const { - const FileHeader* fh = (const FileHeader*)table; + const FileHeader* fh = reinterpret_cast<const FileHeader*>(table); if (forward) { sourceFlags = READ(fh->formFlagsLHS); targetFlags = READ(fh->formFlagsRHS); @@ -1700,13 +1700,13 @@ Converter::GetFlags(UInt32& sourceFlags, UInt32& targetFlags) const static bool getNamePtrFromTable(const Byte* table, UInt16 nameID, const Byte*& outNamePtr, UInt32& outNameLen) { - const FileHeader* fh = (const FileHeader*)table; - const UInt32* nameOffsets = (const UInt32*)(table + sizeof(FileHeader)); + const FileHeader* fh = reinterpret_cast<const FileHeader*>(table); + const UInt32* nameOffsets = reinterpret_cast<const UInt32*>(table + sizeof(FileHeader)); for (UInt32 i = 0; i < READ(fh->numNames); ++i) { - const NameRec* n = (const NameRec*)(table + READ(nameOffsets[i])); + const NameRec* n = reinterpret_cast<const NameRec*>(table + READ(nameOffsets[i])); if (READ(n->nameID) == nameID) { outNameLen = READ(n->nameLength); - outNamePtr = (const Byte*)n + sizeof(NameRec); + outNamePtr = reinterpret_cast<const Byte*>(n) + sizeof(NameRec); return true; } } @@ -1913,7 +1913,7 @@ Converter::Validate(const Converter* cnv) if (cnv->status != kStatus_NoError) return false; if (cnv->table != 0) { - const FileHeader* fh = (const FileHeader*)cnv->table; + const FileHeader* fh = reinterpret_cast<const FileHeader*>(cnv->table); if (READ(fh->type) != kMagicNumber) return false; } @@ -1937,7 +1937,7 @@ TECkit_CreateConverter( cnv = new Converter(mapping, mappingSize, mapForward, inputForm, outputForm); status = cnv->creationStatus(); if (status == kStatus_NoError) - *converter = (TECkit_Converter)cnv; + *converter = reinterpret_cast<TECkit_Converter>(cnv); else delete cnv; } @@ -1956,7 +1956,7 @@ TECkit_DisposeConverter( TECkit_Converter converter) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else @@ -1974,7 +1974,7 @@ TECkit_GetConverterName( UInt32* nameLength) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else { @@ -1998,7 +1998,7 @@ TECkit_GetConverterFlags( UInt32* targetFlags) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else @@ -2012,7 +2012,7 @@ TECkit_ResetConverter( TECkit_Converter converter) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else @@ -2034,7 +2034,7 @@ TECkit_ConvertBufferOpt( UInt32* lookaheadCount) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else @@ -2069,7 +2069,7 @@ TECkit_FlushOpt( UInt32* lookaheadCount) { TECkit_Status status = kStatus_NoError; - Converter* cnv = (Converter*)converter; + Converter* cnv = reinterpret_cast<Converter*>(converter); if (!Converter::Validate(cnv)) status = kStatus_InvalidConverter; else @@ -2101,12 +2101,12 @@ TECkit_GetMappingFlags( if (mapping == 0) status = kStatus_InvalidMapping; else { - const FileHeader* fh = (const FileHeader*)mapping; + const FileHeader* fh = reinterpret_cast<const FileHeader*>(mapping); FileHeader header; if (READ(fh->type) == kMagicNumberCmp) { // compressed mapping, so we need to decompress enough of it to read the flags unsigned long uncompressedLen = sizeof(FileHeader); - int result = uncompress((Byte*)&header, &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); + int result = uncompress(reinterpret_cast<Byte*>(&header), &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); if (result != Z_BUF_ERROR) status = kStatus_InvalidMapping; fh = &header; @@ -2140,13 +2140,13 @@ TECkit_GetMappingName( if (mapping == 0) status = kStatus_InvalidMapping; else { - const FileHeader* fh = (const FileHeader*)mapping; + const FileHeader* fh = reinterpret_cast<const FileHeader*>(mapping); FileHeader header; if (READ(fh->type) == kMagicNumberCmp) { // compressed mapping, so we need to decompress the fixed header to read the headerLength field, // and then decompress the complete header to get the names unsigned long uncompressedLen = sizeof(FileHeader); - int result = uncompress((Byte*)&header, &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); + int result = uncompress(reinterpret_cast<Byte*>(&header), &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); if (result != Z_BUF_ERROR) status = kStatus_InvalidMapping; else { @@ -2156,10 +2156,10 @@ TECkit_GetMappingName( if (buf == 0) status = kStatus_OutOfMemory; else { - result = uncompress((Byte*)buf, &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); + result = uncompress(static_cast<Byte*>(buf), &uncompressedLen, mapping + 2 * sizeof(UInt32), mappingSize - 2 * sizeof(UInt32)); if (result != Z_BUF_ERROR) status = kStatus_InvalidMapping; - fh = (const FileHeader*)buf; + fh = static_cast<const FileHeader*>(buf); } } } @@ -2168,7 +2168,7 @@ TECkit_GetMappingName( status = kStatus_BadMappingVersion; else { const Byte* namePtr; - if (getNamePtrFromTable((const Byte*)fh, nameID, namePtr, *nameLength)) { + if (getNamePtrFromTable(reinterpret_cast<const Byte*>(fh), nameID, namePtr, *nameLength)) { UInt16 copyBytes = *nameLength < bufferSize ? *nameLength : bufferSize; if (copyBytes > 0) memcpy(nameBuffer, namePtr, copyBytes); diff --git a/Build/source/libs/teckit/TECkit-src/source/Engine.h b/Build/source/libs/teckit/TECkit-src/source/Engine.h index ac8eaa89205..3629bb21bcd 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Engine.h +++ b/Build/source/libs/teckit/TECkit-src/source/Engine.h @@ -17,8 +17,7 @@ Description: 2003-09-23 jk updated for version 2.1 with new Opt APIs */ -#ifndef __Engine_H__ -#define __Engine_H__ +#pragma once #include "TECkit_Engine.h" #include "TECkit_Format.h" @@ -117,7 +116,7 @@ protected: UInt32 match(int index, int repeats, int textLoc); // returns 0 for no match, 1 for match, or kNeedMoreInput/kInvalidChar - const MatchElem* pattern; + const MatchElem* pattern; int patternLength; int direction; MatchInfo info[256]; @@ -220,5 +219,3 @@ protected: UInt32 warningStatus; }; - -#endif /* __Engine_H__ */ diff --git a/Build/source/libs/teckit/TECkit-src/source/NormalizationData.c b/Build/source/libs/teckit/TECkit-src/source/NormalizationData.c index 85f7585aa1e..051c46c785f 100644 --- a/Build/source/libs/teckit/TECkit-src/source/NormalizationData.c +++ b/Build/source/libs/teckit/TECkit-src/source/NormalizationData.c @@ -2,7 +2,7 @@ const UInt8 ccPlaneMap[] = {0,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2}; const UInt8 ccPageMaps[][256] = { {0,0,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,0,0,15,0,0,0,16,17,18,19,20,21,22,0,0,23,0,0,0,0,0,0,0,0,0,0,0,24,25,0,0,26,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,27,0,28,29,30,31,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32,0,0,33,0}, - {0,34,35,36,0,0,0,0,0,0,37,0,0,38,0,39,40,41,42,43,44,45,46,47,48,0,49,0,50,51,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,52,53,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,56,0,0,0,0,0,0,0,0,0,0,0,0,0,57,0,0,0,0,0,0,0,58,59,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,34,35,36,0,0,0,0,0,0,37,0,0,38,0,39,40,41,42,43,44,45,46,47,48,49,50,0,51,52,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,53,54,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,55,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,56,57,0,0,0,0,0,0,0,0,0,0,0,0,0,58,54,59,0,0,0,0,0,60,61,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, }; @@ -19,7 +19,7 @@ const UInt8 ccCharClass[][256] = { {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,84,91,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, - {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,103,9,0,0,0,0,0,0,0,0,0,0,0,0,0,107,107,107,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,118,118,0,0,0,0,0,0,0,0,0,0,0,0,0,0,122,122,122,122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,103,103,9,0,0,0,0,0,0,0,0,0,0,0,0,0,107,107,107,107,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,118,118,9,0,0,0,0,0,0,0,0,0,0,0,0,0,122,122,122,122,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,0,220,0,216,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,129,130,0,132,0,0,0,0,0,130,130,130,130,0,0,130,0,230,230,9,0,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, @@ -56,6 +56,7 @@ const UInt8 ccCharClass[][256] = { {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,7,0,9,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,9,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, @@ -65,6 +66,7 @@ const UInt8 ccCharClass[][256] = { {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,216,216,1,1,1,0,0,0,226,216,216,216,216,216,0,0,0,0,0,0,0,0,220,220,220,220,220,220,220,220,0,0,230,230,230,230,230,220,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,230,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {230,230,230,230,230,230,230,0,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,230,0,0,230,230,230,230,230,230,230,0,230,230,0,230,230,230,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, + {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,230,230,230,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,220,220,220,220,220,220,220,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,230,230,230,230,230,230,7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}, }; diff --git a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Common.h b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Common.h index 84cdd531b8d..ba7ed77f3f4 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Common.h +++ b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Common.h @@ -23,8 +23,7 @@ History: xx-xxx-2002 jk version 2.0 initial release */ -#ifndef __TECkit_Common_H__ -#define __TECkit_Common_H__ +#pragma once #define kCurrentTECkitVersion 0x00020004 /* 16.16 version number */ @@ -91,5 +90,3 @@ typedef long TECkit_Status; #define kForm_UTF16LE 4 #define kForm_UTF32BE 5 #define kForm_UTF32LE 6 - -#endif diff --git a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Compiler.h b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Compiler.h index e53cfa6dec5..0c07e58c1cf 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Compiler.h +++ b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Compiler.h @@ -18,8 +18,7 @@ Copyright (c) 2002-2016 SIL International. */ -#ifndef __TECkit_Compiler_H__ -#define __TECkit_Compiler_H__ +#pragma once #include "TECkit_Common.h" @@ -98,5 +97,3 @@ TECkit_GetUnicodeValue(char* name); #ifdef __cplusplus } #endif - -#endif diff --git a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Engine.h b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Engine.h index 6951f106084..94090e88472 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Engine.h +++ b/Build/source/libs/teckit/TECkit-src/source/Public-headers/TECkit_Engine.h @@ -26,22 +26,21 @@ Description: 22-Dec-2001 jk initial version */ -#ifndef __TECkit_Engine_H__ -#define __TECkit_Engine_H__ +#pragma once #include "TECkit_Common.h" /* formFlags bits for normalization; if none are set, then this side of the mapping is normalization-form-agnostic on input, and may generate an unspecified mixture */ -#define kFlags_ExpectsNFC 0x00000001 /* expects fully composed text (NC) */ -#define kFlags_ExpectsNFD 0x00000002 /* expects fully decomposed text (NCD) */ -#define kFlags_GeneratesNFC 0x00000004 /* generates fully composed text (NC) */ -#define kFlags_GeneratesNFD 0x00000008 /* generates fully decomposed text (NCD) */ +#define kFlags_ExpectsNFC 0x00000001U /* expects fully composed text (NC) */ +#define kFlags_ExpectsNFD 0x00000002U /* expects fully decomposed text (NCD) */ +#define kFlags_GeneratesNFC 0x00000004U /* generates fully composed text (NC) */ +#define kFlags_GeneratesNFD 0x00000008U /* generates fully decomposed text (NCD) */ /* if VisualOrder is set, this side of the mapping deals with visual-order rather than logical-order text (only relevant for bidi scripts) */ -#define kFlags_VisualOrder 0x00008000 /* visual rather than logical order */ +#define kFlags_VisualOrder 0x00008000U /* visual rather than logical order */ /* if Unicode is set, the encoding is Unicode on this side of the mapping */ -#define kFlags_Unicode 0x00010000 /* this is Unicode rather than a byte encoding */ +#define kFlags_Unicode 0x00010000U /* this is Unicode rather than a byte encoding */ /* required names */ #define kNameID_LHS_Name 0 /* "source" or LHS encoding name, e.g. "SIL-EEG_URDU-2001" */ @@ -267,5 +266,3 @@ TECkit_FlushOpt( #if defined(__cplusplus) } /* extern "C" */ #endif - -#endif /* __TECkit_Engine_H__ */ diff --git a/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TECkit_Compile.cpp b/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TECkit_Compile.cpp index 5924864785b..cabbadfc0fc 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TECkit_Compile.cpp +++ b/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TECkit_Compile.cpp @@ -36,7 +36,7 @@ errFunc(void* /* userData */, const char* msg, const char* param, UInt32 line) if (param != 0) fprintf(stderr, ": \"%s\"", param); if (line != 0) - fprintf(stderr, " at line %lu", (unsigned long)line); + fprintf(stderr, " at line %lu", static_cast<unsigned long>(line)); fprintf(stderr, "\n"); } @@ -114,7 +114,7 @@ Usage: %s [-u] [-x] [-z] mapping_description [-o compiled_table]\n\ if (tecFileName == 0) { int x = strlen(mapFileName); - tecFileName = (char*)malloc(x + 5); + tecFileName = static_cast<char*>(malloc(x + 5)); if (tecFileName == 0) return 1; // unlikely! strcpy(tecFileName, mapFileName); @@ -143,7 +143,7 @@ Usage: %s [-u] [-x] [-z] mapping_description [-o compiled_table]\n\ if (inFile == 0) { // try adding .map - char* mapFileName2 = (char*)malloc(strlen(mapFileName) + 5); + char* mapFileName2 = static_cast<char*>(malloc(strlen(mapFileName) + 5)); if (mapFileName2 == 0) return 1; strcpy(mapFileName2, mapFileName); @@ -159,7 +159,7 @@ Usage: %s [-u] [-x] [-z] mapping_description [-o compiled_table]\n\ len = ftell(inFile); fseek(inFile, 0, SEEK_SET); - txt = (char*)malloc(len); + txt = static_cast<char*>(malloc(len)); if (txt == 0) { fprintf(stderr, "not enough memory to read mapping file\n"); return 1; // not enough memory @@ -194,7 +194,7 @@ Usage: %s [-u] [-x] [-z] mapping_description [-o compiled_table]\n\ TECkit_DisposeCompiled(compiledTable); } else { - fprintf(stderr, "compilation failed: status = %d\n", (int)status); + fprintf(stderr, "compilation failed: status = %d\n", int(status)); return 1; } diff --git a/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TxtConv.cpp b/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TxtConv.cpp index 9e0ae121459..aee9634f273 100644 --- a/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TxtConv.cpp +++ b/Build/source/libs/teckit/TECkit-src/source/Sample-tools/TxtConv.cpp @@ -76,8 +76,8 @@ doConversion(TECkit_Converter cnv, FILE* inFile, FILE* outFile, UInt32 opts) } if (inAvail > 0) { - status = TECkit_ConvertBufferOpt(cnv, (Byte*)inPtr, inAvail, &inUsed, - (Byte*)outBuffer, kOutBufLen, &outUsed, opts, &lookahead); + status = TECkit_ConvertBufferOpt(cnv, reinterpret_cast<Byte*>(inPtr), inAvail, &inUsed, + reinterpret_cast<Byte*>(outBuffer), kOutBufLen, &outUsed, opts, &lookahead); fwrite(outBuffer, 1, outUsed, outFile); switch (status & kStatusMask_Basic) { @@ -93,7 +93,7 @@ doConversion(TECkit_Converter cnv, FILE* inFile, FILE* outFile, UInt32 opts) case kStatus_UnmappedChar: fprintf(stderr, "processing aborted at unmappable character, within %lu characters before file offset %lu\n", - (unsigned long)lookahead, (unsigned long)(offset - amountToRead + inUsed)); + static_cast<unsigned long>(lookahead), static_cast<unsigned long>(offset - amountToRead + inUsed)); break; default: @@ -105,7 +105,7 @@ doConversion(TECkit_Converter cnv, FILE* inFile, FILE* outFile, UInt32 opts) if ((status & kStatusMask_Basic) != kStatus_UnmappedChar) { // flush the converter do { - status = TECkit_FlushOpt(cnv, (Byte*)outBuffer, kOutBufLen, &outUsed, opts, &lookahead); + status = TECkit_FlushOpt(cnv, reinterpret_cast<Byte*>(outBuffer), kOutBufLen, &outUsed, opts, &lookahead); fwrite(outBuffer, 1, outUsed, outFile); savedLen -= inUsed; inPtr += inUsed; @@ -113,7 +113,7 @@ doConversion(TECkit_Converter cnv, FILE* inFile, FILE* outFile, UInt32 opts) } while ((status & kStatusMask_Basic) == kStatus_OutputBufferFull); if ((status & kStatusMask_Basic) == kStatus_UnmappedChar) - fprintf(stderr, "processing aborted at unmappable character, within %lu characters before end of input\n", (unsigned long)lookahead); + fprintf(stderr, "processing aborted at unmappable character, within %lu characters before end of input\n", static_cast<unsigned long>(lookahead)); else if ((status & kStatusMask_Basic) != kStatus_NoError) fprintf(stderr, "bad returned status from TECkit_Flush: %ld\n", status); } @@ -340,7 +340,7 @@ Usage: %s -i inFile -o outFile [-t tecFile] [-r] [-if inForm] [-of outForm] [-no len = ftell(tecFile); fseek(tecFile, 0, SEEK_SET); - table = (char*)malloc(len); + table = static_cast<char*>(malloc(len)); if (table == 0) { fprintf(stderr, "out of memory!\n"); fclose(tecFile); @@ -351,8 +351,8 @@ Usage: %s -i inFile -o outFile [-t tecFile] [-r] [-if inForm] [-of outForm] [-no fclose(tecFile); status = forward - ? TECkit_GetMappingFlags((Byte*)table, len, &sourceFlags, &targetFlags) - : TECkit_GetMappingFlags((Byte*)table, len, &targetFlags, &sourceFlags); + ? TECkit_GetMappingFlags(reinterpret_cast<Byte*>(table), len, &sourceFlags, &targetFlags) + : TECkit_GetMappingFlags(reinterpret_cast<Byte*>(table), len, &targetFlags, &sourceFlags); if (status != kStatus_NoError) { fprintf(stderr, "couldn't get encoding flags from mapping\n"); return 1; @@ -510,7 +510,7 @@ Usage: %s -i inFile -o outFile [-t tecFile] [-r] [-if inForm] [-of outForm] [-no // OK, we have figured out the input and output encoding forms we want to use; // now at last we can instantiate a converter - status = TECkit_CreateConverter((Byte*)table, len, forward, inForm, outForm | normForm, &cnv); + status = TECkit_CreateConverter(reinterpret_cast<Byte*>(table), len, forward, inForm, outForm | normForm, &cnv); if (table != 0) free(table); if (status != kStatus_NoError) { diff --git a/Build/source/libs/teckit/TECkit-src/source/TECkit_Format.h b/Build/source/libs/teckit/TECkit-src/source/TECkit_Format.h index 0e04a45bb9f..fcad4ccb374 100644 --- a/Build/source/libs/teckit/TECkit-src/source/TECkit_Format.h +++ b/Build/source/libs/teckit/TECkit-src/source/TECkit_Format.h @@ -14,8 +14,7 @@ Description: 2006-06-02 jk added support for extended string rules (>255 per initial char) -------------------------------------------------------------------------*/ -#ifndef __TECkit_Format_H__ -#define __TECkit_Format_H__ +#pragma once #include "TECkit_Common.h" @@ -217,5 +216,3 @@ typedef union RepElem RepElem; #define kRepElem_Class kMatchElem_Type_Class #define kRepElem_Copy kMatchElem_Type_Copy #define kRepElem_Unmapped 0x0f /* used in default terminator rules */ - -#endif /* __TECkit_Format_H__ */ diff --git a/Build/source/libs/teckit/TECkit-src/source/UnicodeNames.cpp b/Build/source/libs/teckit/TECkit-src/source/UnicodeNames.cpp index 436c653263f..2d844f162ba 100644 --- a/Build/source/libs/teckit/TECkit-src/source/UnicodeNames.cpp +++ b/Build/source/libs/teckit/TECkit-src/source/UnicodeNames.cpp @@ -9,6 +9,7 @@ CharName gUnicodeNames[] = { {0x00B4,"ACUTE ACCENT"}, {0x299F,"ACUTE ANGLE"}, {0x2101,"ADDRESSED TO THE SUBJECT"}, +{0x1FA79,"ADHESIVE BANDAGE"}, {0x262C,"ADI SHAKTI"}, {0x1E944,"ADLAM ALIF LENGTHENER"}, {0x1E900,"ADLAM CAPITAL LETTER ALIF"}, @@ -61,6 +62,7 @@ CharName gUnicodeNames[] = { {0x1E947,"ADLAM HAMZA"}, {0x1E95E,"ADLAM INITIAL EXCLAMATION MARK"}, {0x1E95F,"ADLAM INITIAL QUESTION MARK"}, +{0x1E94B,"ADLAM NASALIZATION MARK"}, {0x1E94A,"ADLAM NUKTA"}, {0x1E922,"ADLAM SMALL LETTER ALIF"}, {0x1E926,"ADLAM SMALL LETTER BA"}, @@ -2410,6 +2412,7 @@ CharName gUnicodeNames[] = { {0x269B,"ATOM SYMBOL"}, {0x1F346,"AUBERGINE"}, {0x20B3,"AUSTRAL SIGN"}, +{0x1F6FA,"AUTO RICKSHAW"}, {0x1F3E7,"AUTOMATED TELLER MACHINE"}, {0x1F697,"AUTOMOBILE"}, {0x10B39,"AVESTAN ABBREVIATION MARK"}, @@ -2468,6 +2471,7 @@ CharName gUnicodeNames[] = { {0x10B30,"AVESTAN LETTER ZE"}, {0x10B32,"AVESTAN LETTER ZHE"}, {0x1F951,"AVOCADO"}, +{0x1FA93,"AXE"}, {0x1F476,"BABY"}, {0x1F47C,"BABY ANGEL"}, {0x1F37C,"BABY BOTTLE"}, @@ -2607,6 +2611,7 @@ CharName gUnicodeNames[] = { {0x1B37,"BALINESE VOWEL SIGN ULU SARI"}, {0x1B5C,"BALINESE WINDU"}, {0x1F9F6,"BALL OF YARN"}, +{0x1FA70,"BALLET SHOES"}, {0x1F388,"BALLOON"}, {0x2749,"BALLOON-SPOKED ASTERISK"}, {0x1F5F6,"BALLOT BOLD SCRIPT X"}, @@ -3278,6 +3283,7 @@ CharName gUnicodeNames[] = { {0xA6F7,"BAMUM QUESTION MARK"}, {0xA6F6,"BAMUM SEMICOLON"}, {0x1F34C,"BANANA"}, +{0x1FA95,"BANJO"}, {0x1F3E6,"BANK"}, {0x1F4B5,"BANKNOTE WITH DOLLAR SIGN"}, {0x1F4B6,"BANKNOTE WITH EURO SIGN"}, @@ -3502,6 +3508,7 @@ CharName gUnicodeNames[] = { {0x23E3,"BENZENE RING WITH CIRCLE"}, {0x2136,"BET SYMBOL"}, {0x226C,"BETWEEN"}, +{0x1F9C3,"BEVERAGE BOX"}, {0x11C41,"BHAIKSUKI DANDA"}, {0x11C58,"BHAIKSUKI DIGIT EIGHT"}, {0x11C55,"BHAIKSUKI DIGIT FIVE"}, @@ -3613,11 +3620,38 @@ CharName gUnicodeNames[] = { {0x29D3,"BLACK BOWTIE"}, {0x272C,"BLACK CENTRE WHITE STAR"}, {0x265D,"BLACK CHESS BISHOP"}, +{0x1FA12,"BLACK CHESS BISHOP ROTATED NINETY DEGREES"}, +{0x1FA3C,"BLACK CHESS BISHOP ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA49,"BLACK CHESS EQUIHOPPER"}, +{0x1FA4C,"BLACK CHESS EQUIHOPPER ROTATED NINETY DEGREES"}, {0x265A,"BLACK CHESS KING"}, +{0x1FA0F,"BLACK CHESS KING ROTATED NINETY DEGREES"}, +{0x1FA39,"BLACK CHESS KING ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x265E,"BLACK CHESS KNIGHT"}, +{0x1FA07,"BLACK CHESS KNIGHT ROTATED FORTY-FIVE DEGREES"}, +{0x1FA13,"BLACK CHESS KNIGHT ROTATED NINETY DEGREES"}, +{0x1FA1C,"BLACK CHESS KNIGHT ROTATED ONE HUNDRED THIRTY-FIVE DEGREES"}, +{0x1FA46,"BLACK CHESS KNIGHT ROTATED THREE HUNDRED FIFTEEN DEGREES"}, +{0x1FA3D,"BLACK CHESS KNIGHT ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA31,"BLACK CHESS KNIGHT ROTATED TWO HUNDRED TWENTY-FIVE DEGREES"}, +{0x1FA53,"BLACK CHESS KNIGHT-BISHOP"}, +{0x1FA51,"BLACK CHESS KNIGHT-QUEEN"}, +{0x1FA52,"BLACK CHESS KNIGHT-ROOK"}, {0x265F,"BLACK CHESS PAWN"}, +{0x1FA14,"BLACK CHESS PAWN ROTATED NINETY DEGREES"}, +{0x1FA3E,"BLACK CHESS PAWN ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x265B,"BLACK CHESS QUEEN"}, +{0x1FA10,"BLACK CHESS QUEEN ROTATED NINETY DEGREES"}, +{0x1FA3A,"BLACK CHESS QUEEN ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x265C,"BLACK CHESS ROOK"}, +{0x1FA11,"BLACK CHESS ROOK ROTATED NINETY DEGREES"}, +{0x1FA3B,"BLACK CHESS ROOK ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA27,"BLACK CHESS TURNED BISHOP"}, +{0x1FA24,"BLACK CHESS TURNED KING"}, +{0x1FA28,"BLACK CHESS TURNED KNIGHT"}, +{0x1FA29,"BLACK CHESS TURNED PAWN"}, +{0x1FA25,"BLACK CHESS TURNED QUEEN"}, +{0x1FA26,"BLACK CHESS TURNED ROOK"}, {0x25CF,"BLACK CIRCLE"}, {0x23FA,"BLACK CIRCLE FOR RECORD"}, {0x29ED,"BLACK CIRCLE WITH DOWN ARROW"}, @@ -4377,11 +4411,13 @@ CharName gUnicodeNames[] = { {0x1F470,"BRIDE WITH VEIL"}, {0x1F309,"BRIDGE AT NIGHT"}, {0x1F4BC,"BRIEFCASE"}, +{0x1FA72,"BRIEFS"}, {0x1F966,"BROCCOLI"}, {0x00A6,"BROKEN BAR"}, {0x238B,"BROKEN CIRCLE WITH NORTHWEST ARROW"}, {0x1F494,"BROKEN HEART"}, {0x1F9F9,"BROOM"}, +{0x1F90E,"BROWN HEART"}, {0x1F41B,"BUG"}, {0x1A1F,"BUGINESE END OF SECTION"}, {0x1A15,"BUGINESE LETTER A"}, @@ -4444,6 +4480,7 @@ CharName gUnicodeNames[] = { {0x1F68F,"BUS STOP"}, {0x1F464,"BUST IN SILHOUETTE"}, {0x1F465,"BUSTS IN SILHOUETTE"}, +{0x1F9C8,"BUTTER"}, {0x1F98B,"BUTTERFLY"}, {0x1D09C,"BYZANTINE MUSICAL SYMBOL AGOGI ARGI"}, {0x1D09B,"BYZANTINE MUSICAL SYMBOL AGOGI ARGOTERI"}, @@ -5546,6 +5583,7 @@ CharName gUnicodeNames[] = { {0xFE4A,"CENTRELINE OVERLINE"}, {0x26B3,"CERES"}, {0x26D3,"CHAINS"}, +{0x1FA91,"CHAIR"}, {0x11132,"CHAKMA AU MARK"}, {0x11141,"CHAKMA DANDA"}, {0x1113E,"CHAKMA DIGIT EIGHT"}, @@ -7999,6 +8037,7 @@ CharName gUnicodeNames[] = { {0x2CE8,"COPTIC SYMBOL TAU RO"}, {0x1F12F,"COPYLEFT SYMBOL"}, {0x00A9,"COPYRIGHT SIGN"}, +{0x2E4F,"CORNISH VERSE DIVIDER"}, {0x2258,"CORRESPONDS TO"}, {0x1F6CB,"COUCH AND LAMP"}, {0x2334,"COUNTERBORE"}, @@ -9752,6 +9791,7 @@ CharName gUnicodeNames[] = { {0xFE4D,"DASHED LOW LINE"}, {0xFE49,"DASHED OVERLINE"}, {0x279F,"DASHED TRIANGLE-HEADED RIGHTWARDS ARROW"}, +{0x1F9CF,"DEAF PERSON"}, {0x1F333,"DECIDUOUS TREE"}, {0x23E8,"DECIMAL EXPONENT SYMBOL"}, {0x2396,"DECIMAL SEPARATOR KEY SYMBOL"}, @@ -10103,10 +10143,12 @@ CharName gUnicodeNames[] = { {0x2382,"DISCONTINUOUS UNDERLINE SYMBOL"}, {0x3003,"DITTO MARK"}, {0x2223,"DIVIDES"}, +{0x1F93F,"DIVING MASK"}, {0x00F7,"DIVISION SIGN"}, {0x2215,"DIVISION SLASH"}, {0x22C7,"DIVISION TIMES"}, {0x26AE,"DIVORCE SYMBOL"}, +{0x1FA94,"DIYA LAMP"}, {0x1F635,"DIZZY FACE"}, {0x1F4AB,"DIZZY SYMBOL"}, {0x1F9EC,"DNA DOUBLE HELIX"}, @@ -10465,6 +10507,7 @@ CharName gUnicodeNames[] = { {0x26DA,"DRIVE SLOW SIGN"}, {0x1F42A,"DROMEDARY CAMEL"}, {0x1F924,"DROOLING FACE"}, +{0x1FA78,"DROP OF BLOOD"}, {0x1F4A7,"DROPLET"}, {0x1F941,"DRUM WITH DRUMSTICKS"}, {0x1F986,"DUCK"}, @@ -10618,6 +10661,7 @@ CharName gUnicodeNames[] = { {0x1F442,"EAR"}, {0x1F33D,"EAR OF MAIZE"}, {0x1F33E,"EAR OF RICE"}, +{0x1F9BB,"EAR WITH HEARING AID"}, {0x2641,"EARTH"}, {0x1F30E,"EARTH GLOBE AMERICAS"}, {0x1F30F,"EARTH GLOBE ASIA-AUSTRALIA"}, @@ -10750,6 +10794,7 @@ CharName gUnicodeNames[] = { {0x13057,"EGYPTIAN HIEROGLYPH B007"}, {0x13058,"EGYPTIAN HIEROGLYPH B008"}, {0x13059,"EGYPTIAN HIEROGLYPH B009"}, +{0x13437,"EGYPTIAN HIEROGLYPH BEGIN SEGMENT"}, {0x1305A,"EGYPTIAN HIEROGLYPH C001"}, {0x1305B,"EGYPTIAN HIEROGLYPH C002"}, {0x1305C,"EGYPTIAN HIEROGLYPH C002A"}, @@ -10914,6 +10959,7 @@ CharName gUnicodeNames[] = { {0x130FB,"EGYPTIAN HIEROGLYPH E036"}, {0x130FC,"EGYPTIAN HIEROGLYPH E037"}, {0x130FD,"EGYPTIAN HIEROGLYPH E038"}, +{0x13438,"EGYPTIAN HIEROGLYPH END SEGMENT"}, {0x130FE,"EGYPTIAN HIEROGLYPH F001"}, {0x130FF,"EGYPTIAN HIEROGLYPH F001A"}, {0x13100,"EGYPTIAN HIEROGLYPH F002"}, @@ -11052,6 +11098,7 @@ CharName gUnicodeNames[] = { {0x13185,"EGYPTIAN HIEROGLYPH H006A"}, {0x13186,"EGYPTIAN HIEROGLYPH H007"}, {0x13187,"EGYPTIAN HIEROGLYPH H008"}, +{0x13431,"EGYPTIAN HIEROGLYPH HORIZONTAL JOINER"}, {0x13188,"EGYPTIAN HIEROGLYPH I001"}, {0x13189,"EGYPTIAN HIEROGLYPH I002"}, {0x1318A,"EGYPTIAN HIEROGLYPH I003"}, @@ -11071,6 +11118,10 @@ CharName gUnicodeNames[] = { {0x13198,"EGYPTIAN HIEROGLYPH I013"}, {0x13199,"EGYPTIAN HIEROGLYPH I014"}, {0x1319A,"EGYPTIAN HIEROGLYPH I015"}, +{0x13435,"EGYPTIAN HIEROGLYPH INSERT AT BOTTOM END"}, +{0x13433,"EGYPTIAN HIEROGLYPH INSERT AT BOTTOM START"}, +{0x13434,"EGYPTIAN HIEROGLYPH INSERT AT TOP END"}, +{0x13432,"EGYPTIAN HIEROGLYPH INSERT AT TOP START"}, {0x1319B,"EGYPTIAN HIEROGLYPH K001"}, {0x1319C,"EGYPTIAN HIEROGLYPH K002"}, {0x1319D,"EGYPTIAN HIEROGLYPH K003"}, @@ -11327,6 +11378,7 @@ CharName gUnicodeNames[] = { {0x13298,"EGYPTIAN HIEROGLYPH O050A"}, {0x13299,"EGYPTIAN HIEROGLYPH O050B"}, {0x1329A,"EGYPTIAN HIEROGLYPH O051"}, +{0x13436,"EGYPTIAN HIEROGLYPH OVERLAY MIDDLE"}, {0x1329B,"EGYPTIAN HIEROGLYPH P001"}, {0x1329C,"EGYPTIAN HIEROGLYPH P001A"}, {0x1329D,"EGYPTIAN HIEROGLYPH P002"}, @@ -11603,6 +11655,7 @@ CharName gUnicodeNames[] = { {0x133AC,"EGYPTIAN HIEROGLYPH V039"}, {0x133AD,"EGYPTIAN HIEROGLYPH V040"}, {0x133AE,"EGYPTIAN HIEROGLYPH V040A"}, +{0x13430,"EGYPTIAN HIEROGLYPH VERTICAL JOINER"}, {0x133AF,"EGYPTIAN HIEROGLYPH W001"}, {0x133B0,"EGYPTIAN HIEROGLYPH W002"}, {0x133B1,"EGYPTIAN HIEROGLYPH W003"}, @@ -11761,6 +11814,29 @@ CharName gUnicodeNames[] = { {0x22F3,"ELEMENT OF WITH VERTICAL BAR AT END OF HORIZONTAL STROKE"}, {0x1F418,"ELEPHANT"}, {0x1F9DD,"ELF"}, +{0x10FE0,"ELYMAIC LETTER ALEPH"}, +{0x10FEF,"ELYMAIC LETTER AYIN"}, +{0x10FE1,"ELYMAIC LETTER BETH"}, +{0x10FE3,"ELYMAIC LETTER DALETH"}, +{0x10FE2,"ELYMAIC LETTER GIMEL"}, +{0x10FE4,"ELYMAIC LETTER HE"}, +{0x10FE7,"ELYMAIC LETTER HETH"}, +{0x10FEA,"ELYMAIC LETTER KAPH"}, +{0x10FEB,"ELYMAIC LETTER LAMEDH"}, +{0x10FEC,"ELYMAIC LETTER MEM"}, +{0x10FED,"ELYMAIC LETTER NUN"}, +{0x10FF0,"ELYMAIC LETTER PE"}, +{0x10FF2,"ELYMAIC LETTER QOPH"}, +{0x10FF3,"ELYMAIC LETTER RESH"}, +{0x10FF1,"ELYMAIC LETTER SADHE"}, +{0x10FEE,"ELYMAIC LETTER SAMEKH"}, +{0x10FF4,"ELYMAIC LETTER SHIN"}, +{0x10FF5,"ELYMAIC LETTER TAW"}, +{0x10FE8,"ELYMAIC LETTER TETH"}, +{0x10FE5,"ELYMAIC LETTER WAW"}, +{0x10FE9,"ELYMAIC LETTER YODH"}, +{0x10FE6,"ELYMAIC LETTER ZAYIN"}, +{0x10FF6,"ELYMAIC LIGATURE ZAYIN-YODH"}, {0x2014,"EM DASH"}, {0x2001,"EM QUAD"}, {0x2003,"EM SPACE"}, @@ -12384,6 +12460,7 @@ CharName gUnicodeNames[] = { {0x213B,"FACSIMILE SIGN"}, {0x1F3ED,"FACTORY"}, {0x1F9DA,"FAIRY"}, +{0x1F9C6,"FALAFEL"}, {0x1F342,"FALLEN LEAF"}, {0x292F,"FALLING DIAGONAL CROSSING NORTH EAST ARROW"}, {0x292C,"FALLING DIAGONAL CROSSING RISING DIAGONAL"}, @@ -12426,6 +12503,7 @@ CharName gUnicodeNames[] = { {0x2E2D,"FIVE DOT MARK"}, {0x2059,"FIVE DOT PUNCTUATION"}, {0x26F3,"FLAG IN HOLE"}, +{0x1F9A9,"FLAMINGO"}, {0x1F97F,"FLAT SHOE"}, {0x23E5,"FLATNESS"}, {0x269C,"FLEUR-DE-LIS"}, @@ -12590,6 +12668,7 @@ CharName gUnicodeNames[] = { {0x26B1,"FUNERAL URN"}, {0x23DB,"FUSE"}, {0x1F3B2,"GAME DIE"}, +{0x1F9C4,"GARLIC"}, {0x2699,"GEAR"}, {0x26EE,"GEAR WITH HANDLES"}, {0x26ED,"GEAR WITHOUT HUB"}, @@ -13539,6 +13618,7 @@ CharName gUnicodeNames[] = { {0x1F497,"GROWING HEART"}, {0x20B2,"GUARANI SIGN"}, {0x1F482,"GUARDSMAN"}, +{0x1F9AE,"GUIDE DOG"}, {0x1F3B8,"GUITAR"}, {0x0AF0,"GUJARATI ABBREVIATION SIGN"}, {0x0AEE,"GUJARATI DIGIT EIGHT"}, @@ -14712,6 +14792,7 @@ CharName gUnicodeNames[] = { {0x05EF,"HEBREW YOD TRIANGLE"}, {0x1F994,"HEDGEHOG"}, {0x1F681,"HELICOPTER"}, +{0x2BFF,"HELLSCHREIBER PAUSE SYMBOL"}, {0x2388,"HELM SYMBOL"}, {0x26D1,"HELMET WITH WHITE CROSS"}, {0x1B002,"HENTAIGANA LETTER A-1"}, @@ -15072,6 +15153,7 @@ CharName gUnicodeNames[] = { {0x1F684,"HIGH-SPEED TRAIN"}, {0x1F685,"HIGH-SPEED TRAIN WITH BULLET NOSE"}, {0x1F97E,"HIKING BOOT"}, +{0x1F6D5,"HINDU TEMPLE"}, {0x1F99B,"HIPPOPOTAMUS"}, {0x309F,"HIRAGANA DIGRAPH YORI"}, {0x309D,"HIRAGANA ITERATION MARK"}, @@ -15138,6 +15220,9 @@ CharName gUnicodeNames[] = { {0x3063,"HIRAGANA LETTER SMALL TU"}, {0x3045,"HIRAGANA LETTER SMALL U"}, {0x308E,"HIRAGANA LETTER SMALL WA"}, +{0x1B151,"HIRAGANA LETTER SMALL WE"}, +{0x1B150,"HIRAGANA LETTER SMALL WI"}, +{0x1B152,"HIRAGANA LETTER SMALL WO"}, {0x3083,"HIRAGANA LETTER SMALL YA"}, {0x3087,"HIRAGANA LETTER SMALL YO"}, {0x3085,"HIRAGANA LETTER SMALL YU"}, @@ -15212,6 +15297,7 @@ CharName gUnicodeNames[] = { {0x238E,"HYSTERESIS SYMBOL"}, {0x1F91F,"I LOVE YOU HAND SIGN"}, {0x1F368,"ICE CREAM"}, +{0x1F9CA,"ICE CUBE"}, {0x1F3D2,"ICE HOCKEY STICK AND PUCK"}, {0x26F8,"ICE SKATE"}, {0x2261,"IDENTICAL TO"}, @@ -16096,6 +16182,7 @@ CharName gUnicodeNames[] = { {0x30F6,"KATAKANA LETTER SMALL KE"}, {0x31F0,"KATAKANA LETTER SMALL KU"}, {0x31FA,"KATAKANA LETTER SMALL MU"}, +{0x1B167,"KATAKANA LETTER SMALL N"}, {0x31F4,"KATAKANA LETTER SMALL NU"}, {0x30A9,"KATAKANA LETTER SMALL O"}, {0x31FB,"KATAKANA LETTER SMALL RA"}, @@ -16109,6 +16196,9 @@ CharName gUnicodeNames[] = { {0x30C3,"KATAKANA LETTER SMALL TU"}, {0x30A5,"KATAKANA LETTER SMALL U"}, {0x30EE,"KATAKANA LETTER SMALL WA"}, +{0x1B165,"KATAKANA LETTER SMALL WE"}, +{0x1B164,"KATAKANA LETTER SMALL WI"}, +{0x1B166,"KATAKANA LETTER SMALL WO"}, {0x30E3,"KATAKANA LETTER SMALL YA"}, {0x30E7,"KATAKANA LETTER SMALL YO"}, {0x30E5,"KATAKANA LETTER SMALL YU"}, @@ -16549,7 +16639,9 @@ CharName gUnicodeNames[] = { {0x1F617,"KISSING FACE"}, {0x1F61A,"KISSING FACE WITH CLOSED EYES"}, {0x1F619,"KISSING FACE WITH SMILING EYES"}, +{0x1FA81,"KITE"}, {0x1F95D,"KIWIFRUIT"}, +{0x1F9CE,"KNEELING PERSON"}, {0x1F428,"KOALA"}, {0x327F,"KOREAN STANDARD SYMBOL"}, {0x2BE3,"KRONOS"}, @@ -16593,9 +16685,23 @@ CharName gUnicodeNames[] = { {0x0E99,"LAO LETTER NO"}, {0x0E8D,"LAO LETTER NYO"}, {0x0EAD,"LAO LETTER O"}, +{0x0EA0,"LAO LETTER PALI BHA"}, +{0x0E89,"LAO LETTER PALI CHA"}, +{0x0E91,"LAO LETTER PALI DDA"}, +{0x0E92,"LAO LETTER PALI DDHA"}, +{0x0E98,"LAO LETTER PALI DHA"}, +{0x0E86,"LAO LETTER PALI GHA"}, +{0x0E8C,"LAO LETTER PALI JHA"}, +{0x0EAC,"LAO LETTER PALI LLA"}, +{0x0E93,"LAO LETTER PALI NNA"}, +{0x0E8E,"LAO LETTER PALI NYA"}, +{0x0E8F,"LAO LETTER PALI TTA"}, +{0x0E90,"LAO LETTER PALI TTHA"}, {0x0E9C,"LAO LETTER PHO SUNG"}, {0x0E9E,"LAO LETTER PHO TAM"}, {0x0E9B,"LAO LETTER PO"}, +{0x0EA8,"LAO LETTER SANSKRIT SHA"}, +{0x0EA9,"LAO LETTER SANSKRIT SSA"}, {0x0EAA,"LAO LETTER SO SUNG"}, {0x0E8A,"LAO LETTER SO TAM"}, {0x0E96,"LAO LETTER THO SUNG"}, @@ -16606,6 +16712,7 @@ CharName gUnicodeNames[] = { {0x0ECD,"LAO NIGGAHITA"}, {0x0EBC,"LAO SEMIVOWEL SIGN LO"}, {0x0EBD,"LAO SEMIVOWEL SIGN NYO"}, +{0x0EBA,"LAO SIGN PALI VIRAMA"}, {0x0ECB,"LAO TONE MAI CATAWA"}, {0x0EC8,"LAO TONE MAI EK"}, {0x0EC9,"LAO TONE MAI THO"}, @@ -16628,17 +16735,29 @@ CharName gUnicodeNames[] = { {0x0EB7,"LAO VOWEL SIGN YY"}, {0x1F535,"LARGE BLUE CIRCLE"}, {0x1F537,"LARGE BLUE DIAMOND"}, +{0x1F7E6,"LARGE BLUE SQUARE"}, +{0x1F7E4,"LARGE BROWN CIRCLE"}, +{0x1F7EB,"LARGE BROWN SQUARE"}, {0x25EF,"LARGE CIRCLE"}, {0x27D9,"LARGE DOWN TACK"}, +{0x1F7E2,"LARGE GREEN CIRCLE"}, +{0x1F7E9,"LARGE GREEN SQUARE"}, {0x2A1E,"LARGE LEFT TRIANGLE OPERATOR"}, {0x10B3D,"LARGE ONE DOT OVER TWO DOTS PUNCTUATION"}, {0x10B3F,"LARGE ONE RING OVER TWO RINGS PUNCTUATION"}, +{0x1F7E0,"LARGE ORANGE CIRCLE"}, {0x1F536,"LARGE ORANGE DIAMOND"}, +{0x1F7E7,"LARGE ORANGE SQUARE"}, +{0x1F7E3,"LARGE PURPLE CIRCLE"}, +{0x1F7EA,"LARGE PURPLE SQUARE"}, {0x1F534,"LARGE RED CIRCLE"}, +{0x1F7E5,"LARGE RED SQUARE"}, {0x2AFC,"LARGE TRIPLE VERTICAL BAR OPERATOR"}, {0x10B3C,"LARGE TWO DOTS OVER ONE DOT PUNCTUATION"}, {0x10B3E,"LARGE TWO RINGS OVER ONE RING PUNCTUATION"}, {0x27D8,"LARGE UP TACK"}, +{0x1F7E1,"LARGE YELLOW CIRCLE"}, +{0x1F7E8,"LARGE YELLOW SQUARE"}, {0x2AAB,"LARGER THAN"}, {0x2AAD,"LARGER THAN OR EQUAL TO"}, {0x20BE,"LARI SIGN"}, @@ -16682,6 +16801,7 @@ CharName gUnicodeNames[] = { {0x01E2,"LATIN CAPITAL LETTER AE WITH MACRON"}, {0x0189,"LATIN CAPITAL LETTER AFRICAN D"}, {0x2C6D,"LATIN CAPITAL LETTER ALPHA"}, +{0xA7C2,"LATIN CAPITAL LETTER ANGLICANA W"}, {0xA734,"LATIN CAPITAL LETTER AO"}, {0xA736,"LATIN CAPITAL LETTER AU"}, {0xA738,"LATIN CAPITAL LETTER AV"}, @@ -16706,6 +16826,7 @@ CharName gUnicodeNames[] = { {0x0108,"LATIN CAPITAL LETTER C WITH CIRCUMFLEX"}, {0x010A,"LATIN CAPITAL LETTER C WITH DOT ABOVE"}, {0x0187,"LATIN CAPITAL LETTER C WITH HOOK"}, +{0xA7C4,"LATIN CAPITAL LETTER C WITH PALATAL HOOK"}, {0x023B,"LATIN CAPITAL LETTER C WITH STROKE"}, {0xA7B3,"LATIN CAPITAL LETTER CHI"}, {0xA76E,"LATIN CAPITAL LETTER CON"}, @@ -16777,7 +16898,10 @@ CharName gUnicodeNames[] = { {0xA7A0,"LATIN CAPITAL LETTER G WITH OBLIQUE STROKE"}, {0x01E4,"LATIN CAPITAL LETTER G WITH STROKE"}, {0x0194,"LATIN CAPITAL LETTER GAMMA"}, +{0xA7BA,"LATIN CAPITAL LETTER GLOTTAL A"}, +{0xA7BC,"LATIN CAPITAL LETTER GLOTTAL I"}, {0x0241,"LATIN CAPITAL LETTER GLOTTAL STOP"}, +{0xA7BE,"LATIN CAPITAL LETTER GLOTTAL U"}, {0x0048,"LATIN CAPITAL LETTER H"}, {0x1E2A,"LATIN CAPITAL LETTER H WITH BREVE BELOW"}, {0x021E,"LATIN CAPITAL LETTER H WITH CARON"}, @@ -16960,6 +17084,7 @@ CharName gUnicodeNames[] = { {0x1E60,"LATIN CAPITAL LETTER S WITH DOT ABOVE"}, {0x1E62,"LATIN CAPITAL LETTER S WITH DOT BELOW"}, {0x1E68,"LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE"}, +{0xA7C5,"LATIN CAPITAL LETTER S WITH HOOK"}, {0xA7A8,"LATIN CAPITAL LETTER S WITH OBLIQUE STROKE"}, {0x2C7E,"LATIN CAPITAL LETTER S WITH SWASH TAIL"}, {0xA78B,"LATIN CAPITAL LETTER SALTILLO"}, @@ -17077,6 +17202,7 @@ CharName gUnicodeNames[] = { {0x1E92,"LATIN CAPITAL LETTER Z WITH DOT BELOW"}, {0x0224,"LATIN CAPITAL LETTER Z WITH HOOK"}, {0x1E94,"LATIN CAPITAL LETTER Z WITH LINE BELOW"}, +{0xA7C6,"LATIN CAPITAL LETTER Z WITH PALATAL HOOK"}, {0x01B5,"LATIN CAPITAL LETTER Z WITH STROKE"}, {0x2C7F,"LATIN CAPITAL LETTER Z WITH SWASH TAIL"}, {0x0132,"LATIN CAPITAL LIGATURE IJ"}, @@ -17193,6 +17319,7 @@ CharName gUnicodeNames[] = { {0x01E3,"LATIN SMALL LETTER AE WITH MACRON"}, {0x0251,"LATIN SMALL LETTER ALPHA"}, {0x1D90,"LATIN SMALL LETTER ALPHA WITH RETROFLEX HOOK"}, +{0xA7C3,"LATIN SMALL LETTER ANGLICANA W"}, {0xA735,"LATIN SMALL LETTER AO"}, {0xA737,"LATIN SMALL LETTER AU"}, {0xA739,"LATIN SMALL LETTER AV"}, @@ -17267,6 +17394,7 @@ CharName gUnicodeNames[] = { {0x01F3,"LATIN SMALL LETTER DZ"}, {0x02A3,"LATIN SMALL LETTER DZ DIGRAPH"}, {0x02A5,"LATIN SMALL LETTER DZ DIGRAPH WITH CURL"}, +{0xAB66,"LATIN SMALL LETTER DZ DIGRAPH WITH RETROFLEX HOOK"}, {0x01C6,"LATIN SMALL LETTER DZ WITH CARON"}, {0x0065,"LATIN SMALL LETTER E"}, {0x00E9,"LATIN SMALL LETTER E WITH ACUTE"}, @@ -17334,7 +17462,10 @@ CharName gUnicodeNames[] = { {0x1D83,"LATIN SMALL LETTER G WITH PALATAL HOOK"}, {0x01E5,"LATIN SMALL LETTER G WITH STROKE"}, {0x0263,"LATIN SMALL LETTER GAMMA"}, +{0xA7BB,"LATIN SMALL LETTER GLOTTAL A"}, +{0xA7BD,"LATIN SMALL LETTER GLOTTAL I"}, {0x0242,"LATIN SMALL LETTER GLOTTAL STOP"}, +{0xA7BF,"LATIN SMALL LETTER GLOTTAL U"}, {0x0068,"LATIN SMALL LETTER H"}, {0x1E2B,"LATIN SMALL LETTER H WITH BREVE BELOW"}, {0x021F,"LATIN SMALL LETTER H WITH CARON"}, @@ -17628,6 +17759,7 @@ CharName gUnicodeNames[] = { {0x1D16,"LATIN SMALL LETTER TOP HALF O"}, {0xA72B,"LATIN SMALL LETTER TRESILLO"}, {0x02A6,"LATIN SMALL LETTER TS DIGRAPH"}, +{0xAB67,"LATIN SMALL LETTER TS DIGRAPH WITH RETROFLEX HOOK"}, {0xA777,"LATIN SMALL LETTER TUM"}, {0x0250,"LATIN SMALL LETTER TURNED A"}, {0x1D02,"LATIN SMALL LETTER TURNED AE"}, @@ -19269,6 +19401,7 @@ CharName gUnicodeNames[] = { {0x10AC8,"MANICHAEAN SIGN UD"}, {0x1F45E,"MANS SHOE"}, {0x1F570,"MANTELPIECE CLOCK"}, +{0x1F9BD,"MANUAL WHEELCHAIR"}, {0x26EF,"MAP SYMBOL FOR LIGHTHOUSE"}, {0x1F341,"MAPLE LEAF"}, {0x11C70,"MARCHEN HEAD MARK"}, @@ -19418,6 +19551,7 @@ CharName gUnicodeNames[] = { {0x11D36,"MASARAM GONDI VOWEL SIGN VOCALIC R"}, {0x00BA,"MASCULINE ORDINAL INDICATOR"}, {0x303C,"MASU MARK"}, +{0x1F9C9,"MATE DRINK"}, {0x1D400,"MATHEMATICAL BOLD CAPITAL A"}, {0x1D6A8,"MATHEMATICAL BOLD CAPITAL ALPHA"}, {0x1D401,"MATHEMATICAL BOLD CAPITAL B"}, @@ -20460,6 +20594,8 @@ CharName gUnicodeNames[] = { {0x225E,"MEASURED BY"}, {0x299D,"MEASURED RIGHT ANGLE WITH DOT"}, {0x1F356,"MEAT ON BONE"}, +{0x1F9BE,"MECHANICAL ARM"}, +{0x1F9BF,"MECHANICAL LEG"}, {0x16E4D,"MEDEFAIDRIN CAPITAL LETTER A"}, {0x16E5E,"MEDEFAIDRIN CAPITAL LETTER AI"}, {0x16E44,"MEDEFAIDRIN CAPITAL LETTER ATIU"}, @@ -21015,12 +21151,14 @@ CharName gUnicodeNames[] = { {0x16F25,"MIAO LETTER ARCHAIC NGA"}, {0x16F3F,"MIAO LETTER ARCHAIC ZZA"}, {0x16F01,"MIAO LETTER BA"}, +{0x16F45,"MIAO LETTER BRI"}, {0x16F0B,"MIAO LETTER DA"}, {0x16F0F,"MIAO LETTER DDA"}, {0x16F1B,"MIAO LETTER DLHA"}, {0x16F1D,"MIAO LETTER DLHYA"}, {0x16F38,"MIAO LETTER DZA"}, {0x16F2F,"MIAO LETTER DZHA"}, +{0x16F47,"MIAO LETTER DZYI"}, {0x16F2B,"MIAO LETTER DZZA"}, {0x16F07,"MIAO LETTER FA"}, {0x16F1F,"MIAO LETTER GA"}, @@ -21055,10 +21193,13 @@ CharName gUnicodeNames[] = { {0x16F9E,"MIAO LETTER REFORMED TONE-6"}, {0x16F9F,"MIAO LETTER REFORMED TONE-8"}, {0x16F32,"MIAO LETTER REFORMED TSHA"}, +{0x16F4A,"MIAO LETTER RTE"}, {0x16F3A,"MIAO LETTER SA"}, {0x16F33,"MIAO LETTER SHA"}, {0x16F34,"MIAO LETTER SSA"}, +{0x16F46,"MIAO LETTER SYI"}, {0x16F0A,"MIAO LETTER TA"}, +{0x16F48,"MIAO LETTER TE"}, {0x16F1A,"MIAO LETTER TLHA"}, {0x16F1C,"MIAO LETTER TLHYA"}, {0x16F93,"MIAO LETTER TONE-2"}, @@ -21069,6 +21210,7 @@ CharName gUnicodeNames[] = { {0x16F98,"MIAO LETTER TONE-7"}, {0x16F99,"MIAO LETTER TONE-8"}, {0x16F37,"MIAO LETTER TSA"}, +{0x16F49,"MIAO LETTER TSE"}, {0x16F2E,"MIAO LETTER TSHA"}, {0x16F2A,"MIAO LETTER TSSA"}, {0x16F0E,"MIAO LETTER TTA"}, @@ -21093,6 +21235,7 @@ CharName gUnicodeNames[] = { {0x16F41,"MIAO LETTER ZZSYA"}, {0x16F40,"MIAO LETTER ZZYA"}, {0x16F51,"MIAO SIGN ASPIRATION"}, +{0x16F4F,"MIAO SIGN CONSONANT MODIFIER BAR"}, {0x16F53,"MIAO SIGN REFORMED ASPIRATION"}, {0x16F52,"MIAO SIGN REFORMED VOICING"}, {0x16F91,"MIAO TONE ABOVE"}, @@ -21109,6 +21252,7 @@ CharName gUnicodeNames[] = { {0x16F58,"MIAO VOWEL SIGN ANG"}, {0x16F7B,"MIAO VOWEL SIGN AU"}, {0x16F5D,"MIAO VOWEL SIGN E"}, +{0x16F85,"MIAO VOWEL SIGN EA"}, {0x16F7A,"MIAO VOWEL SIGN EI"}, {0x16F5E,"MIAO VOWEL SIGN EN"}, {0x16F5F,"MIAO VOWEL SIGN ENG"}, @@ -21119,14 +21263,18 @@ CharName gUnicodeNames[] = { {0x16F63,"MIAO VOWEL SIGN IAN"}, {0x16F64,"MIAO VOWEL SIGN IANG"}, {0x16F66,"MIAO VOWEL SIGN IE"}, +{0x16F84,"MIAO VOWEL SIGN IG"}, {0x16F67,"MIAO VOWEL SIGN II"}, {0x16F69,"MIAO VOWEL SIGN ING"}, {0x16F65,"MIAO VOWEL SIGN IO"}, +{0x16F86,"MIAO VOWEL SIGN IONG"}, {0x16F68,"MIAO VOWEL SIGN IU"}, {0x16F7D,"MIAO VOWEL SIGN N"}, {0x16F7E,"MIAO VOWEL SIGN NG"}, {0x16F59,"MIAO VOWEL SIGN O"}, +{0x16F82,"MIAO VOWEL SIGN OER"}, {0x16F60,"MIAO VOWEL SIGN OEY"}, +{0x16F81,"MIAO VOWEL SIGN OG"}, {0x16F5A,"MIAO VOWEL SIGN OO"}, {0x16F7C,"MIAO VOWEL SIGN OU"}, {0x16F78,"MIAO VOWEL SIGN ROUNDED ER"}, @@ -21136,12 +21284,16 @@ CharName gUnicodeNames[] = { {0x16F6C,"MIAO VOWEL SIGN UAN"}, {0x16F6D,"MIAO VOWEL SIGN UANG"}, {0x16F6F,"MIAO VOWEL SIGN UEI"}, +{0x16F87,"MIAO VOWEL SIGN UI"}, {0x16F70,"MIAO VOWEL SIGN UNG"}, +{0x16F7F,"MIAO VOWEL SIGN UOG"}, {0x16F6E,"MIAO VOWEL SIGN UU"}, +{0x16F83,"MIAO VOWEL SIGN VW"}, {0x16F5C,"MIAO VOWEL SIGN W"}, {0x16F5B,"MIAO VOWEL SIGN WO"}, {0x16F71,"MIAO VOWEL SIGN Y"}, {0x16F72,"MIAO VOWEL SIGN YI"}, +{0x16F80,"MIAO VOWEL SIGN YUI"}, {0x00B5,"MICRO SIGN"}, {0x1F9A0,"MICROBE"}, {0x1F3A4,"MICROPHONE"}, @@ -21650,6 +21802,7 @@ CharName gUnicodeNames[] = { {0x1F936,"MOTHER CHRISTMAS"}, {0x1F6E5,"MOTOR BOAT"}, {0x1F6F5,"MOTOR SCOOTER"}, +{0x1F9BC,"MOTORIZED WHEELCHAIR"}, {0x1F6E3,"MOTORWAY"}, {0x1F5FB,"MOUNT FUJI"}, {0x26F0,"MOUNTAIN"}, @@ -22280,6 +22433,71 @@ CharName gUnicodeNames[] = { {0x20A6,"NAIRA SIGN"}, {0x1F4DB,"NAME BADGE"}, {0x22BC,"NAND"}, +{0x119E3,"NANDINAGARI HEADSTROKE"}, +{0x119A0,"NANDINAGARI LETTER A"}, +{0x119A1,"NANDINAGARI LETTER AA"}, +{0x119AB,"NANDINAGARI LETTER AI"}, +{0x119AD,"NANDINAGARI LETTER AU"}, +{0x119C4,"NANDINAGARI LETTER BA"}, +{0x119C5,"NANDINAGARI LETTER BHA"}, +{0x119B3,"NANDINAGARI LETTER CA"}, +{0x119B4,"NANDINAGARI LETTER CHA"}, +{0x119BF,"NANDINAGARI LETTER DA"}, +{0x119BA,"NANDINAGARI LETTER DDA"}, +{0x119BB,"NANDINAGARI LETTER DDHA"}, +{0x119C0,"NANDINAGARI LETTER DHA"}, +{0x119AA,"NANDINAGARI LETTER E"}, +{0x119B0,"NANDINAGARI LETTER GA"}, +{0x119B1,"NANDINAGARI LETTER GHA"}, +{0x119CE,"NANDINAGARI LETTER HA"}, +{0x119A2,"NANDINAGARI LETTER I"}, +{0x119A3,"NANDINAGARI LETTER II"}, +{0x119B5,"NANDINAGARI LETTER JA"}, +{0x119B6,"NANDINAGARI LETTER JHA"}, +{0x119AE,"NANDINAGARI LETTER KA"}, +{0x119AF,"NANDINAGARI LETTER KHA"}, +{0x119C9,"NANDINAGARI LETTER LA"}, +{0x119CF,"NANDINAGARI LETTER LLA"}, +{0x119C6,"NANDINAGARI LETTER MA"}, +{0x119C1,"NANDINAGARI LETTER NA"}, +{0x119B2,"NANDINAGARI LETTER NGA"}, +{0x119BC,"NANDINAGARI LETTER NNA"}, +{0x119B7,"NANDINAGARI LETTER NYA"}, +{0x119AC,"NANDINAGARI LETTER O"}, +{0x119C2,"NANDINAGARI LETTER PA"}, +{0x119C3,"NANDINAGARI LETTER PHA"}, +{0x119C8,"NANDINAGARI LETTER RA"}, +{0x119D0,"NANDINAGARI LETTER RRA"}, +{0x119CD,"NANDINAGARI LETTER SA"}, +{0x119CB,"NANDINAGARI LETTER SHA"}, +{0x119CC,"NANDINAGARI LETTER SSA"}, +{0x119BD,"NANDINAGARI LETTER TA"}, +{0x119BE,"NANDINAGARI LETTER THA"}, +{0x119B8,"NANDINAGARI LETTER TTA"}, +{0x119B9,"NANDINAGARI LETTER TTHA"}, +{0x119A4,"NANDINAGARI LETTER U"}, +{0x119A5,"NANDINAGARI LETTER UU"}, +{0x119CA,"NANDINAGARI LETTER VA"}, +{0x119A6,"NANDINAGARI LETTER VOCALIC R"}, +{0x119A7,"NANDINAGARI LETTER VOCALIC RR"}, +{0x119C7,"NANDINAGARI LETTER YA"}, +{0x119DE,"NANDINAGARI SIGN ANUSVARA"}, +{0x119E1,"NANDINAGARI SIGN AVAGRAHA"}, +{0x119E2,"NANDINAGARI SIGN SIDDHAM"}, +{0x119E0,"NANDINAGARI SIGN VIRAMA"}, +{0x119DF,"NANDINAGARI SIGN VISARGA"}, +{0x119D1,"NANDINAGARI VOWEL SIGN AA"}, +{0x119DB,"NANDINAGARI VOWEL SIGN AI"}, +{0x119DD,"NANDINAGARI VOWEL SIGN AU"}, +{0x119DA,"NANDINAGARI VOWEL SIGN E"}, +{0x119D2,"NANDINAGARI VOWEL SIGN I"}, +{0x119D3,"NANDINAGARI VOWEL SIGN II"}, +{0x119DC,"NANDINAGARI VOWEL SIGN O"}, +{0x119E4,"NANDINAGARI VOWEL SIGN PRISHTHAMATRA E"}, +{0x119D4,"NANDINAGARI VOWEL SIGN U"}, +{0x119D5,"NANDINAGARI VOWEL SIGN UU"}, +{0x119D6,"NANDINAGARI VOWEL SIGN VOCALIC R"}, +{0x119D7,"NANDINAGARI VOWEL SIGN VOCALIC RR"}, {0x202F,"NARROW NO-BREAK SPACE"}, {0x206E,"NATIONAL DIGIT SHAPES"}, {0x1F3DE,"NATIONAL PARK"}, @@ -22368,9 +22586,40 @@ CharName gUnicodeNames[] = { {0x2274,"NEITHER LESS-THAN NOR EQUIVALENT TO"}, {0x2278,"NEITHER LESS-THAN NOR GREATER-THAN"}, {0x2646,"NEPTUNE"}, +{0x2BC9,"NEPTUNE FORM TWO"}, {0x1F913,"NERD FACE"}, {0x2BDC,"NESSUS"}, {0x26B2,"NEUTER"}, +{0x1FA03,"NEUTRAL CHESS BISHOP"}, +{0x1FA18,"NEUTRAL CHESS BISHOP ROTATED NINETY DEGREES"}, +{0x1FA42,"NEUTRAL CHESS BISHOP ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA4A,"NEUTRAL CHESS EQUIHOPPER"}, +{0x1FA4D,"NEUTRAL CHESS EQUIHOPPER ROTATED NINETY DEGREES"}, +{0x1FA00,"NEUTRAL CHESS KING"}, +{0x1FA15,"NEUTRAL CHESS KING ROTATED NINETY DEGREES"}, +{0x1FA3F,"NEUTRAL CHESS KING ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA04,"NEUTRAL CHESS KNIGHT"}, +{0x1FA08,"NEUTRAL CHESS KNIGHT ROTATED FORTY-FIVE DEGREES"}, +{0x1FA19,"NEUTRAL CHESS KNIGHT ROTATED NINETY DEGREES"}, +{0x1FA1D,"NEUTRAL CHESS KNIGHT ROTATED ONE HUNDRED THIRTY-FIVE DEGREES"}, +{0x1FA47,"NEUTRAL CHESS KNIGHT ROTATED THREE HUNDRED FIFTEEN DEGREES"}, +{0x1FA43,"NEUTRAL CHESS KNIGHT ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA32,"NEUTRAL CHESS KNIGHT ROTATED TWO HUNDRED TWENTY-FIVE DEGREES"}, +{0x1FA05,"NEUTRAL CHESS PAWN"}, +{0x1FA1A,"NEUTRAL CHESS PAWN ROTATED NINETY DEGREES"}, +{0x1FA44,"NEUTRAL CHESS PAWN ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA01,"NEUTRAL CHESS QUEEN"}, +{0x1FA16,"NEUTRAL CHESS QUEEN ROTATED NINETY DEGREES"}, +{0x1FA40,"NEUTRAL CHESS QUEEN ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA02,"NEUTRAL CHESS ROOK"}, +{0x1FA17,"NEUTRAL CHESS ROOK ROTATED NINETY DEGREES"}, +{0x1FA41,"NEUTRAL CHESS ROOK ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA2D,"NEUTRAL CHESS TURNED BISHOP"}, +{0x1FA2A,"NEUTRAL CHESS TURNED KING"}, +{0x1FA2E,"NEUTRAL CHESS TURNED KNIGHT"}, +{0x1FA2F,"NEUTRAL CHESS TURNED PAWN"}, +{0x1FA2B,"NEUTRAL CHESS TURNED QUEEN"}, +{0x1FA2C,"NEUTRAL CHESS TURNED ROOK"}, {0x1F610,"NEUTRAL FACE"}, {0x1F311,"NEW MOON SYMBOL"}, {0x1F31A,"NEW MOON WITH FACE"}, @@ -22521,6 +22770,7 @@ CharName gUnicodeNames[] = { {0x1141B,"NEWA LETTER TTHA"}, {0x11404,"NEWA LETTER U"}, {0x11405,"NEWA LETTER UU"}, +{0x1145F,"NEWA LETTER VEDIC ANUSVARA"}, {0x11408,"NEWA LETTER VOCALIC L"}, {0x11409,"NEWA LETTER VOCALIC LL"}, {0x11406,"NEWA LETTER VOCALIC R"}, @@ -23118,6 +23368,77 @@ CharName gUnicodeNames[] = { {0x1B2FB,"NUSHU CHARACTER-1B2FB"}, {0x16FE1,"NUSHU ITERATION MARK"}, {0x1F529,"NUT AND BOLT"}, +{0x1E14F,"NYIAKENG PUACHUE HMONG CIRCLED CA"}, +{0x1E148,"NYIAKENG PUACHUE HMONG DIGIT EIGHT"}, +{0x1E145,"NYIAKENG PUACHUE HMONG DIGIT FIVE"}, +{0x1E144,"NYIAKENG PUACHUE HMONG DIGIT FOUR"}, +{0x1E149,"NYIAKENG PUACHUE HMONG DIGIT NINE"}, +{0x1E141,"NYIAKENG PUACHUE HMONG DIGIT ONE"}, +{0x1E147,"NYIAKENG PUACHUE HMONG DIGIT SEVEN"}, +{0x1E146,"NYIAKENG PUACHUE HMONG DIGIT SIX"}, +{0x1E143,"NYIAKENG PUACHUE HMONG DIGIT THREE"}, +{0x1E142,"NYIAKENG PUACHUE HMONG DIGIT TWO"}, +{0x1E140,"NYIAKENG PUACHUE HMONG DIGIT ZERO"}, +{0x1E124,"NYIAKENG PUACHUE HMONG LETTER A"}, +{0x1E125,"NYIAKENG PUACHUE HMONG LETTER AA"}, +{0x1E108,"NYIAKENG PUACHUE HMONG LETTER CA"}, +{0x1E10F,"NYIAKENG PUACHUE HMONG LETTER DA"}, +{0x1E11D,"NYIAKENG PUACHUE HMONG LETTER DLA"}, +{0x1E12A,"NYIAKENG PUACHUE HMONG LETTER E"}, +{0x1E12B,"NYIAKENG PUACHUE HMONG LETTER EE"}, +{0x1E115,"NYIAKENG PUACHUE HMONG LETTER FA"}, +{0x1E122,"NYIAKENG PUACHUE HMONG LETTER GA"}, +{0x1E104,"NYIAKENG PUACHUE HMONG LETTER HA"}, +{0x1E11F,"NYIAKENG PUACHUE HMONG LETTER HAH"}, +{0x1E126,"NYIAKENG PUACHUE HMONG LETTER I"}, +{0x1E10E,"NYIAKENG PUACHUE HMONG LETTER KA"}, +{0x1E109,"NYIAKENG PUACHUE HMONG LETTER LA"}, +{0x1E100,"NYIAKENG PUACHUE HMONG LETTER MA"}, +{0x1E120,"NYIAKENG PUACHUE HMONG LETTER MLA"}, +{0x1E105,"NYIAKENG PUACHUE HMONG LETTER NA"}, +{0x1E10C,"NYIAKENG PUACHUE HMONG LETTER NCA"}, +{0x1E107,"NYIAKENG PUACHUE HMONG LETTER NKA"}, +{0x1E11C,"NYIAKENG PUACHUE HMONG LETTER NPA"}, +{0x1E11E,"NYIAKENG PUACHUE HMONG LETTER NPLA"}, +{0x1E119,"NYIAKENG PUACHUE HMONG LETTER NQA"}, +{0x1E111,"NYIAKENG PUACHUE HMONG LETTER NRA"}, +{0x1E102,"NYIAKENG PUACHUE HMONG LETTER NTA"}, +{0x1E10D,"NYIAKENG PUACHUE HMONG LETTER NTSA"}, +{0x1E113,"NYIAKENG PUACHUE HMONG LETTER NTXA"}, +{0x1E110,"NYIAKENG PUACHUE HMONG LETTER NYA"}, +{0x1E128,"NYIAKENG PUACHUE HMONG LETTER O"}, +{0x1E129,"NYIAKENG PUACHUE HMONG LETTER OO"}, +{0x1E11A,"NYIAKENG PUACHUE HMONG LETTER PA"}, +{0x1E121,"NYIAKENG PUACHUE HMONG LETTER PLA"}, +{0x1E117,"NYIAKENG PUACHUE HMONG LETTER QA"}, +{0x1E116,"NYIAKENG PUACHUE HMONG LETTER RA"}, +{0x1E123,"NYIAKENG PUACHUE HMONG LETTER RRA"}, +{0x1E10A,"NYIAKENG PUACHUE HMONG LETTER SA"}, +{0x1E103,"NYIAKENG PUACHUE HMONG LETTER TA"}, +{0x1E101,"NYIAKENG PUACHUE HMONG LETTER TSA"}, +{0x1E114,"NYIAKENG PUACHUE HMONG LETTER TXA"}, +{0x1E127,"NYIAKENG PUACHUE HMONG LETTER U"}, +{0x1E112,"NYIAKENG PUACHUE HMONG LETTER VA"}, +{0x1E12C,"NYIAKENG PUACHUE HMONG LETTER W"}, +{0x1E106,"NYIAKENG PUACHUE HMONG LETTER XA"}, +{0x1E11B,"NYIAKENG PUACHUE HMONG LETTER XYA"}, +{0x1E118,"NYIAKENG PUACHUE HMONG LETTER YA"}, +{0x1E10B,"NYIAKENG PUACHUE HMONG LETTER ZA"}, +{0x1E14E,"NYIAKENG PUACHUE HMONG LOGOGRAM NYAJ"}, +{0x1E13A,"NYIAKENG PUACHUE HMONG SIGN FOR ANIMAL"}, +{0x1E13B,"NYIAKENG PUACHUE HMONG SIGN FOR INVERTEBRATE"}, +{0x1E139,"NYIAKENG PUACHUE HMONG SIGN FOR LOCATION"}, +{0x1E137,"NYIAKENG PUACHUE HMONG SIGN FOR PERSON"}, +{0x1E138,"NYIAKENG PUACHUE HMONG SIGN FOR THING"}, +{0x1E13C,"NYIAKENG PUACHUE HMONG SIGN XW XW"}, +{0x1E13D,"NYIAKENG PUACHUE HMONG SYLLABLE LENGTHENER"}, +{0x1E130,"NYIAKENG PUACHUE HMONG TONE-B"}, +{0x1E136,"NYIAKENG PUACHUE HMONG TONE-D"}, +{0x1E135,"NYIAKENG PUACHUE HMONG TONE-G"}, +{0x1E132,"NYIAKENG PUACHUE HMONG TONE-J"}, +{0x1E131,"NYIAKENG PUACHUE HMONG TONE-M"}, +{0x1E134,"NYIAKENG PUACHUE HMONG TONE-S"}, +{0x1E133,"NYIAKENG PUACHUE HMONG TONE-V"}, {0xFFFC,"OBJECT REPLACEMENT CHARACTER"}, {0x29A7,"OBLIQUE ANGLE OPENING DOWN"}, {0x29A6,"OBLIQUE ANGLE OPENING UP"}, @@ -23218,6 +23539,8 @@ CharName gUnicodeNames[] = { {0x1C7F,"OL CHIKI PUNCTUATION DOUBLE MUCAAD"}, {0x1C7E,"OL CHIKI PUNCTUATION MUCAAD"}, {0x1C7B,"OL CHIKI RELAA"}, +{0x16FE2,"OLD CHINESE HOOK MARK"}, +{0x16FE3,"OLD CHINESE ITERATION MARK"}, {0x10C80,"OLD HUNGARIAN CAPITAL LETTER A"}, {0x10C81,"OLD HUNGARIAN CAPITAL LETTER AA"}, {0x10C94,"OLD HUNGARIAN CAPITAL LETTER AK"}, @@ -23645,6 +23968,8 @@ CharName gUnicodeNames[] = { {0x1F5AF,"ONE BUTTON MOUSE"}, {0x2024,"ONE DOT LEADER"}, {0x2E2B,"ONE DOT OVER TWO DOTS PUNCTUATION"}, +{0x1FA71,"ONE-PIECE SWIMSUIT"}, +{0x1F9C5,"ONION"}, {0x1F4D6,"OPEN BOOK"}, {0x2423,"OPEN BOX"}, {0x2732,"OPEN CENTRE ASTERISK"}, @@ -23670,6 +23995,7 @@ CharName gUnicodeNames[] = { {0x27C7,"OR WITH DOT INSIDE"}, {0x1F4D9,"ORANGE BOOK"}, {0x1F9E1,"ORANGE HEART"}, +{0x1F9A7,"ORANGUTAN"}, {0x22B6,"ORIGINAL OF"}, {0x0B56,"ORIYA AI LENGTH MARK"}, {0x0B57,"ORIYA AU LENGTH MARK"}, @@ -23876,6 +24202,68 @@ CharName gUnicodeNames[] = { {0x10493,"OSMANYA LETTER WAW"}, {0x10484,"OSMANYA LETTER XA"}, {0x10495,"OSMANYA LETTER YA"}, +{0x1F9A6,"OTTER"}, +{0x1ED35,"OTTOMAN SIYAQ ALTERNATE NUMBER EIGHT"}, +{0x1ED32,"OTTOMAN SIYAQ ALTERNATE NUMBER FIVE"}, +{0x1ED31,"OTTOMAN SIYAQ ALTERNATE NUMBER FOUR"}, +{0x1ED38,"OTTOMAN SIYAQ ALTERNATE NUMBER FOUR HUNDRED"}, +{0x1ED36,"OTTOMAN SIYAQ ALTERNATE NUMBER NINE"}, +{0x1ED34,"OTTOMAN SIYAQ ALTERNATE NUMBER SEVEN"}, +{0x1ED33,"OTTOMAN SIYAQ ALTERNATE NUMBER SIX"}, +{0x1ED39,"OTTOMAN SIYAQ ALTERNATE NUMBER SIX HUNDRED"}, +{0x1ED37,"OTTOMAN SIYAQ ALTERNATE NUMBER TEN"}, +{0x1ED3B,"OTTOMAN SIYAQ ALTERNATE NUMBER TEN THOUSAND"}, +{0x1ED30,"OTTOMAN SIYAQ ALTERNATE NUMBER THREE"}, +{0x1ED2F,"OTTOMAN SIYAQ ALTERNATE NUMBER TWO"}, +{0x1ED3A,"OTTOMAN SIYAQ ALTERNATE NUMBER TWO THOUSAND"}, +{0x1ED3C,"OTTOMAN SIYAQ FRACTION ONE HALF"}, +{0x1ED3D,"OTTOMAN SIYAQ FRACTION ONE SIXTH"}, +{0x1ED2E,"OTTOMAN SIYAQ MARRATAN"}, +{0x1ED08,"OTTOMAN SIYAQ NUMBER EIGHT"}, +{0x1ED1A,"OTTOMAN SIYAQ NUMBER EIGHT HUNDRED"}, +{0x1ED23,"OTTOMAN SIYAQ NUMBER EIGHT THOUSAND"}, +{0x1ED11,"OTTOMAN SIYAQ NUMBER EIGHTY"}, +{0x1ED2C,"OTTOMAN SIYAQ NUMBER EIGHTY THOUSAND"}, +{0x1ED0E,"OTTOMAN SIYAQ NUMBER FIFTY"}, +{0x1ED29,"OTTOMAN SIYAQ NUMBER FIFTY THOUSAND"}, +{0x1ED05,"OTTOMAN SIYAQ NUMBER FIVE"}, +{0x1ED17,"OTTOMAN SIYAQ NUMBER FIVE HUNDRED"}, +{0x1ED20,"OTTOMAN SIYAQ NUMBER FIVE THOUSAND"}, +{0x1ED0D,"OTTOMAN SIYAQ NUMBER FORTY"}, +{0x1ED28,"OTTOMAN SIYAQ NUMBER FORTY THOUSAND"}, +{0x1ED04,"OTTOMAN SIYAQ NUMBER FOUR"}, +{0x1ED16,"OTTOMAN SIYAQ NUMBER FOUR HUNDRED"}, +{0x1ED1F,"OTTOMAN SIYAQ NUMBER FOUR THOUSAND"}, +{0x1ED09,"OTTOMAN SIYAQ NUMBER NINE"}, +{0x1ED1B,"OTTOMAN SIYAQ NUMBER NINE HUNDRED"}, +{0x1ED24,"OTTOMAN SIYAQ NUMBER NINE THOUSAND"}, +{0x1ED12,"OTTOMAN SIYAQ NUMBER NINETY"}, +{0x1ED2D,"OTTOMAN SIYAQ NUMBER NINETY THOUSAND"}, +{0x1ED01,"OTTOMAN SIYAQ NUMBER ONE"}, +{0x1ED13,"OTTOMAN SIYAQ NUMBER ONE HUNDRED"}, +{0x1ED1C,"OTTOMAN SIYAQ NUMBER ONE THOUSAND"}, +{0x1ED07,"OTTOMAN SIYAQ NUMBER SEVEN"}, +{0x1ED19,"OTTOMAN SIYAQ NUMBER SEVEN HUNDRED"}, +{0x1ED22,"OTTOMAN SIYAQ NUMBER SEVEN THOUSAND"}, +{0x1ED10,"OTTOMAN SIYAQ NUMBER SEVENTY"}, +{0x1ED2B,"OTTOMAN SIYAQ NUMBER SEVENTY THOUSAND"}, +{0x1ED06,"OTTOMAN SIYAQ NUMBER SIX"}, +{0x1ED18,"OTTOMAN SIYAQ NUMBER SIX HUNDRED"}, +{0x1ED21,"OTTOMAN SIYAQ NUMBER SIX THOUSAND"}, +{0x1ED0F,"OTTOMAN SIYAQ NUMBER SIXTY"}, +{0x1ED2A,"OTTOMAN SIYAQ NUMBER SIXTY THOUSAND"}, +{0x1ED0A,"OTTOMAN SIYAQ NUMBER TEN"}, +{0x1ED25,"OTTOMAN SIYAQ NUMBER TEN THOUSAND"}, +{0x1ED0C,"OTTOMAN SIYAQ NUMBER THIRTY"}, +{0x1ED27,"OTTOMAN SIYAQ NUMBER THIRTY THOUSAND"}, +{0x1ED03,"OTTOMAN SIYAQ NUMBER THREE"}, +{0x1ED15,"OTTOMAN SIYAQ NUMBER THREE HUNDRED"}, +{0x1ED1E,"OTTOMAN SIYAQ NUMBER THREE THOUSAND"}, +{0x1ED0B,"OTTOMAN SIYAQ NUMBER TWENTY"}, +{0x1ED26,"OTTOMAN SIYAQ NUMBER TWENTY THOUSAND"}, +{0x1ED02,"OTTOMAN SIYAQ NUMBER TWO"}, +{0x1ED14,"OTTOMAN SIYAQ NUMBER TWO HUNDRED"}, +{0x1ED1D,"OTTOMAN SIYAQ NUMBER TWO THOUSAND"}, {0x2125,"OUNCE SIGN"}, {0x1F4E4,"OUTBOX TRAY"}, {0x272D,"OUTLINED BLACK STAR"}, @@ -23890,6 +24278,7 @@ CharName gUnicodeNames[] = { {0x203E,"OVERLINE"}, {0x1F989,"OWL"}, {0x1F402,"OX"}, +{0x1F9AA,"OYSTER"}, {0x1F4E6,"PACKAGE"}, {0x1F5CF,"PAGE"}, {0x1F4C4,"PAGE FACING UP"}, @@ -24064,6 +24453,7 @@ CharName gUnicodeNames[] = { {0x1F95E,"PANCAKES"}, {0x1F43C,"PANDA FACE"}, {0x1F4CE,"PAPERCLIP"}, +{0x1FA82,"PARACHUTE"}, {0x2029,"PARAGRAPH SEPARATOR"}, {0x2E0F,"PARAGRAPHOS"}, {0x2E4D,"PARAGRAPHUS MARK"}, @@ -24457,6 +24847,7 @@ CharName gUnicodeNames[] = { {0x00B6,"PILCROW SIGN"}, {0x1F4A9,"PILE OF POO"}, {0x1F48A,"PILL"}, +{0x1F90F,"PINCHING HAND"}, {0x1F38D,"PINE DECORATION"}, {0x1F34D,"PINEAPPLE"}, {0x272F,"PINWHEEL STAR"}, @@ -24650,6 +25041,7 @@ CharName gUnicodeNames[] = { {0x2399,"PRINT SCREEN SYMBOL"}, {0x1F5A8,"PRINTER"}, {0x1F5B6,"PRINTER ICON"}, +{0x1F9AF,"PROBING CANE"}, {0x1F6C7,"PROHIBITED SIGN"}, {0x2305,"PROJECTIVE"}, {0x214A,"PROPERTY LINE"}, @@ -24735,10 +25127,12 @@ CharName gUnicodeNames[] = { {0x2E06,"RAISED INTERPOLATION MARKER"}, {0x1F16A,"RAISED MC SIGN"}, {0x1F16B,"RAISED MD SIGN"}, +{0x1F16C,"RAISED MR SIGN"}, {0x2E0B,"RAISED SQUARE"}, {0x1F40F,"RAM"}, {0x1F400,"RAT"}, {0x2236,"RATIO"}, +{0x1FA92,"RAZOR"}, {0x1F9FE,"RECEIPT"}, {0x1F699,"RECREATIONAL VEHICLE"}, {0x267C,"RECYCLED PAPER SYMBOL"}, @@ -25070,6 +25464,7 @@ CharName gUnicodeNames[] = { {0x2256,"RING IN EQUAL TO"}, {0x2218,"RING OPERATOR"}, {0x2E30,"RING POINT"}, +{0x1FA90,"RINGED PLANET"}, {0x1F56D,"RINGING BELL"}, {0x292B,"RISING DIAGONAL CROSSING FALLING DIAGONAL"}, {0x2930,"RISING DIAGONAL CROSSING SOUTH EAST ARROW"}, @@ -25267,6 +25662,7 @@ CharName gUnicodeNames[] = { {0x2BF3,"RUSSIAN ASTROLOGICAL SYMBOL VIGINTILE"}, {0x29CC,"S IN TRIANGLE"}, {0x1F9F7,"SAFETY PIN"}, +{0x1F9BA,"SAFETY VEST"}, {0x2650,"SAGITTARIUS"}, {0x26F5,"SAILBOAT"}, {0x1F376,"SAKE BOTTLE AND CUP"}, @@ -25338,6 +25734,7 @@ CharName gUnicodeNames[] = { {0x1F676,"SANS-SERIF HEAVY DOUBLE TURNED COMMA QUOTATION MARK ORNAMENT"}, {0x1F678,"SANS-SERIF HEAVY LOW DOUBLE COMMA QUOTATION MARK ORNAMENT"}, {0x1F67A,"SANS-SERIF INTERROBANG ORNAMENT"}, +{0x1F97B,"SARI"}, {0x1F6F0,"SATELLITE"}, {0x1F4E1,"SATELLITE ANTENNA"}, {0x2644,"SATURN"}, @@ -25640,6 +26037,7 @@ CharName gUnicodeNames[] = { {0x1BCA2,"SHORTHAND FORMAT DOWN STEP"}, {0x1BCA0,"SHORTHAND FORMAT LETTER OVERLAP"}, {0x1BCA3,"SHORTHAND FORMAT UP STEP"}, +{0x1FA73,"SHORTS"}, {0x237D,"SHOULDERED OPEN BOX"}, {0x1F6BF,"SHOWER"}, {0x1F990,"SHRIMP"}, @@ -26550,6 +26948,7 @@ CharName gUnicodeNames[] = { {0x26F7,"SKIER"}, {0x1F480,"SKULL"}, {0x2620,"SKULL AND CROSSBONES"}, +{0x1F9A8,"SKUNK"}, {0x2A96,"SLANTED EQUAL TO OR GREATER-THAN"}, {0x2A98,"SLANTED EQUAL TO OR GREATER-THAN WITH DOT INSIDE"}, {0x2A95,"SLANTED EQUAL TO OR LESS-THAN"}, @@ -26570,6 +26969,7 @@ CharName gUnicodeNames[] = { {0x2A58,"SLOPING LARGE AND"}, {0x2A57,"SLOPING LARGE OR"}, {0x1F3B0,"SLOT MACHINE"}, +{0x1F9A5,"SLOTH"}, {0x1F6E9,"SMALL AIRPLANE"}, {0xFE60,"SMALL AMPERSAND"}, {0xFE61,"SMALL ASTERISK"}, @@ -26833,6 +27233,8 @@ CharName gUnicodeNames[] = { {0x11A9B,"SOYOMBO MARK SHAD"}, {0x11A9A,"SOYOMBO MARK TSHEG"}, {0x11A96,"SOYOMBO SIGN ANUSVARA"}, +{0x11A84,"SOYOMBO SIGN JIHVAMULIYA"}, +{0x11A85,"SOYOMBO SIGN UPADHMANIYA"}, {0x11A97,"SOYOMBO SIGN VISARGA"}, {0x11A99,"SOYOMBO SUBJOINER"}, {0x11AA1,"SOYOMBO TERMINAL MARK-1"}, @@ -27238,6 +27640,7 @@ CharName gUnicodeNames[] = { {0x2695,"STAFF OF AESCULAPIUS"}, {0x269A,"STAFF OF HERMES"}, {0x1F583,"STAMPED ENVELOPE"}, +{0x1F9CD,"STANDING PERSON"}, {0x262A,"STAR AND CRESCENT"}, {0x225B,"STAR EQUALS"}, {0x2721,"STAR OF DAVID"}, @@ -27249,6 +27652,7 @@ CharName gUnicodeNames[] = { {0x1F682,"STEAM LOCOMOTIVE"}, {0x1F35C,"STEAMING BOWL"}, {0x2E3C,"STENOGRAPHIC FULL STOP"}, +{0x1FA7A,"STETHOSCOPE"}, {0x1F5E0,"STOCK CHART"}, {0x23F1,"STOPWATCH"}, {0x1F4CF,"STRAIGHT RULER"}, @@ -27984,6 +28388,7 @@ CharName gUnicodeNames[] = { {0x11680,"TAKRI LETTER A"}, {0x11681,"TAKRI LETTER AA"}, {0x11687,"TAKRI LETTER AI"}, +{0x116B8,"TAKRI LETTER ARCHAIC KHA"}, {0x11689,"TAKRI LETTER AU"}, {0x116A0,"TAKRI LETTER BA"}, {0x116A1,"TAKRI LETTER BHA"}, @@ -28039,9 +28444,11 @@ CharName gUnicodeNames[] = { {0x116B1,"TAKRI VOWEL SIGN UU"}, {0x1D378,"TALLY MARK FIVE"}, {0x1D377,"TALLY MARK ONE"}, +{0x11FEB,"TAMIL AND ODD SIGN"}, {0x0BF8,"TAMIL AS ABOVE SIGN"}, {0x0BD7,"TAMIL AU LENGTH MARK"}, {0x0BF7,"TAMIL CREDIT SIGN"}, +{0x11FEA,"TAMIL CURRENT SIGN"}, {0x0BF3,"TAMIL DAY SIGN"}, {0x0BF6,"TAMIL DEBIT SIGN"}, {0x0BEE,"TAMIL DIGIT EIGHT"}, @@ -28054,6 +28461,30 @@ CharName gUnicodeNames[] = { {0x0BE9,"TAMIL DIGIT THREE"}, {0x0BE8,"TAMIL DIGIT TWO"}, {0x0BE6,"TAMIL DIGIT ZERO"}, +{0x11FE5,"TAMIL DRY CULTIVATION SIGN"}, +{0x11FD4,"TAMIL FRACTION DOWNSCALING FACTOR KIIZH"}, +{0x11FCC,"TAMIL FRACTION ONE EIGHTH"}, +{0x11FC2,"TAMIL FRACTION ONE EIGHTIETH"}, +{0x11FCF,"TAMIL FRACTION ONE FIFTH"}, +{0x11FC4,"TAMIL FRACTION ONE FORTIETH"}, +{0x11FD1,"TAMIL FRACTION ONE HALF-1"}, +{0x11FD2,"TAMIL FRACTION ONE HALF-2"}, +{0x11FC1,"TAMIL FRACTION ONE ONE-HUNDRED-AND-SIXTIETH"}, +{0x11FD0,"TAMIL FRACTION ONE QUARTER"}, +{0x11FC9,"TAMIL FRACTION ONE SIXTEENTH-1"}, +{0x11FCA,"TAMIL FRACTION ONE SIXTEENTH-2"}, +{0x11FC3,"TAMIL FRACTION ONE SIXTY-FOURTH"}, +{0x11FCB,"TAMIL FRACTION ONE TENTH"}, +{0x11FC5,"TAMIL FRACTION ONE THIRTY-SECOND"}, +{0x11FC0,"TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH"}, +{0x11FC8,"TAMIL FRACTION ONE TWENTIETH"}, +{0x11FC6,"TAMIL FRACTION THREE EIGHTIETHS"}, +{0x11FD3,"TAMIL FRACTION THREE QUARTERS"}, +{0x11FCE,"TAMIL FRACTION THREE SIXTEENTHS"}, +{0x11FC7,"TAMIL FRACTION THREE SIXTY-FOURTHS"}, +{0x11FCD,"TAMIL FRACTION THREE TWENTIETHS"}, +{0x11FEE,"TAMIL IN POSSESSION SIGN"}, +{0x11FE6,"TAMIL LAND SIGN"}, {0x0B85,"TAMIL LETTER A"}, {0x0B86,"TAMIL LETTER AA"}, {0x0B90,"TAMIL LETTER AI"}, @@ -28095,10 +28526,34 @@ CharName gUnicodeNames[] = { {0x0BFA,"TAMIL NUMBER SIGN"}, {0x0BF0,"TAMIL NUMBER TEN"}, {0x0BD0,"TAMIL OM"}, +{0x11FFF,"TAMIL PUNCTUATION END OF TEXT"}, {0x0BF9,"TAMIL RUPEE SIGN"}, +{0x11FE7,"TAMIL SALT PAN SIGN"}, +{0x11FD7,"TAMIL SIGN AAZHAAKKU"}, {0x0B82,"TAMIL SIGN ANUSVARA"}, +{0x11FD6,"TAMIL SIGN CEVITU"}, +{0x11FDD,"TAMIL SIGN KAACU"}, +{0x11FDA,"TAMIL SIGN KURUNI"}, +{0x11FE2,"TAMIL SIGN KUZHI"}, +{0x11FDC,"TAMIL SIGN MUKKURUNI"}, +{0x11FF0,"TAMIL SIGN MUTHALIYA"}, +{0x11FD9,"TAMIL SIGN MUUVUZHAKKU"}, +{0x11FD5,"TAMIL SIGN NEL"}, +{0x11FE1,"TAMIL SIGN PAARAM"}, +{0x11FDE,"TAMIL SIGN PANAM"}, +{0x11FDB,"TAMIL SIGN PATHAKKU"}, +{0x11FDF,"TAMIL SIGN PON"}, +{0x11FD8,"TAMIL SIGN UZHAKKU"}, +{0x11FF1,"TAMIL SIGN VAKAIYARAA"}, +{0x11FE0,"TAMIL SIGN VARAAKAN"}, +{0x11FE3,"TAMIL SIGN VELI"}, {0x0BCD,"TAMIL SIGN VIRAMA"}, {0x0B83,"TAMIL SIGN VISARGA"}, +{0x11FEC,"TAMIL SPENT SIGN"}, +{0x11FEF,"TAMIL STARTING FROM SIGN"}, +{0x11FED,"TAMIL TOTAL SIGN"}, +{0x11FE8,"TAMIL TRADITIONAL CREDIT SIGN"}, +{0x11FE9,"TAMIL TRADITIONAL NUMBER SIGN"}, {0x0BBE,"TAMIL VOWEL SIGN AA"}, {0x0BC8,"TAMIL VOWEL SIGN AI"}, {0x0BCC,"TAMIL VOWEL SIGN AU"}, @@ -28110,6 +28565,7 @@ CharName gUnicodeNames[] = { {0x0BCB,"TAMIL VOWEL SIGN OO"}, {0x0BC1,"TAMIL VOWEL SIGN U"}, {0x0BC2,"TAMIL VOWEL SIGN UU"}, +{0x11FE4,"TAMIL WET CULTIVATION SIGN"}, {0x0BF5,"TAMIL YEAR SIGN"}, {0x1F38B,"TANABATA TREE"}, {0x1F34A,"TANGERINE"}, @@ -28965,6 +29421,7 @@ CharName gUnicodeNames[] = { {0x0C01,"TELUGU SIGN CANDRABINDU"}, {0x0C04,"TELUGU SIGN COMBINING ANUSVARA ABOVE"}, {0x0C00,"TELUGU SIGN COMBINING CANDRABINDU ABOVE"}, +{0x0C77,"TELUGU SIGN SIDDHAM"}, {0x0C7F,"TELUGU SIGN TUUMU"}, {0x0C4D,"TELUGU SIGN VIRAMA"}, {0x0C03,"TELUGU SIGN VISARGA"}, @@ -30462,6 +30919,7 @@ CharName gUnicodeNames[] = { {0x1CEC,"VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL"}, {0x1CF2,"VEDIC SIGN ARDHAVISARGA"}, {0x1CF7,"VEDIC SIGN ATIKRAMA"}, +{0x1CFA,"VEDIC SIGN DOUBLE ANUSVARA ANTARGOMUKHA"}, {0x1CEE,"VEDIC SIGN HEXIFORM LONG ANUSVARA"}, {0x1CF5,"VEDIC SIGN JIHVAMULIYA"}, {0x1CEF,"VEDIC SIGN LONG ANUSVARA"}, @@ -30566,6 +31024,66 @@ CharName gUnicodeNames[] = { {0x2156,"VULGAR FRACTION TWO FIFTHS"}, {0x2154,"VULGAR FRACTION TWO THIRDS"}, {0x2189,"VULGAR FRACTION ZERO THIRDS"}, +{0x1F9C7,"WAFFLE"}, +{0x1E2F8,"WANCHO DIGIT EIGHT"}, +{0x1E2F5,"WANCHO DIGIT FIVE"}, +{0x1E2F4,"WANCHO DIGIT FOUR"}, +{0x1E2F9,"WANCHO DIGIT NINE"}, +{0x1E2F1,"WANCHO DIGIT ONE"}, +{0x1E2F7,"WANCHO DIGIT SEVEN"}, +{0x1E2F6,"WANCHO DIGIT SIX"}, +{0x1E2F3,"WANCHO DIGIT THREE"}, +{0x1E2F2,"WANCHO DIGIT TWO"}, +{0x1E2F0,"WANCHO DIGIT ZERO"}, +{0x1E2C1,"WANCHO LETTER A"}, +{0x1E2C0,"WANCHO LETTER AA"}, +{0x1E2E8,"WANCHO LETTER AAN"}, +{0x1E2E3,"WANCHO LETTER AANG"}, +{0x1E2E4,"WANCHO LETTER ANG"}, +{0x1E2D6,"WANCHO LETTER AU"}, +{0x1E2C2,"WANCHO LETTER BA"}, +{0x1E2C3,"WANCHO LETTER CA"}, +{0x1E2C4,"WANCHO LETTER DA"}, +{0x1E2DB,"WANCHO LETTER E"}, +{0x1E2E7,"WANCHO LETTER EN"}, +{0x1E2CD,"WANCHO LETTER FA"}, +{0x1E2C5,"WANCHO LETTER GA"}, +{0x1E2DA,"WANCHO LETTER HA"}, +{0x1E2DC,"WANCHO LETTER I"}, +{0x1E2E5,"WANCHO LETTER ING"}, +{0x1E2D0,"WANCHO LETTER JA"}, +{0x1E2D4,"WANCHO LETTER KA"}, +{0x1E2D9,"WANCHO LETTER KHA"}, +{0x1E2C8,"WANCHO LETTER LA"}, +{0x1E2DF,"WANCHO LETTER LLHA"}, +{0x1E2D8,"WANCHO LETTER MA"}, +{0x1E2C9,"WANCHO LETTER NA"}, +{0x1E2DD,"WANCHO LETTER NGA"}, +{0x1E2E9,"WANCHO LETTER NYA"}, +{0x1E2D5,"WANCHO LETTER O"}, +{0x1E2E6,"WANCHO LETTER ON"}, +{0x1E2E2,"WANCHO LETTER ONG"}, +{0x1E2CA,"WANCHO LETTER PA"}, +{0x1E2C7,"WANCHO LETTER PHA"}, +{0x1E2D7,"WANCHO LETTER RA"}, +{0x1E2CE,"WANCHO LETTER SA"}, +{0x1E2CF,"WANCHO LETTER SHA"}, +{0x1E2CB,"WANCHO LETTER TA"}, +{0x1E2CC,"WANCHO LETTER THA"}, +{0x1E2E1,"WANCHO LETTER TRA"}, +{0x1E2E0,"WANCHO LETTER TSA"}, +{0x1E2DE,"WANCHO LETTER U"}, +{0x1E2EA,"WANCHO LETTER UEN"}, +{0x1E2D3,"WANCHO LETTER VA"}, +{0x1E2D2,"WANCHO LETTER WA"}, +{0x1E2C6,"WANCHO LETTER YA"}, +{0x1E2EB,"WANCHO LETTER YIH"}, +{0x1E2D1,"WANCHO LETTER ZA"}, +{0x1E2FF,"WANCHO NGUN SIGN"}, +{0x1E2EE,"WANCHO TONE KOI"}, +{0x1E2EF,"WANCHO TONE KOINI"}, +{0x1E2EC,"WANCHO TONE TUP"}, +{0x1E2ED,"WANCHO TONE TUPNI"}, {0x1F318,"WANING CRESCENT MOON SYMBOL"}, {0x1F316,"WANING GIBBOUS MOON SYMBOL"}, {0x118A1,"WARANG CITI CAPITAL LETTER A"}, @@ -30685,11 +31203,38 @@ CharName gUnicodeNames[] = { {0x1F8AD,"WHITE ARROW SHAFT WIDTH TWO THIRDS"}, {0x25E6,"WHITE BULLET"}, {0x2657,"WHITE CHESS BISHOP"}, +{0x1FA0C,"WHITE CHESS BISHOP ROTATED NINETY DEGREES"}, +{0x1FA36,"WHITE CHESS BISHOP ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA48,"WHITE CHESS EQUIHOPPER"}, +{0x1FA4B,"WHITE CHESS EQUIHOPPER ROTATED NINETY DEGREES"}, {0x2654,"WHITE CHESS KING"}, +{0x1FA09,"WHITE CHESS KING ROTATED NINETY DEGREES"}, +{0x1FA33,"WHITE CHESS KING ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x2658,"WHITE CHESS KNIGHT"}, +{0x1FA06,"WHITE CHESS KNIGHT ROTATED FORTY-FIVE DEGREES"}, +{0x1FA0D,"WHITE CHESS KNIGHT ROTATED NINETY DEGREES"}, +{0x1FA1B,"WHITE CHESS KNIGHT ROTATED ONE HUNDRED THIRTY-FIVE DEGREES"}, +{0x1FA45,"WHITE CHESS KNIGHT ROTATED THREE HUNDRED FIFTEEN DEGREES"}, +{0x1FA37,"WHITE CHESS KNIGHT ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA30,"WHITE CHESS KNIGHT ROTATED TWO HUNDRED TWENTY-FIVE DEGREES"}, +{0x1FA50,"WHITE CHESS KNIGHT-BISHOP"}, +{0x1FA4E,"WHITE CHESS KNIGHT-QUEEN"}, +{0x1FA4F,"WHITE CHESS KNIGHT-ROOK"}, {0x2659,"WHITE CHESS PAWN"}, +{0x1FA0E,"WHITE CHESS PAWN ROTATED NINETY DEGREES"}, +{0x1FA38,"WHITE CHESS PAWN ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x2655,"WHITE CHESS QUEEN"}, +{0x1FA0A,"WHITE CHESS QUEEN ROTATED NINETY DEGREES"}, +{0x1FA34,"WHITE CHESS QUEEN ROTATED TWO HUNDRED SEVENTY DEGREES"}, {0x2656,"WHITE CHESS ROOK"}, +{0x1FA0B,"WHITE CHESS ROOK ROTATED NINETY DEGREES"}, +{0x1FA35,"WHITE CHESS ROOK ROTATED TWO HUNDRED SEVENTY DEGREES"}, +{0x1FA21,"WHITE CHESS TURNED BISHOP"}, +{0x1FA1E,"WHITE CHESS TURNED KING"}, +{0x1FA22,"WHITE CHESS TURNED KNIGHT"}, +{0x1FA23,"WHITE CHESS TURNED PAWN"}, +{0x1FA1F,"WHITE CHESS TURNED QUEEN"}, +{0x1FA20,"WHITE CHESS TURNED ROOK"}, {0x25CB,"WHITE CIRCLE"}, {0x1F78A,"WHITE CIRCLE CONTAINING BLACK SMALL CIRCLE"}, {0x2686,"WHITE CIRCLE WITH DOT RIGHT"}, @@ -30726,6 +31271,7 @@ CharName gUnicodeNames[] = { {0x2727,"WHITE FOUR POINTED STAR"}, {0x2639,"WHITE FROWNING FACE"}, {0x1F5AB,"WHITE HARD SHELL FLOPPY DISK"}, +{0x1F90D,"WHITE HEART"}, {0x2661,"WHITE HEART SUIT"}, {0x2705,"WHITE HEAVY CHECK MARK"}, {0x2B21,"WHITE HEXAGON"}, @@ -30882,6 +31428,7 @@ CharName gUnicodeNames[] = { {0x1FA61,"XIANGQI RED MANDARIN"}, {0x1FA66,"XIANGQI RED SOLDIER"}, {0x22BB,"XOR"}, +{0x1F971,"YAWNING FACE"}, {0x1F49B,"YELLOW HEART"}, {0x00A5,"YEN SIGN"}, {0xA49B,"YI RADICAL BBUT"}, @@ -32105,6 +32652,7 @@ CharName gUnicodeNames[] = { {0xA2E7,"YI SYLLABLE ZZYT"}, {0xA2E8,"YI SYLLABLE ZZYX"}, {0x262F,"YIN YANG"}, +{0x1FA80,"YO-YO"}, {0x22FF,"Z NOTATION BAG MEMBERSHIP"}, {0x2A64,"Z NOTATION DOMAIN ANTIRESTRICTION"}, {0x2989,"Z NOTATION LEFT BINDING BRACKET"}, diff --git a/Build/source/libs/teckit/TECkit-src/source/ulong_chartraits.h b/Build/source/libs/teckit/TECkit-src/source/ulong_chartraits.h index 85aa317b284..d364b354f4c 100644 --- a/Build/source/libs/teckit/TECkit-src/source/ulong_chartraits.h +++ b/Build/source/libs/teckit/TECkit-src/source/ulong_chartraits.h @@ -1,5 +1,4 @@ -#ifndef __ulong_chartraits_h__ -#define __ulong_chartraits_h__ +#pragma once #include <iostream> #include <string> @@ -59,7 +58,7 @@ namespace std { const char_type* __p = __s; while (*__p) ++__p; - return (__p - __s); + return static_cast<size_t>(__p - __s); } static const char_type* @@ -72,11 +71,11 @@ namespace std static char_type* move(char_type* __s1, const char_type* __s2, size_t __n) - { return (char_type*) memmove(__s1, __s2, __n * sizeof(char_type)); } + { return static_cast<char_type*>(memmove(__s1, __s2, __n * sizeof(char_type))); } static char_type* copy(char_type* __s1, const char_type* __s2, size_t __n) - { return (char_type*) memcpy(__s1, __s2, __n * sizeof(char_type)); } + { return static_cast<char_type*>(memcpy(__s1, __s2, __n * sizeof(char_type))); } static char_type* assign(char_type* __s, size_t __n, char_type __a) @@ -98,12 +97,10 @@ namespace std { return __c1 == __c2; } static int_type - eof() { return static_cast<int_type>(-1); } + eof() { return int_type(-1); } static int_type not_eof(const int_type& __c) { return eq_int_type(__c, eof()) ? int_type(0) : __c; } }; } - -#endif diff --git a/Build/source/libs/teckit/TECkit-src/test/NormalizationTest.txt b/Build/source/libs/teckit/TECkit-src/test/NormalizationTest.txt index 72a31bcdf18..04c935c1f73 100644 --- a/Build/source/libs/teckit/TECkit-src/test/NormalizationTest.txt +++ b/Build/source/libs/teckit/TECkit-src/test/NormalizationTest.txt @@ -1,6 +1,6 @@ -# NormalizationTest-11.0.0.txt -# Date: 2018-02-19, 18:33:08 GMT -# © 2018 Unicode®, Inc. +# NormalizationTest-12.0.0.txt +# Date: 2019-01-22, 08:18:33 GMT +# © 2019 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. # For terms of use, see http://www.unicode.org/terms_of_use.html # @@ -16363,6 +16363,7 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE 1F14F;1F14F;1F14F;0057 0043;0057 0043; # (🅏; 🅏; 🅏; WC; WC; ) SQUARED WC 1F16A;1F16A;1F16A;004D 0043;004D 0043; # (🅪; 🅪; 🅪; MC; MC; ) RAISED MC SIGN 1F16B;1F16B;1F16B;004D 0044;004D 0044; # (🅫; 🅫; 🅫; MD; MD; ) RAISED MD SIGN +1F16C;1F16C;1F16C;004D 0052;004D 0052; # (🅬; 🅬; 🅬; MR; MR; ) RAISED MR SIGN 1F190;1F190;1F190;0044 004A;0044 004A; # (🆐; 🆐; 🆐; DJ; DJ; ) SQUARE DJ 1F200;1F200;1F200;307B 304B;307B 304B; # (🈀; 🈀; 🈀; ほか; ほか; ) SQUARE HIRAGANA HOKA 1F201;1F201;1F201;30B3 30B3;30B3 30B3; # (🈁; 🈁; 🈁; ココ; ココ; ) SQUARED KATAKANA KOKO @@ -17685,6 +17686,8 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE 0061 0EB8 0EC8 0EB8 0E48 0062;0061 0E48 0EB8 0EB8 0EC8 0062;0061 0E48 0EB8 0EB8 0EC8 0062;0061 0E48 0EB8 0EB8 0EC8 0062;0061 0E48 0EB8 0EB8 0EC8 0062; # (a◌ຸ◌່◌ຸ◌่b; a◌่◌ຸ◌ຸ◌່b; a◌่◌ຸ◌ຸ◌່b; a◌่◌ຸ◌ຸ◌່b; a◌่◌ຸ◌ຸ◌່b; ) LATIN SMALL LETTER A, LAO VOWEL SIGN U, LAO TONE MAI EK, LAO VOWEL SIGN U, THAI CHARACTER MAI EK, LATIN SMALL LETTER B 0061 0EC8 0EB8 0E48 0EB9 0062;0061 0E48 0EB8 0EB9 0EC8 0062;0061 0E48 0EB8 0EB9 0EC8 0062;0061 0E48 0EB8 0EB9 0EC8 0062;0061 0E48 0EB8 0EB9 0EC8 0062; # (a◌່◌ຸ◌่◌ູb; a◌่◌ຸ◌ູ◌່b; a◌่◌ຸ◌ູ◌່b; a◌่◌ຸ◌ູ◌່b; a◌่◌ຸ◌ູ◌່b; ) LATIN SMALL LETTER A, LAO TONE MAI EK, LAO VOWEL SIGN U, THAI CHARACTER MAI EK, LAO VOWEL SIGN UU, LATIN SMALL LETTER B 0061 0EB9 0EC8 0EB8 0E48 0062;0061 0E48 0EB9 0EB8 0EC8 0062;0061 0E48 0EB9 0EB8 0EC8 0062;0061 0E48 0EB9 0EB8 0EC8 0062;0061 0E48 0EB9 0EB8 0EC8 0062; # (a◌ູ◌່◌ຸ◌่b; a◌่◌ູ◌ຸ◌່b; a◌่◌ູ◌ຸ◌່b; a◌่◌ູ◌ຸ◌່b; a◌่◌ູ◌ຸ◌່b; ) LATIN SMALL LETTER A, LAO VOWEL SIGN UU, LAO TONE MAI EK, LAO VOWEL SIGN U, THAI CHARACTER MAI EK, LATIN SMALL LETTER B +0061 05B0 094D 3099 0EBA 0062;0061 3099 094D 0EBA 05B0 0062;0061 3099 094D 0EBA 05B0 0062;0061 3099 094D 0EBA 05B0 0062;0061 3099 094D 0EBA 05B0 0062; # (a◌ְ◌्◌゙◌຺b; a◌゙◌्◌຺◌ְb; a◌゙◌्◌຺◌ְb; a◌゙◌्◌຺◌ְb; a◌゙◌्◌຺◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LAO SIGN PALI VIRAMA, LATIN SMALL LETTER B +0061 0EBA 05B0 094D 3099 0062;0061 3099 0EBA 094D 05B0 0062;0061 3099 0EBA 094D 05B0 0062;0061 3099 0EBA 094D 05B0 0062;0061 3099 0EBA 094D 05B0 0062; # (a◌຺◌ְ◌्◌゙b; a◌゙◌຺◌्◌ְb; a◌゙◌຺◌्◌ְb; a◌゙◌຺◌्◌ְb; a◌゙◌຺◌्◌ְb; ) LATIN SMALL LETTER A, LAO SIGN PALI VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B 0061 0F71 0EC8 0EB8 0EC8 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062; # (a◌ཱ◌່◌ຸ◌່b; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; ) LATIN SMALL LETTER A, TIBETAN VOWEL SIGN AA, LAO TONE MAI EK, LAO VOWEL SIGN U, LAO TONE MAI EK, LATIN SMALL LETTER B 0061 0EC8 0F71 0EC8 0EB8 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062;0061 0EB8 0EC8 0EC8 0F71 0062; # (a◌່◌ཱ◌່◌ຸb; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; a◌ຸ◌່◌່◌ཱb; ) LATIN SMALL LETTER A, LAO TONE MAI EK, TIBETAN VOWEL SIGN AA, LAO TONE MAI EK, LAO VOWEL SIGN U, LATIN SMALL LETTER B 0061 0F71 0EC8 0EB8 0EC9 0062;0061 0EB8 0EC8 0EC9 0F71 0062;0061 0EB8 0EC8 0EC9 0F71 0062;0061 0EB8 0EC8 0EC9 0F71 0062;0061 0EB8 0EC8 0EC9 0F71 0062; # (a◌ཱ◌່◌ຸ◌້b; a◌ຸ◌່◌້◌ཱb; a◌ຸ◌່◌້◌ཱb; a◌ຸ◌່◌້◌ཱb; a◌ຸ◌່◌້◌ཱb; ) LATIN SMALL LETTER A, TIBETAN VOWEL SIGN AA, LAO TONE MAI EK, LAO VOWEL SIGN U, LAO TONE MAI THO, LATIN SMALL LETTER B @@ -18453,6 +18456,8 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE 0061 11839 05B0 094D 3099 0062;0061 3099 11839 094D 05B0 0062;0061 3099 11839 094D 05B0 0062;0061 3099 11839 094D 05B0 0062;0061 3099 11839 094D 05B0 0062; # (a◌𑠹◌ְ◌्◌゙b; a◌゙◌𑠹◌्◌ְb; a◌゙◌𑠹◌्◌ְb; a◌゙◌𑠹◌्◌ְb; a◌゙◌𑠹◌्◌ְb; ) LATIN SMALL LETTER A, DOGRA SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B 0061 3099 093C 0334 1183A 0062;0061 0334 093C 1183A 3099 0062;0061 0334 093C 1183A 3099 0062;0061 0334 093C 1183A 3099 0062;0061 0334 093C 1183A 3099 0062; # (a◌゙◌़◌̴◌𑠺b; a◌̴◌़◌𑠺◌゙b; a◌̴◌़◌𑠺◌゙b; a◌̴◌़◌𑠺◌゙b; a◌̴◌़◌𑠺◌゙b; ) LATIN SMALL LETTER A, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, DOGRA SIGN NUKTA, LATIN SMALL LETTER B 0061 1183A 3099 093C 0334 0062;0061 0334 1183A 093C 3099 0062;0061 0334 1183A 093C 3099 0062;0061 0334 1183A 093C 3099 0062;0061 0334 1183A 093C 3099 0062; # (a◌𑠺◌゙◌़◌̴b; a◌̴◌𑠺◌़◌゙b; a◌̴◌𑠺◌़◌゙b; a◌̴◌𑠺◌़◌゙b; a◌̴◌𑠺◌़◌゙b; ) LATIN SMALL LETTER A, DOGRA SIGN NUKTA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, DEVANAGARI SIGN NUKTA, COMBINING TILDE OVERLAY, LATIN SMALL LETTER B +0061 05B0 094D 3099 119E0 0062;0061 3099 094D 119E0 05B0 0062;0061 3099 094D 119E0 05B0 0062;0061 3099 094D 119E0 05B0 0062;0061 3099 094D 119E0 05B0 0062; # (a◌ְ◌्◌゙◌𑧠b; a◌゙◌्◌𑧠◌ְb; a◌゙◌्◌𑧠◌ְb; a◌゙◌्◌𑧠◌ְb; a◌゙◌्◌𑧠◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, NANDINAGARI SIGN VIRAMA, LATIN SMALL LETTER B +0061 119E0 05B0 094D 3099 0062;0061 3099 119E0 094D 05B0 0062;0061 3099 119E0 094D 05B0 0062;0061 3099 119E0 094D 05B0 0062;0061 3099 119E0 094D 05B0 0062; # (a◌𑧠◌ְ◌्◌゙b; a◌゙◌𑧠◌्◌ְb; a◌゙◌𑧠◌्◌ְb; a◌゙◌𑧠◌्◌ְb; a◌゙◌𑧠◌्◌ְb; ) LATIN SMALL LETTER A, NANDINAGARI SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B 0061 05B0 094D 3099 11A34 0062;0061 3099 094D 11A34 05B0 0062;0061 3099 094D 11A34 05B0 0062;0061 3099 094D 11A34 05B0 0062;0061 3099 094D 11A34 05B0 0062; # (a◌ְ◌्◌゙◌𑨴b; a◌゙◌्◌𑨴◌ְb; a◌゙◌्◌𑨴◌ְb; a◌゙◌्◌𑨴◌ְb; a◌゙◌्◌𑨴◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, ZANABAZAR SQUARE SIGN VIRAMA, LATIN SMALL LETTER B 0061 11A34 05B0 094D 3099 0062;0061 3099 11A34 094D 05B0 0062;0061 3099 11A34 094D 05B0 0062;0061 3099 11A34 094D 05B0 0062;0061 3099 11A34 094D 05B0 0062; # (a◌𑨴◌ְ◌्◌゙b; a◌゙◌𑨴◌्◌ְb; a◌゙◌𑨴◌्◌ְb; a◌゙◌𑨴◌्◌ְb; a◌゙◌𑨴◌्◌ְb; ) LATIN SMALL LETTER A, ZANABAZAR SQUARE SIGN VIRAMA, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, LATIN SMALL LETTER B 0061 05B0 094D 3099 11A47 0062;0061 3099 094D 11A47 05B0 0062;0061 3099 094D 11A47 05B0 0062;0061 3099 094D 11A47 05B0 0062;0061 3099 094D 11A47 05B0 0062; # (a◌ְ◌्◌゙◌𑩇b; a◌゙◌्◌𑩇◌ְb; a◌゙◌्◌𑩇◌ְb; a◌゙◌्◌𑩇◌ְb; a◌゙◌्◌𑩇◌ְb; ) LATIN SMALL LETTER A, HEBREW POINT SHEVA, DEVANAGARI SIGN VIRAMA, COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK, ZANABAZAR SQUARE SUBJOINER, LATIN SMALL LETTER B @@ -18637,6 +18642,28 @@ FFEE;FFEE;FFEE;25CB;25CB; # (○; ○; ○; ○; ○; ) HALFWIDTH WHITE CIRCLE 0061 1E029 0315 0300 05AE 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062;0061 05AE 1E029 0300 0315 0062; # (a◌𞀩◌̕◌̀◌֮b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; a◌֮◌𞀩◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GLAGOLITIC LETTER IOTATED BIG YUS, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B 0061 0315 0300 05AE 1E02A 0062;00E0 05AE 1E02A 0315 0062;0061 05AE 0300 1E02A 0315 0062;00E0 05AE 1E02A 0315 0062;0061 05AE 0300 1E02A 0315 0062; # (a◌̕◌̀◌֮◌𞀪b; à◌֮◌𞀪◌̕b; a◌֮◌̀◌𞀪◌̕b; à◌֮◌𞀪◌̕b; a◌֮◌̀◌𞀪◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, COMBINING GLAGOLITIC LETTER FITA, LATIN SMALL LETTER B 0061 1E02A 0315 0300 05AE 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062;0061 05AE 1E02A 0300 0315 0062; # (a◌𞀪◌̕◌̀◌֮b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; a◌֮◌𞀪◌̀◌̕b; ) LATIN SMALL LETTER A, COMBINING GLAGOLITIC LETTER FITA, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E130 0062;00E0 05AE 1E130 0315 0062;0061 05AE 0300 1E130 0315 0062;00E0 05AE 1E130 0315 0062;0061 05AE 0300 1E130 0315 0062; # (a◌̕◌̀◌֮◌𞄰b; à◌֮◌𞄰◌̕b; a◌֮◌̀◌𞄰◌̕b; à◌֮◌𞄰◌̕b; a◌֮◌̀◌𞄰◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-B, LATIN SMALL LETTER B +0061 1E130 0315 0300 05AE 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062;0061 05AE 1E130 0300 0315 0062; # (a◌𞄰◌̕◌̀◌֮b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; a◌֮◌𞄰◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-B, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E131 0062;00E0 05AE 1E131 0315 0062;0061 05AE 0300 1E131 0315 0062;00E0 05AE 1E131 0315 0062;0061 05AE 0300 1E131 0315 0062; # (a◌̕◌̀◌֮◌𞄱b; à◌֮◌𞄱◌̕b; a◌֮◌̀◌𞄱◌̕b; à◌֮◌𞄱◌̕b; a◌֮◌̀◌𞄱◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-M, LATIN SMALL LETTER B +0061 1E131 0315 0300 05AE 0062;0061 05AE 1E131 0300 0315 0062;0061 05AE 1E131 0300 0315 0062;0061 05AE 1E131 0300 0315 0062;0061 05AE 1E131 0300 0315 0062; # (a◌𞄱◌̕◌̀◌֮b; a◌֮◌𞄱◌̀◌̕b; a◌֮◌𞄱◌̀◌̕b; a◌֮◌𞄱◌̀◌̕b; a◌֮◌𞄱◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-M, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E132 0062;00E0 05AE 1E132 0315 0062;0061 05AE 0300 1E132 0315 0062;00E0 05AE 1E132 0315 0062;0061 05AE 0300 1E132 0315 0062; # (a◌̕◌̀◌֮◌𞄲b; à◌֮◌𞄲◌̕b; a◌֮◌̀◌𞄲◌̕b; à◌֮◌𞄲◌̕b; a◌֮◌̀◌𞄲◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-J, LATIN SMALL LETTER B +0061 1E132 0315 0300 05AE 0062;0061 05AE 1E132 0300 0315 0062;0061 05AE 1E132 0300 0315 0062;0061 05AE 1E132 0300 0315 0062;0061 05AE 1E132 0300 0315 0062; # (a◌𞄲◌̕◌̀◌֮b; a◌֮◌𞄲◌̀◌̕b; a◌֮◌𞄲◌̀◌̕b; a◌֮◌𞄲◌̀◌̕b; a◌֮◌𞄲◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-J, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E133 0062;00E0 05AE 1E133 0315 0062;0061 05AE 0300 1E133 0315 0062;00E0 05AE 1E133 0315 0062;0061 05AE 0300 1E133 0315 0062; # (a◌̕◌̀◌֮◌𞄳b; à◌֮◌𞄳◌̕b; a◌֮◌̀◌𞄳◌̕b; à◌֮◌𞄳◌̕b; a◌֮◌̀◌𞄳◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-V, LATIN SMALL LETTER B +0061 1E133 0315 0300 05AE 0062;0061 05AE 1E133 0300 0315 0062;0061 05AE 1E133 0300 0315 0062;0061 05AE 1E133 0300 0315 0062;0061 05AE 1E133 0300 0315 0062; # (a◌𞄳◌̕◌̀◌֮b; a◌֮◌𞄳◌̀◌̕b; a◌֮◌𞄳◌̀◌̕b; a◌֮◌𞄳◌̀◌̕b; a◌֮◌𞄳◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-V, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E134 0062;00E0 05AE 1E134 0315 0062;0061 05AE 0300 1E134 0315 0062;00E0 05AE 1E134 0315 0062;0061 05AE 0300 1E134 0315 0062; # (a◌̕◌̀◌֮◌𞄴b; à◌֮◌𞄴◌̕b; a◌֮◌̀◌𞄴◌̕b; à◌֮◌𞄴◌̕b; a◌֮◌̀◌𞄴◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-S, LATIN SMALL LETTER B +0061 1E134 0315 0300 05AE 0062;0061 05AE 1E134 0300 0315 0062;0061 05AE 1E134 0300 0315 0062;0061 05AE 1E134 0300 0315 0062;0061 05AE 1E134 0300 0315 0062; # (a◌𞄴◌̕◌̀◌֮b; a◌֮◌𞄴◌̀◌̕b; a◌֮◌𞄴◌̀◌̕b; a◌֮◌𞄴◌̀◌̕b; a◌֮◌𞄴◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-S, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E135 0062;00E0 05AE 1E135 0315 0062;0061 05AE 0300 1E135 0315 0062;00E0 05AE 1E135 0315 0062;0061 05AE 0300 1E135 0315 0062; # (a◌̕◌̀◌֮◌𞄵b; à◌֮◌𞄵◌̕b; a◌֮◌̀◌𞄵◌̕b; à◌֮◌𞄵◌̕b; a◌֮◌̀◌𞄵◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-G, LATIN SMALL LETTER B +0061 1E135 0315 0300 05AE 0062;0061 05AE 1E135 0300 0315 0062;0061 05AE 1E135 0300 0315 0062;0061 05AE 1E135 0300 0315 0062;0061 05AE 1E135 0300 0315 0062; # (a◌𞄵◌̕◌̀◌֮b; a◌֮◌𞄵◌̀◌̕b; a◌֮◌𞄵◌̀◌̕b; a◌֮◌𞄵◌̀◌̕b; a◌֮◌𞄵◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-G, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E136 0062;00E0 05AE 1E136 0315 0062;0061 05AE 0300 1E136 0315 0062;00E0 05AE 1E136 0315 0062;0061 05AE 0300 1E136 0315 0062; # (a◌̕◌̀◌֮◌𞄶b; à◌֮◌𞄶◌̕b; a◌֮◌̀◌𞄶◌̕b; à◌֮◌𞄶◌̕b; a◌֮◌̀◌𞄶◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, NYIAKENG PUACHUE HMONG TONE-D, LATIN SMALL LETTER B +0061 1E136 0315 0300 05AE 0062;0061 05AE 1E136 0300 0315 0062;0061 05AE 1E136 0300 0315 0062;0061 05AE 1E136 0300 0315 0062;0061 05AE 1E136 0300 0315 0062; # (a◌𞄶◌̕◌̀◌֮b; a◌֮◌𞄶◌̀◌̕b; a◌֮◌𞄶◌̀◌̕b; a◌֮◌𞄶◌̀◌̕b; a◌֮◌𞄶◌̀◌̕b; ) LATIN SMALL LETTER A, NYIAKENG PUACHUE HMONG TONE-D, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E2EC 0062;00E0 05AE 1E2EC 0315 0062;0061 05AE 0300 1E2EC 0315 0062;00E0 05AE 1E2EC 0315 0062;0061 05AE 0300 1E2EC 0315 0062; # (a◌̕◌̀◌֮◌𞋬b; à◌֮◌𞋬◌̕b; a◌֮◌̀◌𞋬◌̕b; à◌֮◌𞋬◌̕b; a◌֮◌̀◌𞋬◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, WANCHO TONE TUP, LATIN SMALL LETTER B +0061 1E2EC 0315 0300 05AE 0062;0061 05AE 1E2EC 0300 0315 0062;0061 05AE 1E2EC 0300 0315 0062;0061 05AE 1E2EC 0300 0315 0062;0061 05AE 1E2EC 0300 0315 0062; # (a◌𞋬◌̕◌̀◌֮b; a◌֮◌𞋬◌̀◌̕b; a◌֮◌𞋬◌̀◌̕b; a◌֮◌𞋬◌̀◌̕b; a◌֮◌𞋬◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE TUP, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E2ED 0062;00E0 05AE 1E2ED 0315 0062;0061 05AE 0300 1E2ED 0315 0062;00E0 05AE 1E2ED 0315 0062;0061 05AE 0300 1E2ED 0315 0062; # (a◌̕◌̀◌֮◌𞋭b; à◌֮◌𞋭◌̕b; a◌֮◌̀◌𞋭◌̕b; à◌֮◌𞋭◌̕b; a◌֮◌̀◌𞋭◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, WANCHO TONE TUPNI, LATIN SMALL LETTER B +0061 1E2ED 0315 0300 05AE 0062;0061 05AE 1E2ED 0300 0315 0062;0061 05AE 1E2ED 0300 0315 0062;0061 05AE 1E2ED 0300 0315 0062;0061 05AE 1E2ED 0300 0315 0062; # (a◌𞋭◌̕◌̀◌֮b; a◌֮◌𞋭◌̀◌̕b; a◌֮◌𞋭◌̀◌̕b; a◌֮◌𞋭◌̀◌̕b; a◌֮◌𞋭◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE TUPNI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E2EE 0062;00E0 05AE 1E2EE 0315 0062;0061 05AE 0300 1E2EE 0315 0062;00E0 05AE 1E2EE 0315 0062;0061 05AE 0300 1E2EE 0315 0062; # (a◌̕◌̀◌֮◌𞋮b; à◌֮◌𞋮◌̕b; a◌֮◌̀◌𞋮◌̕b; à◌֮◌𞋮◌̕b; a◌֮◌̀◌𞋮◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, WANCHO TONE KOI, LATIN SMALL LETTER B +0061 1E2EE 0315 0300 05AE 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062;0061 05AE 1E2EE 0300 0315 0062; # (a◌𞋮◌̕◌̀◌֮b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; a◌֮◌𞋮◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE KOI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B +0061 0315 0300 05AE 1E2EF 0062;00E0 05AE 1E2EF 0315 0062;0061 05AE 0300 1E2EF 0315 0062;00E0 05AE 1E2EF 0315 0062;0061 05AE 0300 1E2EF 0315 0062; # (a◌̕◌̀◌֮◌𞋯b; à◌֮◌𞋯◌̕b; a◌֮◌̀◌𞋯◌̕b; à◌֮◌𞋯◌̕b; a◌֮◌̀◌𞋯◌̕b; ) LATIN SMALL LETTER A, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, WANCHO TONE KOINI, LATIN SMALL LETTER B +0061 1E2EF 0315 0300 05AE 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062;0061 05AE 1E2EF 0300 0315 0062; # (a◌𞋯◌̕◌̀◌֮b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; a◌֮◌𞋯◌̀◌̕b; ) LATIN SMALL LETTER A, WANCHO TONE KOINI, COMBINING COMMA ABOVE RIGHT, COMBINING GRAVE ACCENT, HEBREW ACCENT ZINOR, LATIN SMALL LETTER B 0061 059A 0316 302A 1E8D0 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062;0061 302A 0316 1E8D0 059A 0062; # (a◌֚◌̖◌〪◌𞣐b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; a◌〪◌̖◌𞣐◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER TEENS, LATIN SMALL LETTER B 0061 1E8D0 059A 0316 302A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062;0061 302A 1E8D0 0316 059A 0062; # (a◌𞣐◌֚◌̖◌〪b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; a◌〪◌𞣐◌̖◌֚b; ) LATIN SMALL LETTER A, MENDE KIKAKUI COMBINING NUMBER TEENS, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, LATIN SMALL LETTER B 0061 059A 0316 302A 1E8D1 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062;0061 302A 0316 1E8D1 059A 0062; # (a◌֚◌̖◌〪◌𞣑b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; a◌〪◌̖◌𞣑◌֚b; ) LATIN SMALL LETTER A, HEBREW ACCENT YETIV, COMBINING GRAVE ACCENT BELOW, IDEOGRAPHIC LEVEL TONE MARK, MENDE KIKAKUI COMBINING NUMBER TENS, LATIN SMALL LETTER B diff --git a/Build/source/libs/teckit/TECkit-src/test/dotests.pl b/Build/source/libs/teckit/TECkit-src/test/dotests.pl index aa27401a92f..8f61e65da72 100755 --- a/Build/source/libs/teckit/TECkit-src/test/dotests.pl +++ b/Build/source/libs/teckit/TECkit-src/test/dotests.pl @@ -1,4 +1,4 @@ -#!/usr/bin/perl +#!/usr/bin/env perl use strict; use warnings; diff --git a/Build/source/libs/teckit/TLpatches/ChangeLog b/Build/source/libs/teckit/TLpatches/ChangeLog index 2eb695c78c0..d58bfa90ab3 100644 --- a/Build/source/libs/teckit/TLpatches/ChangeLog +++ b/Build/source/libs/teckit/TLpatches/ChangeLog @@ -1,11 +1,19 @@ -2018-07-24 Akira Kakuto <kakuto@.fuk.kindai.ac.jp> +2019-05-03 Akira Kakuto <kakuto@w32tex.org> + + Imported TECkit-2.5.9 source tree (teckit) from + https://github.com/silnrsi/teckit/archive/2.5.9.tar.gz. + patch-02-warning, patch-03-warnings,patch-05-static, and + patch patch-06-dont-build-sfconv: Adapted. + patch-04-pragmas: Removed. + +2018-07-24 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Imported TECkit-2.5.8 source tree (teckit) from https://github.com/silnrsi/teckit/archive/2.5.8.tar.gz. patch-02-warning, patch-03-warnings, patch-04-pragmas, patch-05-static, and patch patch-06-dont-build-sfconv: Adapted. -2017-06-27 Akira Kakuto <kakuto@.fuk.kindai.ac.jp> +2017-06-27 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Imported TECkit-2.5.7 source tree (teckit) from https://github.com/silnrsi/teckit/archive/2.5.7.tar.gz. @@ -17,7 +25,7 @@ Remove SFconv directory, contains non-free ConvertUTF.{c,h} Add patch patch-06-dont-build-sfconv to not build sfconv. -2016-12-30 Akira Kakuto <kakuto@.fuk.kindai.ac.jp> +2016-12-30 Akira Kakuto <kakuto@fuk.kindai.ac.jp> Imported TECkit-2.5.6 source tree (teckit) from https://github.com/silnrsi/teckit/archive/2.5.6.tar.gz. diff --git a/Build/source/libs/teckit/TLpatches/TL-Changes b/Build/source/libs/teckit/TLpatches/TL-Changes index 9667ecd4855..f32d8f7e967 100644 --- a/Build/source/libs/teckit/TLpatches/TL-Changes +++ b/Build/source/libs/teckit/TLpatches/TL-Changes @@ -1,5 +1,5 @@ -Changes applied to the TECkit-2.5.8/ tree obtained from: - https://github.com/silnrsi/teckit/archive/2.5.8.tar.gz. +Changes applied to the TECkit-2.5.9/ tree obtained from: + https://github.com/silnrsi/teckit/archive/2.5.9.tar.gz. Removed execute permissions from: installed-top.pc.in diff --git a/Build/source/libs/teckit/TLpatches/patch-02-warning b/Build/source/libs/teckit/TLpatches/patch-02-warning index 05b1fe17a49..8914f63c202 100644 --- a/Build/source/libs/teckit/TLpatches/patch-02-warning +++ b/Build/source/libs/teckit/TLpatches/patch-02-warning @@ -1,9 +1,9 @@ Avoid compiler warning. -diff -ur teckit-2.5.8/source/Compiler.h teckit-src/source/Compiler.h ---- teckit-2.5.8/source/Compiler.h Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Compiler.h Tue Jul 24 07:21:23 2018 -@@ -230,7 +230,7 @@ +diff -ur teckit-2.5.9/source/Compiler.h teckit-src/source/Compiler.h +--- teckit-2.5.9/source/Compiler.h Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Compiler.h Tue Mar 19 07:02:47 2019 +@@ -229,7 +229,7 @@ vector<UInt32> byteClassLines; vector<UInt32> uniClassLines; diff --git a/Build/source/libs/teckit/TLpatches/patch-03-warnings b/Build/source/libs/teckit/TLpatches/patch-03-warnings index 011670adda3..eb36b57ca5b 100644 --- a/Build/source/libs/teckit/TLpatches/patch-03-warnings +++ b/Build/source/libs/teckit/TLpatches/patch-03-warnings @@ -1,9 +1,9 @@ Avoid more compiler warnings. -diff -ur teckit-2.5.8/source/Compiler.cpp teckit-src/source/Compiler.cpp ---- teckit-2.5.8/source/Compiler.cpp Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Compiler.cpp Tue Jul 24 07:23:53 2018 -@@ -189,14 +189,14 @@ +diff -ur teckit-2.5.9/source/Compiler.cpp teckit-src/source/Compiler.cpp +--- teckit-2.5.9/source/Compiler.cpp Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Compiler.cpp Tue Mar 19 07:06:23 2019 +@@ -189,7 +189,7 @@ free(table); } @@ -12,63 +12,11 @@ diff -ur teckit-2.5.8/source/Compiler.cpp teckit-src/source/Compiler.cpp WINAPI TECkit_GetUnicodeName(UInt32 usv) { - const CharName *c = &gUnicodeNames[0]; - while (c->name != 0) - if (c->usv == usv) -- return (char*)c->name; -+ return c->name; - else - ++c; - return NULL; -@@ -2133,7 +2133,7 @@ - cout << " at line " << line << endl; - } - else -- (*errorFunction)(errFuncUserData, (char*)msg, (char*)s, line); -+ (*errorFunction)(errFuncUserData, msg, s, line); - errorState = true; - ++errorCount; - } - -diff -ur teckit-2.5.8/source/Engine.cpp teckit-src/source/Engine.cpp ---- teckit-2.5.8/source/Engine.cpp Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Engine.cpp Tue Jul 24 07:39:17 2018 -@@ -1093,7 +1075,7 @@ - if (matchElems == 0 && allowInsertion == false) - continue; - patternLength = matchElems + READ(rule->postLength); -- pattern = (MatchElem*)(rule + 1); // point past the defined struct for the rule header -+ pattern = (const MatchElem*)(rule + 1); // point past the defined struct for the rule header - direction = 1; - infoLimit = matchElems; - -@@ -2194,7 +2168,7 @@ - status = kStatus_BadMappingVersion; - else { - const Byte* namePtr; -- if (getNamePtrFromTable((Byte*)fh, nameID, namePtr, *nameLength)) { -+ if (getNamePtrFromTable((const Byte*)fh, nameID, namePtr, *nameLength)) { - UInt16 copyBytes = *nameLength < bufferSize ? *nameLength : bufferSize; - if (copyBytes > 0) - memcpy(nameBuffer, namePtr, copyBytes); -diff -ur teckit-2.5.8/source/Engine.h teckit-src/source/Engine.h ---- teckit-2.5.8/source/Engine.h Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Engine.h Tue Jul 24 07:29:14 2018 -@@ -117,7 +117,7 @@ - - UInt32 match(int index, int repeats, int textLoc); - // returns 0 for no match, 1 for match, or kNeedMoreInput/kInvalidChar -- MatchElem* pattern; -+ const MatchElem* pattern; - int patternLength; - int direction; - MatchInfo info[256]; - -diff -ur teckit-2.5.8/source/Public-headers/TECkit_Compiler.h teckit-src/source/Public-headers/TECkit_Compiler.h ---- teckit-2.5.8/source/Public-headers/TECkit_Compiler.h Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Public-headers/TECkit_Compiler.h Tue Jul 24 07:41:00 2018 -@@ -56,7 +59,7 @@ +diff -ur teckit-2.5.9/source/Public-headers/TECkit_Compiler.h teckit-src/source/Public-headers/TECkit_Compiler.h +--- teckit-2.5.9/source/Public-headers/TECkit_Compiler.h Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Public-headers/TECkit_Compiler.h Tue Mar 19 07:31:10 2019 +@@ -55,7 +58,7 @@ #define kCompilerOpts_Compress 0x00000010 /* generate compressed mapping table */ #define kCompilerOpts_XML 0x00000020 /* instead of a compiled binary table, generate an XML representation of the mapping */ @@ -77,7 +25,7 @@ diff -ur teckit-2.5.8/source/Public-headers/TECkit_Compiler.h teckit-src/source/ TECkit_Status WINAPI EXPORTED -@@ -75,7 +78,7 @@ +@@ -74,7 +77,7 @@ TECkit_GetCompilerVersion(); /* new APIs for looking up Unicode names (as NUL-terminated C strings) */ @@ -87,10 +35,9 @@ diff -ur teckit-2.5.8/source/Public-headers/TECkit_Compiler.h teckit-src/source/ TECkit_GetUnicodeName(UInt32 usv); /* returns the Unicode name of usv, if available, else NULL */ - -diff -ur teckit-2.5.8/source/Sample-tools/TECkit_Compile.cpp teckit-src/source/Sample-tools/TECkit_Compile.cpp ---- teckit-2.5.8/source/Sample-tools/TECkit_Compile.cpp Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Sample-tools/TECkit_Compile.cpp Tue Jul 24 07:34:18 2018 +diff -ur teckit-2.5.9/source/Sample-tools/TECkit_Compile.cpp teckit-src/source/Sample-tools/TECkit_Compile.cpp +--- teckit-2.5.9/source/Sample-tools/TECkit_Compile.cpp Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Sample-tools/TECkit_Compile.cpp Tue Mar 19 07:25:19 2019 @@ -24,13 +24,13 @@ #endif diff --git a/Build/source/libs/teckit/TLpatches/patch-04-pragmas b/Build/source/libs/teckit/TLpatches/patch-04-pragmas deleted file mode 100644 index 601f3976e99..00000000000 --- a/Build/source/libs/teckit/TLpatches/patch-04-pragmas +++ /dev/null @@ -1,61 +0,0 @@ - Remove the '#pragma's, they seem to cause problems for MSVC - and are certainly not needed otherwise. - -diff -ur teckit-2.5.8/source/Engine.cpp teckit-src/source/Engine.cpp ---- teckit-2.5.8/source/Engine.cpp Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Engine.cpp Tue Jul 24 07:39:17 2018 -@@ -102,10 +96,6 @@ - #endif - } - --#ifndef __GNUC__ --#pragma mark --- class Stage --- --#endif -- - Stage::Stage() - : oBuffer(0) - , oBufSize(0) -@@ -127,10 +117,6 @@ - return 0; - } - --#ifndef __GNUC__ --#pragma mark --- class Normalizer --- --#endif -- - #include "NormalizationData.c" - - Normalizer::Normalizer(bool compose) -@@ -400,10 +386,6 @@ - return c; - } - --#ifndef __GNUC__ --#pragma mark --- class Pass --- --#endif -- - Pass::Pass(const TableHeader* inTable, Converter* cnv) - : converter(cnv) - , tableHeader(inTable) -@@ -1288,10 +1270,6 @@ - return 0; - } - --#ifndef __GNUC__ --#pragma mark --- class Converter --- --#endif -- - Converter::Converter(const Byte* inTable, UInt32 inTableSize, bool inForward, - UInt16 inForm, UInt16 outForm) - : table(0) -@@ -1942,10 +1920,6 @@ - return true; - } - --#ifndef __GNUC__ --#pragma mark --- Public "C" API functions --- --#endif -- - TECkit_Status - WINAPI - TECkit_CreateConverter( diff --git a/Build/source/libs/teckit/TLpatches/patch-05-static b/Build/source/libs/teckit/TLpatches/patch-05-static index e3a646c5669..1cdb0770244 100644 --- a/Build/source/libs/teckit/TLpatches/patch-05-static +++ b/Build/source/libs/teckit/TLpatches/patch-05-static @@ -1,9 +1,9 @@ For TeX Live we build a static library and not a Dll. -diff -ur teckit-2.5.8/source/Engine.cpp teckit-src/source/Engine.cpp ---- teckit-2.5.8/source/Engine.cpp Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Engine.cpp Tue Jul 24 07:39:17 2018 +diff -ur teckit-2.5.9/source/Engine.cpp teckit-src/source/Engine.cpp +--- teckit-2.5.9/source/Engine.cpp Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Engine.cpp Tue Mar 19 07:29:37 2019 @@ -51,12 +51,6 @@ # define NOSERVICE # define NOMCX @@ -18,10 +18,10 @@ diff -ur teckit-2.5.8/source/Engine.cpp teckit-src/source/Engine.cpp #include "Engine.h" -diff -ur teckit-2.5.8/source/Public-headers/TECkit_Compiler.h teckit-src/source/Public-headers/TECkit_Compiler.h ---- teckit-2.5.8/source/Public-headers/TECkit_Compiler.h Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Public-headers/TECkit_Compiler.h Tue Jul 24 07:41:00 2018 -@@ -30,6 +30,9 @@ +diff -ur teckit-2.5.9/source/Public-headers/TECkit_Compiler.h teckit-src/source/Public-headers/TECkit_Compiler.h +--- teckit-2.5.9/source/Public-headers/TECkit_Compiler.h Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Public-headers/TECkit_Compiler.h Tue Mar 19 07:31:10 2019 +@@ -29,6 +29,9 @@ #ifdef _WIN32 /* MS compiler has predefined _WIN32, so assume Windows target */ #include <windows.h> // apparently just using windef.h fails on VC++6 @@ -32,10 +32,10 @@ diff -ur teckit-2.5.8/source/Public-headers/TECkit_Compiler.h teckit-src/source/ /* not the MS compiler, so try Metrowerks' platform macros */ #ifndef __APPLE__ -diff -ur teckit-2.5.8/source/Public-headers/TECkit_Engine.h teckit-src/source/Public-headers/TECkit_Engine.h ---- teckit-2.5.8/source/Public-headers/TECkit_Engine.h Tue Dec 05 07:20:20 2017 -+++ teckit-src/source/Public-headers/TECkit_Engine.h Tue Jul 24 07:42:14 2018 -@@ -80,6 +80,9 @@ +diff -ur teckit-2.5.9/source/Public-headers/TECkit_Engine.h teckit-src/source/Public-headers/TECkit_Engine.h +--- teckit-2.5.9/source/Public-headers/TECkit_Engine.h Tue Mar 19 00:23:12 2019 ++++ teckit-src/source/Public-headers/TECkit_Engine.h Tue Mar 19 07:32:08 2019 +@@ -79,6 +79,9 @@ #ifdef _WIN32 /* MS compiler has predefined _WIN32, so assume Windows target */ #include <windows.h> diff --git a/Build/source/libs/teckit/TLpatches/patch-06-dont-build-sfconv b/Build/source/libs/teckit/TLpatches/patch-06-dont-build-sfconv index 86288adf28f..7e89efee728 100644 --- a/Build/source/libs/teckit/TLpatches/patch-06-dont-build-sfconv +++ b/Build/source/libs/teckit/TLpatches/patch-06-dont-build-sfconv @@ -1,6 +1,6 @@ -diff -ur teckit-2.5.8/bin/Makefile.am teckit-src/bin/Makefile.am ---- teckit-2.5.8/bin/Makefile.am Tue Dec 05 07:20:20 2017 -+++ teckit-src/bin/Makefile.am Tue Jul 24 07:44:12 2018 +diff -ur teckit-2.5.9/bin/Makefile.am teckit-src/bin/Makefile.am +--- teckit-2.5.9/bin/Makefile.am Tue Mar 19 00:23:12 2019 ++++ teckit-src/bin/Makefile.am Tue Mar 19 07:33:51 2019 @@ -1,6 +1,6 @@ AUTOMAKE_OPTIONS = -Wno-portability @@ -8,3 +8,4 @@ diff -ur teckit-2.5.8/bin/Makefile.am teckit-src/bin/Makefile.am +bin_PROGRAMS = teckit_compile txtconv AM_CPPFLAGS = -I$(top_srcdir)/source/Public-headers + diff --git a/Build/source/libs/teckit/configure b/Build/source/libs/teckit/configure index 2f99f2224e7..d36a68e69fa 100755 --- a/Build/source/libs/teckit/configure +++ b/Build/source/libs/teckit/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.69 for TECkit (TeX Live) 2.5.8. +# Generated by GNU Autoconf 2.69 for TECkit (TeX Live) 2.5.9. # # Report bugs to <tex-k@tug.org>. # @@ -580,8 +580,8 @@ MAKEFLAGS= # Identity of this package. PACKAGE_NAME='TECkit (TeX Live)' PACKAGE_TARNAME='teckit--tex-live-' -PACKAGE_VERSION='2.5.8' -PACKAGE_STRING='TECkit (TeX Live) 2.5.8' +PACKAGE_VERSION='2.5.9' +PACKAGE_STRING='TECkit (TeX Live) 2.5.9' PACKAGE_BUGREPORT='tex-k@tug.org' PACKAGE_URL='' @@ -1306,7 +1306,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures TECkit (TeX Live) 2.5.8 to adapt to many kinds of systems. +\`configure' configures TECkit (TeX Live) 2.5.9 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1377,7 +1377,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of TECkit (TeX Live) 2.5.8:";; + short | recursive ) echo "Configuration of TECkit (TeX Live) 2.5.9:";; esac cat <<\_ACEOF @@ -1486,7 +1486,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -TECkit (TeX Live) configure 2.5.8 +TECkit (TeX Live) configure 2.5.9 generated by GNU Autoconf 2.69 Copyright (C) 2012 Free Software Foundation, Inc. @@ -2109,7 +2109,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by TECkit (TeX Live) $as_me 2.5.8, which was +It was created by TECkit (TeX Live) $as_me 2.5.9, which was generated by GNU Autoconf 2.69. Invocation command line was $ $0 $@ @@ -4033,7 +4033,7 @@ fi # Define the identity of the package. PACKAGE='teckit--tex-live-' - VERSION='2.5.8' + VERSION='2.5.9' cat >>confdefs.h <<_ACEOF @@ -7252,7 +7252,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by TECkit (TeX Live) $as_me 2.5.8, which was +This file was extended by TECkit (TeX Live) $as_me 2.5.9, which was generated by GNU Autoconf 2.69. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7318,7 +7318,7 @@ _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`" ac_cs_version="\\ -TECkit (TeX Live) config.status 2.5.8 +TECkit (TeX Live) config.status 2.5.9 configured by $0, generated by GNU Autoconf 2.69, with options \\"\$ac_cs_config\\" diff --git a/Build/source/libs/teckit/version.ac b/Build/source/libs/teckit/version.ac index d3e184a4194..180308a8998 100644 --- a/Build/source/libs/teckit/version.ac +++ b/Build/source/libs/teckit/version.ac @@ -8,4 +8,4 @@ dnl dnl -------------------------------------------------------- dnl dnl m4-include this file to define the current TECkit version -m4_define([TECkit_version], [2.5.8]) +m4_define([TECkit_version], [2.5.9]) |