diff --git a/ext/json/json_encoder.c b/ext/json/json_encoder.c index 39b93b3adc7..11630c9e582 100644 --- a/ext/json/json_encoder.c +++ b/ext/json/json_encoder.c @@ -104,7 +104,7 @@ static inline void php_json_encode_double(smart_str *buf, double d, int options) { size_t len; char num[PHP_JSON_DOUBLE_MAX_LENGTH]; - php_gcvt(d, EG(precision), '.', 'e', &num[0]); + php_gcvt(d, (int)EG(precision), '.', 'e', &num[0]); len = strlen(num); if (options & PHP_JSON_PRESERVE_ZERO_FRACTION && strchr(num, '.') == NULL && len < PHP_JSON_DOUBLE_MAX_LENGTH - 2) { num[len++] = '.'; diff --git a/ext/json/json_parser.tab.c b/ext/json/json_parser.tab.c index 3ddf260e7c8..7c0754a4838 100644 --- a/ext/json/json_parser.tab.c +++ b/ext/json/json_parser.tab.c @@ -1817,7 +1817,7 @@ void php_json_parser_object_init(php_json_parser *parser, zval *object) void php_json_parser_object_update(php_json_parser *parser, zval *object, zval *zkey, zval *zvalue) { char *key = Z_STRVAL_P(zkey); - int key_len = Z_STRLEN_P(zkey); + size_t key_len = Z_STRLEN_P(zkey); if (parser->scanner.options & PHP_JSON_OBJECT_AS_ARRAY) { add_assoc_zval_ex(object, key, key_len, zvalue); diff --git a/ext/json/json_parser.y b/ext/json/json_parser.y index 474602ad341..38d520150d5 100644 --- a/ext/json/json_parser.y +++ b/ext/json/json_parser.y @@ -188,7 +188,7 @@ void php_json_parser_object_init(php_json_parser *parser, zval *object) void php_json_parser_object_update(php_json_parser *parser, zval *object, zval *zkey, zval *zvalue) { char *key = Z_STRVAL_P(zkey); - int key_len = Z_STRLEN_P(zkey); + size_t key_len = Z_STRLEN_P(zkey); if (parser->scanner.options & PHP_JSON_OBJECT_AS_ARRAY) { add_assoc_zval_ex(object, key, key_len, zvalue);