From: Tyson Andre Date: Wed, 4 Dec 2019 14:50:24 +0000 (-0500) Subject: Remove opcache signatures duplicating reflection X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=96d2b69653fc304f3445e1cb8b65e4896f9277e2;p=php Remove opcache signatures duplicating reflection None of these are refcounted. --- diff --git a/ext/opcache/Optimizer/zend_func_info.c b/ext/opcache/Optimizer/zend_func_info.c index 1ab821f2b4..77ae4fc6a2 100644 --- a/ext/opcache/Optimizer/zend_func_info.c +++ b/ext/opcache/Optimizer/zend_func_info.c @@ -91,8 +91,6 @@ static const func_info_t func_infos[] = { F1("zend_version", MAY_BE_STRING), FN("func_get_arg", UNKNOWN_INFO), F1("func_get_args", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_ANY), - F0("strncmp", MAY_BE_FALSE | MAY_BE_LONG), - F0("strncasecmp", MAY_BE_FALSE | MAY_BE_LONG), FN("get_class", MAY_BE_FALSE | MAY_BE_STRING), FN("get_called_class", MAY_BE_FALSE | MAY_BE_STRING), FN("get_parent_class", MAY_BE_FALSE | MAY_BE_STRING), @@ -121,12 +119,10 @@ static const func_info_t func_infos[] = { F1("hex2bin", MAY_BE_FALSE | MAY_BE_STRING), #if HAVE_NANOSLEEP F1("time_nanosleep", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG), - F0("time_sleep_until", MAY_BE_FALSE | MAY_BE_TRUE), #endif #if HAVE_STRPTIME F1("strptime", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING), #endif - F0("flush", MAY_BE_NULL), F1("wordwrap", MAY_BE_STRING), F1("htmlspecialchars", MAY_BE_STRING), F1("htmlentities", MAY_BE_STRING), @@ -150,16 +146,9 @@ static const func_info_t func_infos[] = { F1("php_uname", MAY_BE_STRING), F1("php_ini_scanned_files", MAY_BE_FALSE | MAY_BE_STRING), F1("php_ini_loaded_file", MAY_BE_FALSE | MAY_BE_STRING), - F0("substr_count", MAY_BE_FALSE | MAY_BE_LONG), - F0("strspn", MAY_BE_FALSE | MAY_BE_LONG), - F0("strcspn", MAY_BE_FALSE | MAY_BE_LONG), F1("strtok", MAY_BE_FALSE | MAY_BE_STRING), FN("strtoupper", MAY_BE_STRING), FN("strtolower", MAY_BE_STRING), - F0("strpos", MAY_BE_FALSE | MAY_BE_LONG), - F0("stripos", MAY_BE_FALSE | MAY_BE_LONG), - F0("strrpos", MAY_BE_FALSE | MAY_BE_LONG), - F0("strripos", MAY_BE_FALSE | MAY_BE_LONG), F1("strrev", MAY_BE_STRING), F1("hebrev", MAY_BE_STRING), F1("hebrevc", MAY_BE_STRING), @@ -176,7 +165,6 @@ static const func_info_t func_infos[] = { F1("str_word_count", MAY_BE_LONG | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("str_split", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("strpbrk", MAY_BE_FALSE | MAY_BE_STRING), - F0("substr_compare", MAY_BE_FALSE | MAY_BE_LONG), #ifdef HAVE_STRFMON F1("money_format", MAY_BE_FALSE | MAY_BE_STRING), #endif @@ -208,7 +196,6 @@ static const func_info_t func_infos[] = { F1("nl_langinfo", MAY_BE_FALSE | MAY_BE_STRING), #endif F1("soundex", MAY_BE_FALSE | MAY_BE_STRING), - F0("levenshtein", MAY_BE_LONG), F1("chr", MAY_BE_STRING), F1("str_getcsv", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING), FN("str_pad", MAY_BE_STRING), @@ -229,9 +216,6 @@ static const func_info_t func_infos[] = { F1("http_build_query", MAY_BE_FALSE | MAY_BE_STRING), #if defined(HAVE_SYMLINK) || defined(PHP_WIN32) F1("readlink", MAY_BE_FALSE | MAY_BE_STRING), - F0("linkinfo", MAY_BE_FALSE | MAY_BE_LONG), - F0("symlink", MAY_BE_FALSE | MAY_BE_TRUE), - F0("link", MAY_BE_FALSE | MAY_BE_TRUE), #endif F0("unlink", MAY_BE_FALSE | MAY_BE_TRUE), F1("exec", MAY_BE_FALSE | MAY_BE_STRING), @@ -242,74 +226,39 @@ static const func_info_t func_infos[] = { F1("shell_exec", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), #ifdef PHP_CAN_SUPPORT_PROC_OPEN F1("proc_open", MAY_BE_FALSE | MAY_BE_RESOURCE), - F0("proc_terminate", MAY_BE_FALSE | MAY_BE_TRUE), F1("proc_get_status", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING), #endif #ifdef HAVE_NICE F0("proc_nice", MAY_BE_FALSE | MAY_BE_TRUE), #endif F1("random_bytes", MAY_BE_STRING), - F1("random_int", MAY_BE_LONG), - F0("srand", MAY_BE_NULL), - F0("mt_srand", MAY_BE_NULL), - F0("mt_getrandmax", MAY_BE_LONG), -#if HAVE_GETSERVBYNAME - F0("getservbyname", MAY_BE_FALSE | MAY_BE_LONG), -#endif #if HAVE_GETSERVBYPORT F1("getservbyport", MAY_BE_FALSE | MAY_BE_STRING), #endif -#if HAVE_GETPROTOBYNAME - F0("getprotobyname", MAY_BE_FALSE | MAY_BE_LONG), -#endif #if HAVE_GETPROTOBYNUMBER F1("getprotobynumber", MAY_BE_FALSE | MAY_BE_STRING), #endif - F0("getmyuid", MAY_BE_FALSE | MAY_BE_LONG), - F0("getmygid", MAY_BE_FALSE | MAY_BE_LONG), - F0("getmypid", MAY_BE_FALSE | MAY_BE_LONG), - F0("getmyinode", MAY_BE_FALSE | MAY_BE_LONG), F1("base64_decode", MAY_BE_FALSE | MAY_BE_STRING), F1("base64_encode", MAY_BE_STRING), F1("password_hash", MAY_BE_NULL | MAY_BE_STRING), F1("password_get_info", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), - F0("password_needs_rehash", MAY_BE_FALSE | MAY_BE_TRUE), - F0("password_verify", MAY_BE_FALSE | MAY_BE_TRUE), F1("convert_uuencode", MAY_BE_FALSE | MAY_BE_STRING), F1("convert_uudecode", MAY_BE_FALSE | MAY_BE_STRING), - F0("abs", MAY_BE_LONG | MAY_BE_DOUBLE), - F0("ceil", MAY_BE_DOUBLE), - F0("floor", MAY_BE_DOUBLE), - F0("expm1", MAY_BE_DOUBLE), - F0("log1p", MAY_BE_DOUBLE), F1("pow", MAY_BE_NULL | MAY_BE_LONG | MAY_BE_DOUBLE | MAY_BE_OBJECT), - F0("exp", MAY_BE_DOUBLE), - F0("log", MAY_BE_FALSE | MAY_BE_DOUBLE), - F0("log10", MAY_BE_DOUBLE), - F0("sqrt", MAY_BE_DOUBLE), - F0("hypot", MAY_BE_DOUBLE), - F0("deg2rad", MAY_BE_DOUBLE), - F0("rad2deg", MAY_BE_DOUBLE), - F0("bindec", MAY_BE_LONG | MAY_BE_DOUBLE), - F0("hexdec", MAY_BE_LONG | MAY_BE_DOUBLE), - F0("octdec", MAY_BE_LONG | MAY_BE_DOUBLE), F1("decbin", MAY_BE_STRING), F1("decoct", MAY_BE_STRING), F1("dechex", MAY_BE_STRING), F1("base_convert", MAY_BE_STRING), F1("number_format", MAY_BE_STRING), - F0("fmod", MAY_BE_DOUBLE), #ifdef HAVE_INET_NTOP F1("inet_ntop", MAY_BE_FALSE | MAY_BE_STRING), #endif #ifdef HAVE_INET_PTON F1("inet_pton", MAY_BE_FALSE | MAY_BE_STRING), #endif - F0("ip2long", MAY_BE_FALSE | MAY_BE_LONG), F1("long2ip", MAY_BE_FALSE | MAY_BE_STRING), F1("getenv", MAY_BE_FALSE | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING), #ifdef HAVE_PUTENV - F0("putenv", MAY_BE_FALSE | MAY_BE_TRUE), #endif F1("getopt", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), #ifdef HAVE_GETLOADAVG @@ -332,7 +281,6 @@ static const func_info_t func_infos[] = { F1("get_cfg_var", MAY_BE_FALSE | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), F0("get_magic_quotes_gpc", MAY_BE_FALSE), F0("get_magic_quotes_runtime", MAY_BE_FALSE), - F0("error_log", MAY_BE_FALSE | MAY_BE_TRUE), F1("error_get_last", MAY_BE_NULL | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING), FN("call_user_func", UNKNOWN_INFO), FN("call_user_func_array", UNKNOWN_INFO), @@ -349,7 +297,6 @@ static const func_info_t func_infos[] = { F0("memory_get_usage", MAY_BE_FALSE | MAY_BE_LONG), F0("memory_get_peak_usage", MAY_BE_FALSE | MAY_BE_LONG), F0("register_shutdown_function", MAY_BE_NULL | MAY_BE_FALSE), - F0("unregister_tick_function", MAY_BE_NULL), F1("highlight_file", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), F1("show_source", MAY_BE_FALSE | MAY_BE_STRING), F1("highlight_string", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), @@ -358,21 +305,15 @@ static const func_info_t func_infos[] = { F1("ini_get_all", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), FN("ini_set", MAY_BE_FALSE | MAY_BE_STRING), F1("ini_alter", MAY_BE_FALSE | MAY_BE_STRING), - F0("ini_restore", MAY_BE_NULL), F1("get_include_path", MAY_BE_FALSE | MAY_BE_STRING), F1("set_include_path", MAY_BE_FALSE | MAY_BE_STRING), - F0("restore_include_path", MAY_BE_NULL), F1("headers_list", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F0("http_response_code", MAY_BE_FALSE | MAY_BE_LONG), - F0("connection_aborted", MAY_BE_LONG), - F0("connection_status", MAY_BE_LONG), - F0("ignore_user_abort", MAY_BE_LONG), F1("parse_ini_file", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_DOUBLE | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), F1("parse_ini_string", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_NULL | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_DOUBLE | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), #if ZEND_DEBUG F1("config_get_hash", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), #endif - F0("move_uploaded_file", MAY_BE_FALSE | MAY_BE_TRUE), F1("gethostbyaddr", MAY_BE_FALSE | MAY_BE_STRING), F1("gethostbyname", MAY_BE_STRING), F1("gethostbynamel", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), @@ -380,11 +321,7 @@ static const func_info_t func_infos[] = { F1("gethostname", MAY_BE_FALSE | MAY_BE_STRING), #endif #if defined(PHP_WIN32) || HAVE_DNS_SEARCH_FUNC - F0("dns_check_record", MAY_BE_FALSE | MAY_BE_TRUE), - F0("checkdnsrr", MAY_BE_FALSE | MAY_BE_TRUE), # if defined(PHP_WIN32) || HAVE_FULL_DNS_FUNCS - F0("dns_get_mx", MAY_BE_FALSE | MAY_BE_TRUE), - F0("getmxrr", MAY_BE_FALSE | MAY_BE_TRUE), F1("dns_get_record", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_ARRAY), # endif #endif @@ -485,7 +422,6 @@ static const func_info_t func_infos[] = { F1("get_browser", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_OBJECT | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ANY), F1("crypt", MAY_BE_STRING), FN("opendir", MAY_BE_FALSE | MAY_BE_RESOURCE), - F0("chdir", MAY_BE_FALSE | MAY_BE_TRUE), #if defined(HAVE_CHROOT) && !defined(ZTS) && ENABLE_CHROOT_FUNC F0("chroot", MAY_BE_FALSE | MAY_BE_TRUE), #endif @@ -496,38 +432,11 @@ static const func_info_t func_infos[] = { #ifdef HAVE_GLOB F1("glob", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), #endif - F0("fileatime", MAY_BE_FALSE | MAY_BE_LONG), - F0("filectime", MAY_BE_FALSE | MAY_BE_LONG), - F0("filegroup", MAY_BE_FALSE | MAY_BE_LONG), - F0("fileinode", MAY_BE_FALSE | MAY_BE_LONG), - F0("filemtime", MAY_BE_FALSE | MAY_BE_LONG), - F0("fileowner", MAY_BE_FALSE | MAY_BE_LONG), - F0("fileperms", MAY_BE_FALSE | MAY_BE_LONG), - F0("filesize", MAY_BE_FALSE | MAY_BE_LONG), F1("filetype", MAY_BE_FALSE | MAY_BE_STRING), - F0("file_exists", MAY_BE_FALSE | MAY_BE_TRUE), F1("stat", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING), F1("lstat", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING), - F0("chown", MAY_BE_FALSE | MAY_BE_TRUE), - F0("chgrp", MAY_BE_FALSE | MAY_BE_TRUE), -#if HAVE_LCHOWN - F0("lchown", MAY_BE_FALSE | MAY_BE_TRUE), -#endif -#if HAVE_LCHOWN - F0("lchgrp", MAY_BE_FALSE | MAY_BE_TRUE), -#endif - F0("chmod", MAY_BE_FALSE | MAY_BE_TRUE), -#if HAVE_UTIME - F0("touch", MAY_BE_FALSE | MAY_BE_TRUE), -#endif - F0("clearstatcache", MAY_BE_NULL), - F0("disk_total_space", MAY_BE_FALSE | MAY_BE_DOUBLE), - F0("disk_free_space", MAY_BE_FALSE | MAY_BE_DOUBLE), - F0("diskfreespace", MAY_BE_FALSE | MAY_BE_DOUBLE), F0("realpath_cache_size", MAY_BE_LONG), F1("realpath_cache_get", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_ARRAY), - F0("mail", MAY_BE_FALSE | MAY_BE_TRUE), - F0("ezmlm_hash", MAY_BE_LONG), #ifdef HAVE_SYSLOG_H F0("syslog", MAY_BE_TRUE), F0("closelog", MAY_BE_TRUE), @@ -535,7 +444,6 @@ static const func_info_t func_infos[] = { F1("metaphone", MAY_BE_FALSE | MAY_BE_STRING), F1("ob_get_flush", MAY_BE_FALSE | MAY_BE_STRING), F1("ob_get_clean", MAY_BE_FALSE | MAY_BE_STRING), - F0("ob_get_length", MAY_BE_FALSE | MAY_BE_LONG), F1("ob_get_status", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_LONG | MAY_BE_ARRAY_OF_STRING | MAY_BE_ARRAY_OF_ARRAY), FN("ob_get_contents", MAY_BE_FALSE | MAY_BE_STRING), F1("ob_list_handlers", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), @@ -598,8 +506,6 @@ static const func_info_t func_infos[] = { F1("array_udiff_assoc", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), F1("array_diff_uassoc", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), F1("array_udiff_uassoc", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), - F0("array_sum", MAY_BE_LONG | MAY_BE_DOUBLE), - F0("array_product", MAY_BE_LONG | MAY_BE_DOUBLE), F1("array_filter", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), FN("array_map", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), F1("array_chunk", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_REF | MAY_BE_ARRAY_OF_ANY), @@ -620,12 +526,8 @@ static const func_info_t func_infos[] = { F1("sys_get_temp_dir", MAY_BE_STRING), /* ext/date */ - F0("strtotime", MAY_BE_FALSE | MAY_BE_LONG), F1("date", MAY_BE_STRING), - F0("idate", MAY_BE_FALSE | MAY_BE_LONG), F1("gmdate", MAY_BE_STRING), - F0("mktime", MAY_BE_FALSE | MAY_BE_LONG), - F0("gmmktime", MAY_BE_FALSE | MAY_BE_LONG), F1("strftime", MAY_BE_FALSE | MAY_BE_STRING), F1("gmstrftime", MAY_BE_FALSE | MAY_BE_STRING), F1("localtime", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_LONG), @@ -648,7 +550,6 @@ static const func_info_t func_infos[] = { FN("date_date_set", MAY_BE_OBJECT), FN("date_isodate_set", MAY_BE_OBJECT), FN("date_timestamp_set", MAY_BE_OBJECT), - F0("date_timestamp_get", MAY_BE_FALSE | MAY_BE_LONG), F1("timezone_open", MAY_BE_FALSE | MAY_BE_OBJECT), F1("timezone_name_get", MAY_BE_STRING), F1("timezone_name_from_abbr", MAY_BE_FALSE | MAY_BE_STRING), @@ -665,7 +566,6 @@ static const func_info_t func_infos[] = { F1("date_sun_info", MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_STRING | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_LONG), /* ext/preg */ - F0("preg_match", MAY_BE_FALSE | MAY_BE_LONG), F0("preg_match_all", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_LONG), FN("preg_replace", MAY_BE_NULL | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_STRING), FN("preg_replace_callback", MAY_BE_NULL | MAY_BE_STRING | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_STRING), @@ -802,22 +702,14 @@ static const func_info_t func_infos[] = { F1("mb_http_output", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), F1("mb_detect_order", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("mb_substitute_character", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_LONG | MAY_BE_STRING), - F0("mb_parse_str", MAY_BE_FALSE | MAY_BE_TRUE), F1("mb_output_handler", MAY_BE_STRING), F1("mb_preferred_mime_name", MAY_BE_FALSE | MAY_BE_STRING), - F0("mb_strlen", MAY_BE_FALSE | MAY_BE_LONG), - F0("mb_strpos", MAY_BE_FALSE | MAY_BE_LONG), - F0("mb_strrpos", MAY_BE_FALSE | MAY_BE_LONG), - F0("mb_stripos", MAY_BE_FALSE | MAY_BE_LONG), - F0("mb_strripos", MAY_BE_FALSE | MAY_BE_LONG), F1("mb_strstr", MAY_BE_FALSE | MAY_BE_STRING), 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), - F0("mb_substr_count", MAY_BE_FALSE | MAY_BE_LONG), F1("mb_substr", MAY_BE_FALSE | MAY_BE_STRING), F1("mb_strcut", MAY_BE_FALSE | MAY_BE_STRING), - F0("mb_strwidth", MAY_BE_FALSE | MAY_BE_LONG), F1("mb_strimwidth", MAY_BE_FALSE | 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), @@ -829,23 +721,17 @@ static const func_info_t func_infos[] = { 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), - F0("mb_send_mail", MAY_BE_FALSE | MAY_BE_TRUE), 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), - F0("mb_check_encoding", MAY_BE_FALSE | MAY_BE_TRUE), F1("mb_regex_encoding", MAY_BE_FALSE | MAY_BE_TRUE | MAY_BE_STRING), F1("mb_regex_set_options", MAY_BE_STRING), - F0("mb_ereg", MAY_BE_FALSE | MAY_BE_LONG), - F0("mb_eregi", MAY_BE_FALSE | MAY_BE_LONG), F1("mb_ereg_replace", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), F1("mb_eregi_replace", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), F1("mb_ereg_replace_callback", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_STRING), F1("mb_split", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), - F0("mb_ereg_match", MAY_BE_FALSE | MAY_BE_TRUE), F1("mb_ereg_search_pos", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_LONG), F1("mb_ereg_search_regs", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_STRING), F1("mb_ereg_search_getregs", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_FALSE | MAY_BE_ARRAY_OF_TRUE | MAY_BE_ARRAY_OF_STRING), - F0("mb_ereg_search_getpos", MAY_BE_LONG), /* ext/iconv */ F1("iconv", MAY_BE_FALSE | MAY_BE_STRING), @@ -876,9 +762,6 @@ static const func_info_t func_infos[] = { F1("gzgets", MAY_BE_FALSE | MAY_BE_STRING), F1("gzread", MAY_BE_FALSE | MAY_BE_STRING), F1("gzopen", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_RESOURCE), - F0("gztell", MAY_BE_FALSE | MAY_BE_LONG), - F0("gzwrite", MAY_BE_FALSE | MAY_BE_LONG), - F0("gzputs", MAY_BE_FALSE | MAY_BE_LONG), F1("gzfile", MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_OF_STRING), F1("gzcompress", MAY_BE_FALSE | MAY_BE_STRING), F1("gzuncompress", MAY_BE_FALSE | MAY_BE_STRING), @@ -996,8 +879,6 @@ static const func_info_t func_infos[] = { F1("session_create_id", MAY_BE_FALSE | MAY_BE_STRING), F1("session_cache_limiter", MAY_BE_FALSE | MAY_BE_STRING), F1("session_encode", MAY_BE_FALSE | MAY_BE_STRING), - F0("session_gc", MAY_BE_FALSE | MAY_BE_LONG), - F0("session_abort", MAY_BE_FALSE | MAY_BE_TRUE), /* ext/pgsql */ F1("pg_connect", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_RESOURCE), @@ -1104,7 +985,6 @@ static const func_info_t func_infos[] = { F1("exif_thumbnail", MAY_BE_FALSE | MAY_BE_STRING), /* ext/filter */ - F0("filter_has_var", MAY_BE_FALSE | MAY_BE_TRUE), FN("filter_input", UNKNOWN_INFO), FN("filter_var", UNKNOWN_INFO), F1("filter_input_array", MAY_BE_NULL | MAY_BE_FALSE | MAY_BE_ARRAY | MAY_BE_ARRAY_KEY_ANY | MAY_BE_ARRAY_OF_ANY),