History log of /PHP-7.4/Zend/zend_closures.c (Results 1 – 25 of 242)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# d26965b2 16-Nov-2021 Nikita Popov

Fixed bug #81626

Backport of a8926474cb2c68cde2a7c0d19bcd95cdbda55ad2 to 7.4.


# eda9f5f7 27-Aug-2021 Nikita Popov

Fix Closure::call() on internal method closure

In this case we should use the original internal handler. Otherwise
the trampoline will attempt to free the closure, but the function
b

Fix Closure::call() on internal method closure

In this case we should use the original internal handler. Otherwise
the trampoline will attempt to free the closure, but the function
being used is not actually part of a closure anymore.

show more ...


# c0b1bdcd 15-Apr-2021 twosee

Fixed bug #80929

The function name should be kept if Closure was created from the function which is marked as ZEND_ACC_CALL_VIA_TRAMPOLINE, because it is not a one-time thing and it may be c

Fixed bug #80929

The function name should be kept if Closure was created from the function which is marked as ZEND_ACC_CALL_VIA_TRAMPOLINE, because it is not a one-time thing and it may be called multiple times.

Closes GH-6867.

show more ...


# 78773890 12-Nov-2020 Christoph M. Becker

Fix #74558: Can't rebind closure returned by Closure::fromCallable()

