| @@ -159,14 +159,15 @@ int json_parse_double(const char *buf, double *retval) | |||||
| static void sscanf_is_broken_test() | static void sscanf_is_broken_test() | ||||
| { | { | ||||
| int64_t num64; | int64_t num64; | ||||
| int ret_errno, is_int64_min, ret_errno2, is_int64_max; | |||||
| (void)sscanf(" -01234567890123456789012345", "%" SCNd64, &num64); | (void)sscanf(" -01234567890123456789012345", "%" SCNd64, &num64); | ||||
| int ret_errno = errno; | |||||
| int is_int64_min = (num64 == INT64_MIN); | |||||
| ret_errno = errno; | |||||
| is_int64_min = (num64 == INT64_MIN); | |||||
| (void)sscanf(" 01234567890123456789012345", "%" SCNd64, &num64); | (void)sscanf(" 01234567890123456789012345", "%" SCNd64, &num64); | ||||
| int ret_errno2 = errno; | |||||
| int is_int64_max = (num64 == INT64_MAX); | |||||
| ret_errno2 = errno; | |||||
| is_int64_max = (num64 == INT64_MAX); | |||||
| if (ret_errno != ERANGE || !is_int64_min || | if (ret_errno != ERANGE || !is_int64_min || | ||||
| ret_errno2 != ERANGE || !is_int64_max) | ret_errno2 != ERANGE || !is_int64_max) | ||||