Avoid more compiler warnings. diff -ur teckit-2.5.6.orig/source/Compiler.cpp teckit-2.5.6/source/Compiler.cpp --- teckit-2.5.6.orig/source/Compiler.cpp Tue May 31 05:37:08 2016 +++ teckit-2.5.6/source/Compiler.cpp Fri Dec 30 18:04:55 2016 @@ -189,14 +189,14 @@ free(table); } -char* +const char* 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.6.orig/source/Engine.cpp teckit-2.5.6/source/Engine.cpp --- teckit-2.5.6.orig/source/Engine.cpp Tue May 31 05:37:08 2016 +++ teckit-2.5.6/source/Engine.cpp Fri Dec 30 18:18:57 2016 @@ -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.6.orig/source/Engine.h teckit-2.5.6/source/Engine.h --- teckit-2.5.6.orig/source/Engine.h Tue May 31 05:37:08 2016 +++ teckit-2.5.6/source/Engine.h Fri Dec 30 18:09:51 2016 @@ -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.6.orig/source/Public-headers/TECkit_Compiler.h teckit-2.5.6/source/Public-headers/TECkit_Compiler.h --- teckit-2.5.6.orig/source/Public-headers/TECkit_Compiler.h Tue May 31 05:37:08 2016 +++ teckit-2.5.6/source/Public-headers/TECkit_Compiler.h Fri Dec 30 18:21:02 2016 @@ -56,7 +59,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 */ -typedef void (CALLBACK *TECkit_ErrorFn)(void* userData, char* msg, char* param, UInt32 line); +typedef void (CALLBACK *TECkit_ErrorFn)(void* userData, const char* msg, const char* param, UInt32 line); TECkit_Status WINAPI EXPORTED @@ -75,7 +78,7 @@ TECkit_GetCompilerVersion(); /* new APIs for looking up Unicode names (as NUL-terminated C strings) */ -char* +const char* WINAPI EXPORTED TECkit_GetUnicodeName(UInt32 usv); /* returns the Unicode name of usv, if available, else NULL */ diff -ur teckit-2.5.6.orig/source/Sample-tools/TECkit_Compile.cpp teckit-2.5.6/source/Sample-tools/TECkit_Compile.cpp --- teckit-2.5.6.orig/source/Sample-tools/TECkit_Compile.cpp Tue May 31 05:37:08 2016 +++ teckit-2.5.6/source/Sample-tools/TECkit_Compile.cpp Fri Dec 30 18:14:53 2016 @@ -24,13 +24,13 @@ #endif extern "C" { - static void CALLBACK errFunc(void* userData, char* msg, char* param, UInt32 line); + static void CALLBACK errFunc(void* userData, const char* msg, const char* param, UInt32 line); }; static void CALLBACK -errFunc(void* /*userData*/, char* msg, char* param, UInt32 line) +errFunc(void* /*userData*/, const char* msg, const char* param, UInt32 line) { fprintf(stderr, "%s", msg); if (param != 0)