Only run the imprecision part if json_int_t is long long, otherwise the imprecision cannot be tested against json_int_t. Also, convert the double value to json_int_t before checking the imprecision, because otherwise the json_int_t is converted to double and the imprecision happens in the "wrong direction".