diff --git a/native/jni/Android.mk b/native/jni/Android.mk index 893a60dde..b9fc414f8 100644 --- a/native/jni/Android.mk +++ b/native/jni/Android.mk @@ -29,7 +29,7 @@ LOCAL_C_INCLUDES += $(LOCAL_PATH)/$(LATIN_IME_SRC_DIR) LOCAL_CFLAGS += -Werror -Wall -Wextra -Weffc++ -Wformat=2 -Wcast-qual -Wcast-align \ -Wwrite-strings -Wfloat-equal -Wpointer-arith -Winit-self -Wredundant-decls \ - -Woverloaded-virtual -Wsign-promo -Wno-system-headers + -Woverloaded-virtual -Wsign-promo -Wno-system-headers -Wno-format-nonliteral # To suppress compiler warnings for unused variables/functions used for debug features etc. LOCAL_CFLAGS += -Wno-unused-parameter -Wno-unused-function diff --git a/native/jni/src/defines.h b/native/jni/src/defines.h index 10b930e4f..1531b6cbe 100644 --- a/native/jni/src/defines.h +++ b/native/jni/src/defines.h @@ -17,6 +17,8 @@ #ifndef LATINIME_DEFINES_H #define LATINIME_DEFINES_H +#include + #ifdef __GNUC__ #define AK_FORCE_INLINE __attribute__((always_inline)) __inline__ #else // __GNUC__ @@ -51,7 +53,7 @@ AK_FORCE_INLINE static int intArrayToCharArray(const int *const source, const in int si = 0; int di = 0; while (si < sourceSize && di < destLimit && 0 != source[si]) { - const int codePoint = source[si++]; + const uint32_t codePoint = static_cast(source[si++]); if (codePoint < 0x7F) { // One byte dest[di++] = codePoint; } else if (codePoint < 0x7FF) { // Two bytes