basic/json: silence gcc warning about limited range of data type
With gcc-7.1.1-3.fc26.aarch64: ../src/basic/json.c: In function ‘json_format’: ../src/basic/json.c:1409:40: warning: comparison is always true due to limited range of data type [-Wtype-limits] if (*q >= 0 && *q < ' ') ^~ ../src/basic/json.c: In function ‘inc_lines_columns’: ../src/basic/json.c:1762:31: warning: comparison is always true due to limited range of data type [-Wtype-limits] } else if (*s >= 0 && *s < 127) /* Process ASCII chars quickly */ ^~ Cast to (signed char) silences the warning, but a cast to (int) for some reason doesn't.
This commit is contained in:
parent
cd5a29ce98
commit
df7f9e0b2c
|
@ -1406,7 +1406,7 @@ static int json_format(FILE *f, JsonVariant *v, unsigned flags, const char *pref
|
||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (*q >= 0 && *q < ' ')
|
if ((signed char) *q >= 0 && *q < ' ')
|
||||||
fprintf(f, "\\u%04x", *q);
|
fprintf(f, "\\u%04x", *q);
|
||||||
else
|
else
|
||||||
fputc(*q, f);
|
fputc(*q, f);
|
||||||
|
@ -1759,7 +1759,7 @@ static void inc_lines_columns(unsigned *line, unsigned *column, const char *s, s
|
||||||
if (*s == '\n') {
|
if (*s == '\n') {
|
||||||
(*line)++;
|
(*line)++;
|
||||||
*column = 1;
|
*column = 1;
|
||||||
} else if (*s >= 0 && *s < 127) /* Process ASCII chars quickly */
|
} else if ((signed char) *s >= 0 && *s < 127) /* Process ASCII chars quickly */
|
||||||
(*column)++;
|
(*column)++;
|
||||||
else {
|
else {
|
||||||
int w;
|
int w;
|
||||||
|
|
Loading…
Reference in a new issue