Failure to rebind such closures is not necessarily related to them
being created by `ReflectionFunctionAbstract::getC

Fix #74558: Can't rebind closure returned by Closure::fromCallable()

Failure to rebind such closures is not necessarily related to them
being created by `ReflectionFunctionAbstract::getClosure()`, so we fix
the error message.

Closes GH-6424.

show more ...


# b765f96f 07-Jul-2020 Nikita Popov

Fixed bug #79778

In the interest of avoiding side-effects during dumping, I'm
replacing the value with a <constant ast> string instead of
performing an update constant operation.


# b965f158 18-Dec-2019 Nikita Popov

Fix use-after-free when trying to write to closure property


Revision tags: php-7.3.13RC1, php-7.2.26RC1, php-7.4.0, php-7.2.25, php-7.3.12, php-7.4.0RC6, php-7.3.12RC1, php-7.2.25RC1
# 5f6eaf35 30-Oct-2019 Nikita Popov

Add missing refcount increment


# f9895b4b 29-Oct-2019 Nikita Popov

Fixed bug #78689


Revision tags: php-7.4.0RC5, php-7.1.33, php-7.2.24, php-7.3.11, php-7.4.0RC4
# 6fd6ad8f 09-Oct-2019 Nikita Popov

Fixed bug #78658


Revision tags: php-7.3.11RC1, php-7.2.24RC1, php-7.4.0RC3, php-7.2.23, php-7.3.10, php-7.4.0RC2, php-7.2.23RC1, php-7.3.10RC1, php-7.4.0RC1
# c739023a 02-Sep-2019 Dmitry Stogov

Free two bits in fn_flags by merging ZEND_ACC_HEAP_RT_CACHE/ZEND_ACC_USER_ARG_INFO and ZEND_ACC_DONE_PASS_TWO/ZEND_ACC_ARENA_ALLOCATED that may be used only for user/internal functions


Revision tags: php-7.1.32, php-7.2.22, php-7.3.9, php-7.4.0beta4
# d1157cbc 16-Aug-2019 Nikita Popov

Relax closure $this unbinding deprecation

Only deprecate unbinding of $this from a closure if $this is
syntactically used within the closure.

This is desired to support Laravel'

Relax closure $this unbinding deprecation

Only deprecate unbinding of $this from a closure if $this is
syntactically used within the closure.

This is desired to support Laravel's macro system, see laravel/framework#29482.

This should still allow us to implement the performance improvements
we're interested in for PHP 8, without breaking existing use-cases.

show more ...


Revision tags: php-7.2.22RC1, php-7.3.9RC1, php-7.4.0beta2, php-7.1.31, php-7.2.21, php-7.3.8, php-7.4.0beta1, php-7.2.21RC1, php-7.3.8RC1
# 28cf0807 12-Jul-2019 Nikita Popov

Deprecate unbinding $this from non-static closure


Revision tags: php-7.4.0alpha3, php-7.3.7, php-7.2.20, php-7.4.0alpha2, php-7.3.7RC3, php-7.3.7RC2, php-7.2.20RC2, php-7.4.0alpha1, php-7.3.7RC1, php-7.2.20RC1
# e14d7733 29-May-2019 Dmitry Stogov

Mark "cold" functions


Revision tags: php-7.2.19
# 83804519 28-May-2019 Dmitry Stogov

Replace ZVAL_COPY() and ZVAL_COPY_VALUE() for IS_OBJECT by cheaper macros


Revision tags: php-7.3.6, php-7.1.30
# e6fac86d 24-May-2019 Nikita Popov

Accept flags argument in zend_lookup_class_ex()

Instead of a single boolean, so we have space for extension here.


Revision tags: php-7.2.19RC1, php-7.3.6RC1, php-7.1.29, php-7.2.18, php-7.3.5, php-7.2.18RC1, php-7.3.5RC1, php-7.2.17, php-7.3.4, php-7.1.28, php-7.3.4RC1, php-7.2.17RC1
# 409e0dd2 11-Mar-2019 Dmitry Stogov

Closure::fromCallable() supports only regular methods and magic method invoked through __call()/__callStatic().
It doesn't support method of internal classes invoked through C object or class han

Closure::fromCallable() supports only regular methods and magic method invoked through __call()/__callStatic().
It doesn't support method of internal classes invoked through C object or class handlers.
This commit prevents crash described at bug #77708, but doesn't implement the desired behavior.

show more ...


Revision tags: php-7.1.27, php-7.3.3, php-7.2.16, php-7.3.3RC1, php-7.2.16RC1, php-7.2.15, php-7.3.2, php-7.2.15RC1
# 92ac598a 22-Jan-2019 Peter Kokot

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly

Remove local variables

This patch removes the so called local variables defined per
file basis for certain editors to properly show tab width, and
similar settings. These are mainly used by Vim and Emacs editors
yet with recent changes the once working definitions don't work
anymore in Vim without custom plugins or additional configuration.
Neither are these settings synced across the PHP code base.

A simpler and better approach is EditorConfig and fixing code
using some code style fixing tools in the future instead.

This patch also removes the so called modelines for Vim. Modelines
allow Vim editor specifically to set some editor configuration such as
syntax highlighting, indentation style and tab width to be set in the
first line or the last 5 lines per file basis. Since the php test
files have syntax highlighting already set in most editors properly and
EditorConfig takes care of the indentation settings, this patch removes
these as well for the Vim 6.0 and newer versions.

With the removal of local variables for certain editors such as
Emacs and Vim, the footer is also probably not needed anymore when
creating extensions using ext_skel.php script.

Additionally, Vim modelines for setting php syntax and some editor
settings has been removed from some *.phpt files. All these are
mostly not relevant for phpt files neither work properly in the
middle of the file.

show more ...


# a81202ac 30-Jan-2019 Zeev Suraski

Adios, yearly copyright ranges


Revision tags: php-7.3.2RC1, php-5.6.40, php-7.1.26, php-7.3.1, php-7.2.14
# e219ec14 07-Jan-2019 Nikita Popov

Implement typed properties

RFC: https://wiki.php.net/rfc/typed_properties_v2

This is a squash of PR #3734, which is a squash of PR #3313.

Co-authored-by: Bob Weinand <bobwe

Implement typed properties

RFC: https://wiki.php.net/rfc/typed_properties_v2

This is a squash of PR #3734, which is a squash of PR #3313.

Co-authored-by: Bob Weinand <bobwei9@hotmail.com>
Co-authored-by: Joe Watkins <krakjoe@php.net>
Co-authored-by: Dmitry Stogov <dmitry@zend.com>

show more ...


Revision tags: php-7.2.14RC1, php-7.3.1RC1, php-5.6.39, php-7.1.25, php-7.2.13, php-7.0.33, php-7.3.0, php-7.1.25RC1, php-7.2.13RC1, php-7.3.0RC6
# 0f7f1498 15-Nov-2018 Dmitry Stogov

Use ZEND_THIS macro to hide implementation details in extensions code.


# c6ad0b92 13-Nov-2018 Dmitry Stogov

Replace getThis() by EX(This), when additional check is not necessary.


Revision tags: php-7.1.24, php-7.2.12, php-7.3.0RC5
# 9afce019 01-Nov-2018 Zeev Suraski

Future-proof email addresses


# 54dc07f3 01-Nov-2018 Zeev Suraski

Update email addresses. We're still @Zend, but future proofing it...


Revision tags: php-7.1.24RC1, php-7.2.12RC1, php-7.3.0RC4
# d57cd36e 17-Oct-2018 Dmitry Stogov

Immutable clases and op_arrays.

Squashed commit of the following:

commit cd0c36c3f943849e5b97a8dbe2dd029fbeab3df9
Merge: 4740dabb84 ad6738e886
Author: Dmitry Stogov <dmitry@

Immutable clases and op_arrays.

Squashed commit of the following:

commit cd0c36c3f943849e5b97a8dbe2dd029fbeab3df9
Merge: 4740dabb84 ad6738e886
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 14:43:38 2018 +0300

Merge branch 'master' into immutable

* master:
Remove the "auto" encoding
Fixed bug #77025
Add vtbls for EUC-TW encoding

commit 4740dabb843c6d4f7f866b4a2456073c9eaf4c77
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 14:12:28 2018 +0300

Reverted back ce->iterator_funcs_ptr. Initialize ce->iterator_funcs_ptr fields in immutable classes.

commit ad7a78b253be970db70c2251e66f9297d8e7f829
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:46:30 2018 +0300

Added comment

commit 0276ea51875bab37be01a4dc5e5a047c5698c571
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:42:43 2018 +0300

Added type cast

commit c63fc5d5f19c58498108d1698055b2b442227eb3
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:36:51 2018 +0300

Moved static class members initialization into the proper place.

commit b945548e9306b1826c881918858b5e5aa3eb3002
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:21:03 2018 +0300

Removed redundand assertion

commit d5a41088401814c829847db212488f8aae39bcd2
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:19:13 2018 +0300

Removed duplicate code

commit 8dadca8864e66de70a24bdf1181bcf7dd8fb27d7
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 11:05:43 2018 +0300

Hide offset encoding magic in ZEND_MAP_PTR_IS_OFFSET(), ZEND_MAP_PTR_OFFSET2PTR() and ZEND_MAP_PTR_PTR2OFFSET() macros.

commit 9ef07c88bd76801e2d4fbfeab3ebfd6e6a67ac5f
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 10:48:29 2018 +0300

typo

commit a06f0f3d3aba53e766046221ee44fb9720389ecc
Merge: 94099586ec 3412345ffe
Author: Dmitry Stogov <dmitry@zend.com>
Date: Wed Oct 17 10:47:07 2018 +0300

Merge branch 'master' into immutable

* master:
Remove unused variable makefile_am_files
Classify object handlers are required/optional
Add support for getting SKIP_TAGSTART and SKIP_WHITE options
Remove some obsolete config_vars.mk occurrences
Remove bsd_converted from .gitignore
Remove configuration parser and scanners ignores
Remove obsolete buildconf.stamp from .gitignore
[ci skip] Add magicdata.patch exception to .gitignore
Remove outdated ext/spl/examples items from .gitignore
Remove unused test.inc in ext/iconv/tests

commit 94099586ec599117581ca01c15b1f6c5f749e23a
Author: Dmitry Stogov <dmitry@zend.com>
Date: Mon Oct 15 23:34:01 2018 +0300

Immutable clases and op_arrays

show more ...


Revision tags: php-7.1.23, php-7.2.11, php-7.3.0RC3
# 26065662 02-Oct-2018 Dmitry Stogov

Rename ZEND_ACC_NO_RT_ARENA into ZEND_ACC_HEAP_RT_CACHE and use it for pseudo-main op_arrays.


12345678910