]>
granicus.if.org Git - php/log
Bob Weinand [Mon, 4 Apr 2016 22:34:42 +0000 (00:34 +0200)]
Allow for [] = $array; (alias for list())
Dmitry Stogov [Thu, 19 May 2016 10:22:46 +0000 (13:22 +0300)]
Added and fixed tests related to "finally" handling
Dmitry Stogov [Wed, 18 May 2016 12:06:49 +0000 (15:06 +0300)]
Added specialized handler for ZEND_FETCH_DIM_R opcode with only numeric indexes.
Derick Rethans [Wed, 18 May 2016 11:19:58 +0000 (12:19 +0100)]
Merge branch 'PHP-7.0'
Derick Rethans [Wed, 18 May 2016 11:19:49 +0000 (12:19 +0100)]
Merge branch 'PHP-5.6' into PHP-7.0
Derick Rethans [Wed, 18 May 2016 11:19:11 +0000 (12:19 +0100)]
Fixed bug #63740 (strtotime seems to use both sunday and monday as start of week)
Dmitry Stogov [Wed, 18 May 2016 08:29:02 +0000 (11:29 +0300)]
Fixed typo
Nikita Popov [Tue, 17 May 2016 20:17:22 +0000 (22:17 +0200)]
Move builtin_ctzl portability into zend_bitset.h
Use this function in both zend_mm_bitset_find_one and
zend_bitset_first.
Maybe zend_bitset.h is not quite the right place for it, but I did
not want to include this in a globally included header like
zend_long.h or zend_portability.h.
Dmitry Stogov [Tue, 17 May 2016 14:17:09 +0000 (17:17 +0300)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Use PHP_VERSION as OPcahce version
Dmitry Stogov [Tue, 17 May 2016 14:16:10 +0000 (17:16 +0300)]
Use PHP_VERSION as OPcahce version
Nikita Popov [Tue, 17 May 2016 14:13:17 +0000 (16:13 +0200)]
Mark assert() as INDIRECT_VAR_ACCESS
I don't like this... we may want to detect "obviously not string"
operands by checking for the result of a comparison instruction.
Xinchen Hui [Tue, 17 May 2016 12:28:26 +0000 (20:28 +0800)]
Merge branch 'master' of git.php.net:/php-src
* 'master' of git.php.net:/php-src:
Inlined fast paths of the freqently execute handlers for FETCH_DIM_R.
Xinchen Hui [Tue, 17 May 2016 12:27:16 +0000 (20:27 +0800)]
Revert "Fixed Bug #72213 (Finally leaks on nested exceptions)"
This reverts commit
5037ebf058bdc94e4426240a6d35fcf427d2eee2 .
Dmitry Stogov [Tue, 17 May 2016 12:08:04 +0000 (15:08 +0300)]
Inlined fast paths of the freqently execute handlers for FETCH_DIM_R.
Xinchen Hui [Tue, 17 May 2016 10:07:36 +0000 (18:07 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Let's only read-only here
Xinchen Hui [Tue, 17 May 2016 10:07:20 +0000 (18:07 +0800)]
Let's only read-only here
Xinchen Hui [Tue, 17 May 2016 09:41:01 +0000 (17:41 +0800)]
Merge branch 'master' of git.php.net:/php-src
* 'master' of git.php.net:/php-src:
Specialize ZEND_ASSIGN_ADD and family according to value of opline->extended_value
Xinchen Hui [Tue, 17 May 2016 09:40:37 +0000 (17:40 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fixed bug #72229 (Wrong reference when serialize/unserialize an object)
Xinchen Hui [Tue, 17 May 2016 09:40:26 +0000 (17:40 +0800)]
Fixed bug #72229 (Wrong reference when serialize/unserialize an object)
Dmitry Stogov [Tue, 17 May 2016 08:46:25 +0000 (11:46 +0300)]
Specialize ZEND_ASSIGN_ADD and family according to value of opline->extended_value
Xinchen Hui [Tue, 17 May 2016 07:32:43 +0000 (15:32 +0800)]
Fixed Bug #72213 (Finally leaks on nested exceptions)
Dmitry Stogov [Tue, 17 May 2016 05:45:06 +0000 (08:45 +0300)]
IS_CONST operands don't have to be separated. Use reference-counting instead of duplication.
- with opcache all IS_CONST operands are not refcounted (scalars, interned strings or immutable arrays)
- without opcache IS_CONST operands are not shared between processes or threads and may use common reference counters
Dmitry Stogov [Mon, 16 May 2016 23:09:29 +0000 (02:09 +0300)]
micro-optimisation
Anatol Belski [Mon, 16 May 2016 17:31:20 +0000 (19:31 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
update NEWS
Tidy up
Remove unnecessary boundary checks
Resolve bug #72017
Anatol Belski [Mon, 16 May 2016 17:30:38 +0000 (19:30 +0200)]
update NEWS
Thomas Punt [Sat, 16 Apr 2016 09:51:40 +0000 (10:51 +0100)]
Tidy up
Thomas Punt [Sat, 16 Apr 2016 08:33:01 +0000 (09:33 +0100)]
Remove unnecessary boundary checks
Thomas Punt [Fri, 15 Apr 2016 22:13:50 +0000 (23:13 +0100)]
Resolve bug #72017
Xinchen Hui [Mon, 16 May 2016 13:24:34 +0000 (06:24 -0700)]
Merge branch 'PHP-7.0'
Xinchen Hui [Mon, 16 May 2016 13:23:55 +0000 (06:23 -0700)]
Revert "Revert the ABI break commit"
This reverts commit
07220f615b432837e158820fa08206fcc78c93e2 .
Xinchen Hui [Mon, 16 May 2016 13:22:49 +0000 (06:22 -0700)]
Merge branch 'PHP-7.0'
Xinchen Hui [Mon, 16 May 2016 13:21:11 +0000 (06:21 -0700)]
Revert "Revert "fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)""
obviously I read the change is in argument lists by mistake :<
This reverts commit
9e7afa75140afd047cb95280a610cff9368a7517 .
Dmitry Stogov [Mon, 16 May 2016 09:42:13 +0000 (12:42 +0300)]
Check if generator object is created by GENERATOR_CREATE when throw exceptions from generator function
Dmitry Stogov [Mon, 16 May 2016 09:41:24 +0000 (12:41 +0300)]
Extend CAL_FLAGS from 8-bit to 16-bit
Dmitry Stogov [Mon, 16 May 2016 08:51:29 +0000 (11:51 +0300)]
Revert "Check if generator object is created by GENERATOR_CREATE when throw exceptions from generator function."
This reverts commit
a9b517c6143a8fab3f704448022e7381b02090ba .
Dmitry Stogov [Mon, 16 May 2016 07:24:13 +0000 (10:24 +0300)]
Check if generator object is created by GENERATOR_CREATE when throw exceptions from generator function.
Xinchen Hui [Mon, 16 May 2016 06:49:22 +0000 (14:49 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Correct name, it was typed in habitually
Xinchen Hui [Mon, 16 May 2016 06:48:13 +0000 (14:48 +0800)]
Correct name, it was typed in habitually
Xinchen Hui [Mon, 16 May 2016 03:25:16 +0000 (11:25 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Revert the ABI break commit
Revert "fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)"
Xinchen Hui [Mon, 16 May 2016 03:24:39 +0000 (11:24 +0800)]
Revert the ABI break commit
Xinchen Hui [Mon, 16 May 2016 03:24:16 +0000 (11:24 +0800)]
Revert "fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)"
ABI break
This reverts commit
fb951553be0175712f4b757e05004110d7421e04 .
Xinchen Hui [Mon, 16 May 2016 03:21:39 +0000 (11:21 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fixed bug #72218 (If host name cannot be resolved then PHP 7 crashes)
fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)
fix #72206 (xml_parser_create/xml_parser_free leaks mem)
improve
7132fe19c29c512d00a3afe101212ba15fa1f99e
fix
1bb8a7b0b895af4a9e6b24101fe8fab5af64f86c
fix #72180 (Env variables incorrectly pretty printed in config.nice, phpinfo)
Conflicts:
acinclude.m4
Xinchen Hui [Mon, 16 May 2016 03:19:45 +0000 (11:19 +0800)]
Fixed bug #72218 (If host name cannot be resolved then PHP 7 crashes)
Jakub Zelenka [Sun, 15 May 2016 13:15:04 +0000 (14:15 +0100)]
Update NEWS with info about JSON parser method
Jakub Zelenka [Sun, 15 May 2016 12:50:23 +0000 (13:50 +0100)]
Merge branch 'json_parser_method'
Anatol Belski [Sat, 14 May 2016 21:48:04 +0000 (23:48 +0200)]
fix dir separator
Nikita Popov [Sat, 14 May 2016 14:49:52 +0000 (16:49 +0200)]
Inference: $a[]= results in long keys
Nikita Popov [Sat, 14 May 2016 11:54:41 +0000 (13:54 +0200)]
Inference: Fix undef handling for binary ops
We need to be careful about correctly handling that undef results
in a null value. Otherwise, apart from simply generating incorrect
results, we may also end up performing non-monotonic lattice
transitions, thus causing an infinite type inference loop (see
test).
Nikita Popov [Sat, 14 May 2016 11:44:04 +0000 (13:44 +0200)]
Inference: Use common handling for compound assign ops
Extract the inference code for binary operators and then handle all
ASSIGN_* opcodes the same way.
Nikita Popov [Sat, 14 May 2016 11:23:29 +0000 (13:23 +0200)]
Add COPY_SSA_OBJ_TYPE macro
Use it consistently in the ASSIGN_* implementations, previously
it was only present in ASSIGN_ADD.
Nikita Popov [Sat, 14 May 2016 11:03:25 +0000 (13:03 +0200)]
Fix & improve assign_dim inference
Extract a helper function for handling ASSIGN_DIM and ASSIGN_*
with ASSIGN_DIM ev uniformly. Previously the code was copy pasted
for each ASSIGN_* op, but the variable names were not correctly
adjusted (tmp vs orig), so the type inference result was wrong.
Also sligthly improve handling:
* Result cannot be false, will always be converted to array.
* If the dim is a CONST string operand, we don't have to assume
numeric strings.
* If the inserted value may be undef, the array may contain null.
Joe Watkins [Sat, 14 May 2016 07:20:41 +0000 (08:20 +0100)]
fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)
Joe Watkins [Sat, 14 May 2016 07:20:41 +0000 (08:20 +0100)]
fix #72143 (preg_replace uses int instead of size_t on zend_string_allocs)
Joe Watkins [Sat, 14 May 2016 07:10:16 +0000 (08:10 +0100)]
fix #72206 (xml_parser_create/xml_parser_free leaks mem)
Joe Watkins [Sat, 14 May 2016 07:10:16 +0000 (08:10 +0100)]
fix #72206 (xml_parser_create/xml_parser_free leaks mem)
Joe Watkins [Sat, 14 May 2016 05:28:11 +0000 (06:28 +0100)]
fix #72209 (ReflectionProperty::getValue() doesn't fail if object doesn't match type)
Sara Golemon [Sat, 14 May 2016 03:47:54 +0000 (03:47 +0000)]
Implement FIPS 180-4 algos: sha512/256 and sha512/224
These algorithms are simple extensions to the existing sha512 algo
using different initialization vectors and producing truncated output.
Sara Golemon [Sat, 14 May 2016 04:31:39 +0000 (04:31 +0000)]
Check in generated lexer
This should have been included with my previous diff implementing octal overflow warning.
Ooops.
Sara Golemon [Fri, 29 Apr 2016 21:05:06 +0000 (21:05 +0000)]
Raise compiler warning on octal overflow
Addresses https://bugs.php.net/bug.php?id=71994
Joe Watkins [Fri, 13 May 2016 11:47:36 +0000 (12:47 +0100)]
Dmitry Stogov [Fri, 13 May 2016 11:46:43 +0000 (14:46 +0300)]
Added news entries
Dmitry Stogov [Fri, 13 May 2016 11:38:43 +0000 (14:38 +0300)]
Fixed bug #72188 (Nested try/finally blocks losing return value)
Dmitry Stogov [Fri, 13 May 2016 08:55:09 +0000 (11:55 +0300)]
Fixed bug #72177 (Scope issue in __destruct after ReflectionProperty::setValue())
Joe Watkins [Fri, 13 May 2016 08:25:15 +0000 (09:25 +0100)]
Joe Watkins [Fri, 13 May 2016 08:21:28 +0000 (09:21 +0100)]
Joe Watkins [Fri, 13 May 2016 06:43:49 +0000 (07:43 +0100)]
fix #72180 (Env variables incorrectly pretty printed in config.nice, phpinfo)
Joe Watkins [Fri, 13 May 2016 06:41:11 +0000 (07:41 +0100)]
fix #72180 (Env variables incorrectly pretty printed in config.nice, phpinfo)
Dmitry Stogov [Thu, 12 May 2016 22:40:15 +0000 (01:40 +0300)]
Eliminated checks for (func->op_array.fn_flags & ZEND_ACC_GENERATOR) in fast path of DO_FCALL* handlers.
This slightly improves calls to regular function and method calls in cost of a bit slower generator initialization.
Separate call frame for generators, allocated on heap, now created by ZEND_GENERATOR_CREATE instruction.
Nikita Popov [Thu, 12 May 2016 19:57:19 +0000 (21:57 +0200)]
Fix phi placement for pi targets
If the pi target has multiple predecessors, we need to place a
phi there. However it's not possible to express this in terms of
dominance frontiers, so we need to explicitly add it to the phi
set.
This does not yet solve the problem of non-minimal SSA for the
case where the target has multiple predecessors, but dominates
all predecessors (apart from the one creating the pi) -- but
that's an existing issue.
Nikita Popov [Thu, 12 May 2016 19:41:24 +0000 (21:41 +0200)]
Explicitly construct phi set during def propagation
Previously the phi set was first computed during def propagation
and then computed again (per-block) during actual phi placement.
This commit changes this to store the phi set computed during
def propagation.
This makes SSA construction slightly faster (5%), but the main
purpose here is to pave the way for the next commit.
This also fixes a potential issue with the handling of irreducible
loops -- they generated additional phis, but these were not
accounted for in def propagation. (Though I'm not sure if we can
even have any irreducible loops right now.)
Anatol Belski [Thu, 12 May 2016 18:38:02 +0000 (20:38 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
fix dir separator in test
Anatol Belski [Thu, 12 May 2016 18:37:04 +0000 (20:37 +0200)]
fix dir separator in test
Dmitry Stogov [Thu, 12 May 2016 13:46:37 +0000 (16:46 +0300)]
Removed useless code
Anatol Belski [Thu, 12 May 2016 11:39:39 +0000 (13:39 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
update NEWS
Anatol Belski [Thu, 12 May 2016 11:39:15 +0000 (13:39 +0200)]
update NEWS
Anatol Belski [Thu, 12 May 2016 10:49:31 +0000 (12:49 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
workaround the extra new line in the test out on another env
Dmitry Stogov [Thu, 12 May 2016 10:47:22 +0000 (13:47 +0300)]
Intern some known (and offten used) strings.
Anatol Belski [Thu, 12 May 2016 10:45:04 +0000 (12:45 +0200)]
workaround the extra new line in the test out on another env
Anatol Belski [Thu, 12 May 2016 09:41:18 +0000 (11:41 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fixed bug #72197 pg_lo_create arbitrary read
Anatol Belski [Thu, 12 May 2016 09:40:28 +0000 (11:40 +0200)]
Fixed bug #72197 pg_lo_create arbitrary read
Xinchen Hui [Thu, 12 May 2016 05:48:52 +0000 (13:48 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Added NEWS entry missed while doing merge
Xinchen Hui [Thu, 12 May 2016 05:48:24 +0000 (13:48 +0800)]
Added NEWS entry missed while doing merge
Xinchen Hui [Thu, 12 May 2016 05:40:32 +0000 (13:40 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Committed by accident
Xinchen Hui [Thu, 12 May 2016 05:40:22 +0000 (13:40 +0800)]
Committed by accident
Xinchen Hui [Thu, 12 May 2016 05:16:07 +0000 (13:16 +0800)]
Merge branch 'PHP-7.0' of git.php.net:/php-src into PHP-7.0
* 'PHP-7.0' of git.php.net:/php-src:
Fix serializing ZEND_AST_SHELL_EXEC
add missing NEWS entry
prepare for 5.6.22RC1
add missing NEWS entry
Xinchen Hui [Thu, 12 May 2016 05:15:57 +0000 (13:15 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fixed bug #72195 (pg_pconnect/pg_connect cause use-after-free)
Xinchen Hui [Thu, 12 May 2016 05:15:33 +0000 (13:15 +0800)]
Fixed bug #72195 (pg_pconnect/pg_connect cause use-after-free)
Sara Golemon [Thu, 12 May 2016 02:51:14 +0000 (02:51 +0000)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fix serializing ZEND_AST_SHELL_EXEC
Sara Golemon [Thu, 12 May 2016 02:28:57 +0000 (02:28 +0000)]
Fix serializing ZEND_AST_SHELL_EXEC
Currently, `foo` is reserialized as `'foo'` due to misuse of zend_ast_export().
ZEND_AST_SHELL_EXEC can only contain ZEND_AST_ZVAL(string) or ZEND_AST_ENCAPS_LIST,
so just handle the ZEND_AST_ZVAL(string) case directly.
Dmitry Stogov [Wed, 11 May 2016 21:44:18 +0000 (00:44 +0300)]
Use main VM stack for generators. Only single call frame for generator itself is allocated on heap, call frames for nested functions are allocated on main VM stack. In case "yield" used in context of another function call, call stack has to be frozen and then restored.
Ferenc Kovacs [Wed, 11 May 2016 21:32:27 +0000 (23:32 +0200)]
Merge branch 'PHP-7.0'
* PHP-7.0:
add missing NEWS entry
prepare for 5.6.22RC1
add missing NEWS entry
Ferenc Kovacs [Wed, 11 May 2016 21:31:52 +0000 (23:31 +0200)]
add missing NEWS entry
Ferenc Kovacs [Wed, 11 May 2016 21:31:09 +0000 (23:31 +0200)]
Merge branch 'PHP-5.6' into PHP-7.0
* PHP-5.6:
prepare for 5.6.22RC1
add missing NEWS entry
Ferenc Kovacs [Wed, 11 May 2016 21:30:04 +0000 (23:30 +0200)]
prepare for 5.6.22RC1
Ferenc Kovacs [Wed, 11 May 2016 21:29:23 +0000 (23:29 +0200)]
add missing NEWS entry
Jakub Zelenka [Wed, 11 May 2016 20:11:47 +0000 (21:11 +0100)]
Add php_json_yyparse for direct use in json ext
Jakub Zelenka [Wed, 11 May 2016 19:54:42 +0000 (20:54 +0100)]
Fix and clean up exporting of json parser
Dmitry Stogov [Wed, 11 May 2016 09:55:33 +0000 (12:55 +0300)]
Added test
Xinchen Hui [Wed, 11 May 2016 09:32:06 +0000 (17:32 +0800)]
Merge branch 'PHP-7.0'
* PHP-7.0:
Fixed Bug #72193 (dns_get_record returns array containing elements of type 'unknown')
Xinchen Hui [Wed, 11 May 2016 09:31:46 +0000 (17:31 +0800)]
Fixed Bug #72193 (dns_get_record returns array containing elements of type 'unknown')