From: krakjoe <joe.watkins@live.co.uk> Date: Sun, 22 Dec 2013 13:15:40 +0000 (+0000) Subject: Merge branch 'PHP-5.6' X-Git-Tag: PRE_PHPNG_MERGE~353^2~114 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=621862a1927592e68c4b6b69f56bf145cc851e86;p=php Merge branch 'PHP-5.6' * PHP-5.6: stop warnings from unused opcode map - BFN Conflicts: NEWS Zend/zend_vm_opcodes.h --- 621862a1927592e68c4b6b69f56bf145cc851e86 diff --cc NEWS index a1fa83c231,1f971a0223..51361215cb --- a/NEWS +++ b/NEWS @@@ -1,10 -1,164 +1,77 @@@ PHP NEWS ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||| + <<<<<<< HEAD +?? ??? 20??, PHP 5.7.0 ++======= ++<<<<<<< HEAD + ?? ??? 20??, PHP 5.6.0 + ======= + ?? ??? 2013, PHP 5.5.8 + + - Core: + . Disallowed JMP into a finally block. (Laruence) + . Added validation of class names in the autoload process. (Dmitry) + . Fixed invalid C code in zend_strtod.c. (Lior Kaplan) + . Fixed bug #66041 (list() fails to unpack yielded ArrayAccess object). + (Nikita) + . Fixed bug #65764 (generators/throw_rethrow FAIL with + ZEND_COMPILE_EXTENDED_INFO). (Nikita) + . Fixed bug #61645 (fopen and O_NONBLOCK). (Mike) + . Fixed bug #66218 (zend_register_functions breaks reflection). (Remi) + + - Date: + . Fixed bug #66060 (Heap buffer over-read in DateInterval). (Remi) + . Fixed bug #65768 (DateTimeImmutable::diff does not work). (Nikita Nefedov) + + - DOM: + . Fixed bug #65196 (Passing DOMDocumentFragment to DOMDocument::saveHTML() + Produces invalid Markup). (Mike) + + - Exif: + . Fixed bug #65873 (Integer overflow in exif_read_data()). (Stas) + + - Filter: + . Fixed bug #66229 (128.0.0.0/16 isn't reserved any longer). (Adam) + + - GD: + . Fixed bug #64405 (Use freetype-config for determining freetype2 dir(s)). + (Adam) + + - PDO_odbc: + . Fixed bug #66311 (Stack smashing protection kills PDO/ODBC queries). + (michael at orlitzky dot com) + + - MySQLi: + . Fixed bug #65486 (mysqli_poll() is broken on win x64). (Anatol) + + - OPCache: + . Fixed reavlidate_path=1 behavior to avoid caching of symlinks values. + (Dmitry) + + - SNMP: + . Fixed SNMP_ERR_TOOBIG handling for bulk walk operations. (Boris Lytochkin) + + - SOAP + . Fixed bug #66112 (Use after free condition in SOAP extension). + (martin dot koegler at brz dot gv dot at) + + - Sockets: + . Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined). (Felipe) + + - XSL + . Fixed bug #49634 (Segfault throwing an exception in a XSL registered + function). (Mike) + + - ZIP: + . Fixed Bug #66321 (ZipArchive::open() ze_obj->filename_len not real). (Remi) + + 12 Dec 2013, PHP 5.5.7 + >>>>>>> PHP-5.5 ++>>>>>>> PHP-5.6 -- CLI server: - . Added some MIME types to the CLI web server. (Chris Jones) - -- Core: - . Improved IS_VAR operands fetching. (Laruence, Dmitry) - . Implemented internal operator overloading - (RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita) - . Made calls from incompatible context issue an E_DEPRECATED warning instead - of E_STRICT (phase 1 of RFC: https://wiki.php.net/rfc/incompat_ctx). - (Gustavo) - . Uploads equal or greater than 2GB in size are now accepted. - (Ralf Lang, Mike) - . Reduced POST data memory usage by 200-300%. Removed INI setting - always_populate_raw_post_data and the $HTTP_RAW_POST_DATA global - variable. (Mike) - . Implemented dedicated syntax for variadic functions - (RFC: https://wiki.php.net/rfc/variadics). (Nikita) - . Fixed bug #50333 Improving multi-threaded scalability by using - emalloc/efree/estrdup (Anatol, Dmitry) - . Implemented constant scalar expressions (with support for constants) - (RFC: https://wiki.php.net/rfc/const_scalar_exprs). (Bob) - . Fixed bug #65784 (Segfault with finally). (Laruence, Dmitry) - -- cURL: - . Implemented FR #65646 (re-enable CURLOPT_FOLLOWLOCATION with open_basedir - or safe_mode). (Adam) - -- GMP: - . Moved GMP to use object as the underlying structure and implemented various - improvements based on this. - (RFC: https://wiki.php.net/rfc/operator_overloading_gmp). (Nikita) - . Added gmp_root() and gmp_rootrem() functions for calculating nth roots. - (Nikita) - -- Hash: - . Added gost-crypto (CryptoPro S-box) GOST hash algo. (Manuel Mausz) - -- JSON: - . Fixed case part of bug #64874 ("json_decode handles whitespace and - case-sensitivity incorrectly") - -- mysqlnd: - . Disabled flag for SP OUT variables for 5.5+ servers as they are not natively - supported by the overlying APIs. (Andrey) - -- OPcache: - . Added an optimization of class constants and constant calls to some - internal functions (Laruence, Dmitry) - . Added an optimization pass to convert FCALL_BY_NAME into DO_FCALL. - (Laruence, Dmitry) - . Added an optimization pass to merged identical constants (and related - cache_slots) in op_array->literals table. (Laruence, Dmitry) - . Added script level constant replacement optimization pass. (Dmitry) - -- Openssl: - . Added crypto_method option for the ssl stream context. (Martin Jansen) - . Added certificate fingerprint support. (Tjerk Meesters) - . Added explicit TLSv1.1 and TLSv1.2 stream transports. (Daniel Lowrey) - . Fixed bug #65729 (CN_match gives false positive). (Tjerk Meesters) - -- PDO_pgsql: - . Fixed Bug #42614 (PDO_pgsql: add pg_get_notify support). (Matteo) - . Fixed Bug #63657 (pgsqlCopyFromFile, pgsqlCopyToArray use Postgres < 7.3 - syntax). (Matteo) - -- phpdbg: - . Included phpdbg sapi (RFC: https://wiki.php.net/rfc/phpdbg). - (Felipe Pena, Joe Watkins and Bob Weinand) - -- Session: - . Fixed Bug #65315 (session.hash_function silently fallback to default md5) - (Yasuo) - . Implemented Request #54649 (Create session_serializer_name()). (Yasuo) - . Implemented Request #17860 (Session write short circuit). (Yasuo) - . Implemented Request #20421 (session_abort() and session_reset() function). - (Yasuo) - . Implemented Request #11100 (session_gc() function). (Yasuo) - -- Standard: - . Implemented FR #65634 (HTTP wrapper is very slow with protocol_version - 1.1). (Adam) - . Implemented Change crypt() behavior w/o salt RFC. (Yasuo) - https://wiki.php.net/rfc/crypt_function_salt - . Implemented request #49824 (Change array_fill() to allow creating empty - array). (Nikita) - -- XMLReader: - . Fixed bug #55285 (XMLReader::getAttribute/No/Ns methods inconsistency). - (Mike) - -- Zip: - . update libzip to version 1.11.1. - PHP don't use any ilibzip private symbol anymore. (Pierre, Remi) - . new method ZipArchive::setPassword($password). (Pierre) - . add --with-libzip option to build with system libzip. (Remi) +- DBA: + . Fixed bug #62490 (dba_delete returns true on missing item (inifile)). (Mike) +- XSL: + . Fixed bug #64776 (The XSLT extension is not thread safe). (Mike) <<< NOTE: Insert NEWS from last stable release here prior to actual release! >>> diff --cc Zend/zend_vm_opcodes.c index 04af26cdb4,22fc7cbcf3..177c3fd02e --- a/Zend/zend_vm_opcodes.c +++ b/Zend/zend_vm_opcodes.c @@@ -19,8 -19,9 +19,9 @@@ */ #include <stdio.h> + #include <zend.h> -const char *zend_vm_opcodes_map[164] = { +const char *zend_vm_opcodes_map[165] = { "ZEND_NOP", "ZEND_ADD", "ZEND_SUB", @@@ -185,5 -186,8 +186,9 @@@ "ZEND_GENERATOR_RETURN", "ZEND_FAST_CALL", "ZEND_FAST_RET", + "ZEND_RECV_VARIADIC", }; + + ZEND_API const char* zend_get_opcode_name(zend_uchar opcode) { + return zend_vm_opcodes_map[opcode]; + } diff --cc Zend/zend_vm_opcodes.h index ad0d881c09,ed02663c46..0000000000 deleted file mode 100644,100644 --- a/Zend/zend_vm_opcodes.h +++ /dev/null @@@ -1,174 -1,174 +1,0 @@@ --/* -- +----------------------------------------------------------------------+ -- | Zend Engine | -- +----------------------------------------------------------------------+ -- | Copyright (c) 1998-2013 Zend Technologies Ltd. (http://www.zend.com) | -- +----------------------------------------------------------------------+ -- | This source file is subject to version 2.00 of the Zend license, | -- | that is bundled with this package in the file LICENSE, and is | -- | available through the world-wide-web at the following url: | -- | http://www.zend.com/license/2_00.txt. | -- | If you did not receive a copy of the Zend license and are unable to | -- | obtain it through the world-wide-web, please send a note to | -- | license@zend.com so we can mail you a copy immediately. | -- +----------------------------------------------------------------------+ -- | Authors: Andi Gutmans <andi@zend.com> | -- | Zeev Suraski <zeev@zend.com> | -- | Dmitry Stogov <dmitry@zend.com> | -- +----------------------------------------------------------------------+ --*/ -- --#ifndef ZEND_VM_OPCODES_H --#define ZEND_VM_OPCODES_H -- - extern ZEND_API const char *zend_vm_opcodes_map[165]; -ZEND_API const char *zend_get_opcode_name(zend_uchar opcode); -- --#define ZEND_NOP 0 --#define ZEND_ADD 1 --#define ZEND_SUB 2 --#define ZEND_MUL 3 --#define ZEND_DIV 4 --#define ZEND_MOD 5 --#define ZEND_SL 6 --#define ZEND_SR 7 --#define ZEND_CONCAT 8 --#define ZEND_BW_OR 9 --#define ZEND_BW_AND 10 --#define ZEND_BW_XOR 11 --#define ZEND_BW_NOT 12 --#define ZEND_BOOL_NOT 13 --#define ZEND_BOOL_XOR 14 --#define ZEND_IS_IDENTICAL 15 --#define ZEND_IS_NOT_IDENTICAL 16 --#define ZEND_IS_EQUAL 17 --#define ZEND_IS_NOT_EQUAL 18 --#define ZEND_IS_SMALLER 19 --#define ZEND_IS_SMALLER_OR_EQUAL 20 --#define ZEND_CAST 21 --#define ZEND_QM_ASSIGN 22 --#define ZEND_ASSIGN_ADD 23 --#define ZEND_ASSIGN_SUB 24 --#define ZEND_ASSIGN_MUL 25 --#define ZEND_ASSIGN_DIV 26 --#define ZEND_ASSIGN_MOD 27 --#define ZEND_ASSIGN_SL 28 --#define ZEND_ASSIGN_SR 29 --#define ZEND_ASSIGN_CONCAT 30 --#define ZEND_ASSIGN_BW_OR 31 --#define ZEND_ASSIGN_BW_AND 32 --#define ZEND_ASSIGN_BW_XOR 33 --#define ZEND_PRE_INC 34 --#define ZEND_PRE_DEC 35 --#define ZEND_POST_INC 36 --#define ZEND_POST_DEC 37 --#define ZEND_ASSIGN 38 --#define ZEND_ASSIGN_REF 39 --#define ZEND_ECHO 40 --#define ZEND_PRINT 41 --#define ZEND_JMP 42 --#define ZEND_JMPZ 43 --#define ZEND_JMPNZ 44 --#define ZEND_JMPZNZ 45 --#define ZEND_JMPZ_EX 46 --#define ZEND_JMPNZ_EX 47 --#define ZEND_CASE 48 --#define ZEND_SWITCH_FREE 49 --#define ZEND_BRK 50 --#define ZEND_CONT 51 --#define ZEND_BOOL 52 --#define ZEND_INIT_STRING 53 --#define ZEND_ADD_CHAR 54 --#define ZEND_ADD_STRING 55 --#define ZEND_ADD_VAR 56 --#define ZEND_BEGIN_SILENCE 57 --#define ZEND_END_SILENCE 58 --#define ZEND_INIT_FCALL_BY_NAME 59 --#define ZEND_DO_FCALL 60 --#define ZEND_DO_FCALL_BY_NAME 61 --#define ZEND_RETURN 62 --#define ZEND_RECV 63 --#define ZEND_RECV_INIT 64 --#define ZEND_SEND_VAL 65 --#define ZEND_SEND_VAR 66 --#define ZEND_SEND_REF 67 --#define ZEND_NEW 68 --#define ZEND_INIT_NS_FCALL_BY_NAME 69 --#define ZEND_FREE 70 --#define ZEND_INIT_ARRAY 71 --#define ZEND_ADD_ARRAY_ELEMENT 72 --#define ZEND_INCLUDE_OR_EVAL 73 --#define ZEND_UNSET_VAR 74 --#define ZEND_UNSET_DIM 75 --#define ZEND_UNSET_OBJ 76 --#define ZEND_FE_RESET 77 --#define ZEND_FE_FETCH 78 --#define ZEND_EXIT 79 --#define ZEND_FETCH_R 80 --#define ZEND_FETCH_DIM_R 81 --#define ZEND_FETCH_OBJ_R 82 --#define ZEND_FETCH_W 83 --#define ZEND_FETCH_DIM_W 84 --#define ZEND_FETCH_OBJ_W 85 --#define ZEND_FETCH_RW 86 --#define ZEND_FETCH_DIM_RW 87 --#define ZEND_FETCH_OBJ_RW 88 --#define ZEND_FETCH_IS 89 --#define ZEND_FETCH_DIM_IS 90 --#define ZEND_FETCH_OBJ_IS 91 --#define ZEND_FETCH_FUNC_ARG 92 --#define ZEND_FETCH_DIM_FUNC_ARG 93 --#define ZEND_FETCH_OBJ_FUNC_ARG 94 --#define ZEND_FETCH_UNSET 95 --#define ZEND_FETCH_DIM_UNSET 96 --#define ZEND_FETCH_OBJ_UNSET 97 --#define ZEND_FETCH_DIM_TMP_VAR 98 --#define ZEND_FETCH_CONSTANT 99 --#define ZEND_GOTO 100 --#define ZEND_EXT_STMT 101 --#define ZEND_EXT_FCALL_BEGIN 102 --#define ZEND_EXT_FCALL_END 103 --#define ZEND_EXT_NOP 104 --#define ZEND_TICKS 105 --#define ZEND_SEND_VAR_NO_REF 106 --#define ZEND_CATCH 107 --#define ZEND_THROW 108 --#define ZEND_FETCH_CLASS 109 --#define ZEND_CLONE 110 --#define ZEND_RETURN_BY_REF 111 --#define ZEND_INIT_METHOD_CALL 112 --#define ZEND_INIT_STATIC_METHOD_CALL 113 --#define ZEND_ISSET_ISEMPTY_VAR 114 --#define ZEND_ISSET_ISEMPTY_DIM_OBJ 115 --#define ZEND_PRE_INC_OBJ 132 --#define ZEND_PRE_DEC_OBJ 133 --#define ZEND_POST_INC_OBJ 134 --#define ZEND_POST_DEC_OBJ 135 --#define ZEND_ASSIGN_OBJ 136 --#define ZEND_INSTANCEOF 138 --#define ZEND_DECLARE_CLASS 139 --#define ZEND_DECLARE_INHERITED_CLASS 140 --#define ZEND_DECLARE_FUNCTION 141 --#define ZEND_RAISE_ABSTRACT_ERROR 142 --#define ZEND_DECLARE_CONST 143 --#define ZEND_ADD_INTERFACE 144 --#define ZEND_DECLARE_INHERITED_CLASS_DELAYED 145 --#define ZEND_VERIFY_ABSTRACT_CLASS 146 --#define ZEND_ASSIGN_DIM 147 --#define ZEND_ISSET_ISEMPTY_PROP_OBJ 148 --#define ZEND_HANDLE_EXCEPTION 149 --#define ZEND_USER_OPCODE 150 --#define ZEND_JMP_SET 152 --#define ZEND_DECLARE_LAMBDA_FUNCTION 153 --#define ZEND_ADD_TRAIT 154 --#define ZEND_BIND_TRAITS 155 --#define ZEND_SEPARATE 156 --#define ZEND_QM_ASSIGN_VAR 157 --#define ZEND_JMP_SET_VAR 158 --#define ZEND_DISCARD_EXCEPTION 159 --#define ZEND_YIELD 160 --#define ZEND_GENERATOR_RETURN 161 --#define ZEND_FAST_CALL 162 --#define ZEND_FAST_RET 163 --#define ZEND_RECV_VARIADIC 164 -- --#endif