From: Máté Kocsis Date: Mon, 27 Apr 2020 11:54:12 +0000 (+0200) Subject: Fix inaccurate func infos X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a6960cfb05f47daf8308f15f100233390734a5a4;p=php Fix inaccurate func infos Closes GH-5472 --- diff --git a/ext/opcache/Optimizer/zend_func_info.c b/ext/opcache/Optimizer/zend_func_info.c index 880e2238d4..81fd90cc2c 100644 --- a/ext/opcache/Optimizer/zend_func_info.c +++ b/ext/opcache/Optimizer/zend_func_info.c @@ -297,8 +297,8 @@ static const func_info_t func_infos[] = { F1("file_get_contents", MAY_BE_FALSE | MAY_BE_STRING), F1("stream_context_create", MAY_BE_RESOURCE), F0("stream_context_set_params", MAY_BE_FALSE | MAY_BE_TRUE), - F1("stream_context_get_params", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), - FN("stream_context_get_options", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), + F1("stream_context_get_params", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), + FN("stream_context_get_options", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), FN("stream_context_get_default", MAY_BE_FALSE | MAY_BE_RESOURCE), FN("stream_context_set_default", MAY_BE_FALSE | MAY_BE_RESOURCE), FN("stream_filter_prepend", MAY_BE_FALSE | MAY_BE_RESOURCE), @@ -312,9 +312,9 @@ static const func_info_t func_infos[] = { F1("stream_socket_pair", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_RESOURCE), #endif F1("stream_get_contents", MAY_BE_FALSE | MAY_BE_STRING), - F1("fgetcsv", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING), + F1("fgetcsv", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING), F1("get_meta_tags", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING), - F1("stream_get_meta_data", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), + F1("stream_get_meta_data", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), F1("stream_get_line", MAY_BE_FALSE | MAY_BE_STRING), F1("stream_get_wrappers", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("stream_get_transports", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), @@ -524,9 +524,9 @@ static const func_info_t func_infos[] = { F1("curl_file_create", MAY_BE_OBJECT), /* ext/mbstring */ - F1("mb_convert_case", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_strtoupper", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_strtolower", MAY_BE_FALSE | MAY_BE_STRING), + F1("mb_convert_case", MAY_BE_STRING), + F1("mb_strtoupper", MAY_BE_STRING), + F1("mb_strtolower", MAY_BE_STRING), F1("mb_language", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), F1("mb_internal_encoding", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), F1("mb_http_input", MAY_BE_FALSE | MAY_BE_STRING| MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), @@ -539,19 +539,19 @@ static const func_info_t func_infos[] = { F1("mb_strrchr", MAY_BE_FALSE | MAY_BE_STRING), F1("mb_stristr", MAY_BE_FALSE | MAY_BE_STRING), F1("mb_strrichr", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_substr", MAY_BE_FALSE | MAY_BE_STRING), + F1("mb_substr", MAY_BE_STRING), F1("mb_strcut", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_strimwidth", MAY_BE_FALSE | MAY_BE_STRING), + F1("mb_strimwidth", MAY_BE_STRING), F1("mb_convert_encoding", MAY_BE_FALSE | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_ANY), F1("mb_detect_encoding", MAY_BE_FALSE | MAY_BE_STRING), F1("mb_list_encodings", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), - F1("mb_encoding_aliases", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), - F1("mb_convert_kana", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_encode_mimeheader", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_decode_mimeheader", MAY_BE_FALSE | MAY_BE_STRING), + F1("mb_encoding_aliases", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), + F1("mb_convert_kana", MAY_BE_STRING), + F1("mb_encode_mimeheader", MAY_BE_STRING), + F1("mb_decode_mimeheader", MAY_BE_STRING), F1("mb_convert_variables", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_encode_numericentity", MAY_BE_FALSE | MAY_BE_STRING), - F1("mb_decode_numericentity", MAY_BE_FALSE | MAY_BE_STRING), + F1("mb_encode_numericentity", MAY_BE_STRING), + F1("mb_decode_numericentity", MAY_BE_STRING), F1("mb_get_info", MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), F1("mb_regex_encoding", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), @@ -579,7 +579,7 @@ static const func_info_t func_infos[] = { /* ext/xml */ F1("xml_error_string", MAY_BE_NULL | MAY_BE_STRING), - F1("xml_parser_get_option", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_STRING), + F1("xml_parser_get_option", MAY_BE_FALSE | MAY_BE_LONG | MAY_BE_STRING), F1("utf8_encode", MAY_BE_STRING), F1("utf8_decode", MAY_BE_STRING), @@ -612,8 +612,8 @@ static const func_info_t func_infos[] = { F1("hash_copy", MAY_BE_OBJECT), F1("hash_algos", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("hash_pbkdf2", MAY_BE_STRING), - F1("mhash_keygen_s2k", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), - F1("mhash_get_hash_name", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), + F1("mhash_keygen_s2k", MAY_BE_FALSE | MAY_BE_STRING), + F1("mhash_get_hash_name", MAY_BE_FALSE | MAY_BE_STRING), F1("mhash", MAY_BE_FALSE | MAY_BE_FALSE | MAY_BE_STRING), /* ext/sodium */ @@ -650,11 +650,11 @@ static const func_info_t func_infos[] = { F1("sodium_crypto_scalarmult", MAY_BE_STRING), F1("sodium_crypto_kx_seed_keypair", MAY_BE_STRING), F1("sodium_crypto_kx_keypair", MAY_BE_STRING), - F1("sodium_crypto_kx_secretkey", MAY_BE_NULL | MAY_BE_STRING), - F1("sodium_crypto_kx_publickey", MAY_BE_NULL | MAY_BE_STRING), - F1("sodium_crypto_kx_client_session_keys", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), - F1("sodium_crypto_kx_server_session_keys", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), - F1("sodium_crypto_auth", MAY_BE_NULL | MAY_BE_STRING), + F1("sodium_crypto_kx_secretkey", MAY_BE_STRING), + F1("sodium_crypto_kx_publickey", MAY_BE_STRING), + F1("sodium_crypto_kx_client_session_keys", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), + F1("sodium_crypto_kx_server_session_keys", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), + F1("sodium_crypto_auth", MAY_BE_STRING), F1("sodium_crypto_aead_aes256gcm_keygen", MAY_BE_STRING), F1("sodium_crypto_auth_keygen", MAY_BE_STRING), F1("sodium_crypto_generichash_keygen", MAY_BE_STRING),