   Return type of string indexing operator
  Hello.I think need rewrite specification of those functions (scriptstring.cpp)r = engine->RegisterObjectBehaviour("string", asBEHAVE_INDEX, "uint8 &f(uint)", asFUNCTION(StringCharAt), asCALL_CDECL_OBJLAST); assert( r >= 0 );r = engine->RegisterObjectBehaviour("string", asBEHAVE_INDEX, "const uint8 &f(uint) const", asFUNCTION(StringCharAt), asCALL_CDECL_OBJLAST); assert( r >= 0 );tor = engine->RegisterObjectBehaviour("string", asBEHAVE_INDEX, "int8 &f(uint)", asFUNCTION(StringCharAt), asCALL_CDECL_OBJLAST); assert( r >= 0 );r = engine->RegisterObjectBehaviour("string", asBEHAVE_INDEX, "const int8 &f(uint) const", asFUNCTION(StringCharAt), asCALL_CDECL_OBJLAST); assert( r >= 0 );because compiler translates chars as signed values.example:string text;text="шуба"; // russian letters placed in negative valuesif(text[0]=='ш') ... // falseif(text[0]==uint8('ш')) ... // trueif(int8(text[0])=='ш') ... // trueOr maybe it is regulates by local system policies?   
  The compiler should interpret character literals as uint values. You've probably encountered a bug in the library. I'll look into this.Thanks,Andreas   ;  I've checked in the fix for this now. Thanks.   