History log of /PHP-7.4/Zend/zend_closures.c (Results 151 – 175 of 242)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 6d187d53 17-Aug-2014 Andrea Faulds

Fixed and cleaned up implementaton of Closure::call() for phpng


Revision tags: POST_PHPNG_MERGE, PRE_PHPNG_MERGE, php-5.6.0RC4, php-5.3.29, php-5.5.16RC1, php-5.4.32RC1, php-5.3.29RC1, php-5.6.0RC3
# 85bf8b4f 30-Jul-2014 Andrea Faulds

Fixed unbound scoped closure edge cases and added tests for them


# f65bdda4 30-Jul-2014 Andrea Faulds

Rename ::apply to ::call for the sake of JS consistency


# ded5b3fd 29-Jul-2014 Andrea Faulds

Added optional bool param $unbound_scoped to Closure::bind and ::bindTo


# 167128d8 29-Jul-2014 Andrea Faulds

Implemented Closure::apply


Revision tags: php-5.5.15, php-5.4.31, php-5.4.31RC1, php-5.5.15RC1
# 2ed8a170 07-Jul-2014 Dmitry Stogov

Refactored run_time_cache usage in object handlers


# 412ad4b2 02-Jul-2014 Dmitry Stogov

Uinified call frame handling for user and internal functions.
Now EG(current_execute_data) always point to the call frame of the currently executed function.


Revision tags: php-5.6.0RC2
# b7715c7e 30-Jun-2014 Dmitry Stogov

Refactored parameter passing mechanism.

In PHP-5.6 and below each argument passed to user function was copies on VM stack twice.
Now we always have ZEND_INIT_FCALL (or simular) opcode th

Refactored parameter passing mechanism.

In PHP-5.6 and below each argument passed to user function was copies on VM stack twice.
Now we always have ZEND_INIT_FCALL (or simular) opcode that pushes "call frame" on top of VM stack.
"Call frame" is actually the same zend_execute_data structure.
All the following ZEND_SEND instructions push arguments on top of the stack in a way that they directly comes into corresponding CV variables of the called frame. Extra arguments are copied at the end of stack frame (after all CV and TMP variables) on function enterance.

There are two minor incompatibilities:
1) It's not allowed to decalre functions redefining arguments e.g. "function foo($a,$a) {}".
2) func_get_arg() and func_get args() return the current value of argument and not the original value that was sent.

show more ...


Revision tags: php-5.4.30, php-5.5.14, php-5.6.0RC1, php-5.5.14RC1, php-5.4.30RC1, php-5.6.0beta4, php-5.4.29, php-5.5.13, php-5.5.13RC1, php-5.6.0beta3, php-5.4.29RC1
# f47976dd 13-May-2014 Levi Morrison

Fix bug 666222

This also adds some smaller, isolated tests related to bug 66622.


# e030efa4 13-May-2014 Levi Morrison

Fix bug 666222

This also adds some smaller, isolated tests related to bug 66622.

Conflicts:
Zend/zend_vm_def.h
Zend/zend_vm_execute.h


# bc357eaf 25-May-2014 Xinchen Hui

Fixed apply_func_args_t


# 9eb89ddd 23-May-2014 Dmitry Stogov

Use optimized zend_array_dup() function. convert zend_hash_num_elements() and zend_hash_next_free_element() into macros.


# 88c550a7 09-May-2014 Xinchen Hui

Added vstrpprintf strpprintf to avoid duplicate string

(the function name maybe improvement)


Revision tags: php-5.6.0beta2, php-5.5.12, php-5.4.28
# 4ed452c1 21-Apr-2014 Dmitry Stogov

Convert zval_get_string() into "fast path" macro and "slow path" function


# 72c287bd 21-Apr-2014 Dmitry Stogov

Combine HashTable.flags and HashTable.nApplyCount into single 32-bit word


# e96073b1 17-Apr-2014 Dmitry Stogov

Moved zend_literal->cache_slot right into zval.
It should be accessed using Z_CACHE_SLOT() macro.
zend_literal structure is removed.
API functions that accepted pointer to zend_literal no

Moved zend_literal->cache_slot right into zval.
It should be accessed using Z_CACHE_SLOT() macro.
zend_literal structure is removed.
API functions that accepted pointer to zend_literal now accept pointer to zval or cache_slot directly.
Calls of such functiond that now accept cache_slot need to be changed to pass -1 instead of NULL.

show more ...


Revision tags: php-5.4.28RC1
# 7a1a6092 15-Apr-2014 Nikita Popov

Add functions for extracting long/double/string from zval

These function get the long / double / string value of a zval with
usual cast semantics, but without actually modifying the zval

Add functions for extracting long/double/string from zval

These function get the long / double / string value of a zval with
usual cast semantics, but without actually modifying the zval.

Didn't go on a killing spree for convert_to_* yet...

show more ...


Revision tags: php-5.5.12RC1
# 050d7e38 15-Apr-2014 Dmitry Stogov

Cleanup (1-st round)


Revision tags: php-5.6.0beta1
# 7402af38 08-Apr-2014 Dmitry Stogov

Fixed destruction of objects and iterators on unclean request shutdown and GC (few cases are still unfixed).
Now we destroy objects it two steps. At first - object properties of all objects and o

Fixed destruction of objects and iterators on unclean request shutdown and GC (few cases are still unfixed).
Now we destroy objects it two steps. At first - object properties of all objects and only then the objects their selves.

show more ...


Revision tags: php-5.4.27, php-5.5.11
# ea85451b 27-Mar-2014 Dmitry Stogov

Refactored data structures to keep zend_object* instead of a whole zval in some places


# 5c169160 21-Mar-2014 Dmitry Stogov

cosure->debug_info is not a subject for GC


# b7938ab1 19-Mar-2014 Dmitry Stogov

Refactored GC (incomplete)


Revision tags: php-5.5.11RC1, php-5.4.27RC1, php-5.5.10, php-5.4.26
# cb7797a4 28-Feb-2014 Dmitry Stogov

Fixed NULL pointer dereferencing


# 08d9a4ff 28-Feb-2014 Dmitry Stogov

Fixed closures in static methods


# feeca5ab 28-Feb-2014 Dmitry Stogov

Fixed uninitialized zval


12345678910