Commit Graph

40 Commits

Author SHA1 Message Date
Felipe Pena
8775a37559 - Year++ 2012-01-01 13:15:04 +00:00
Dmitry Stogov
b64e91ddeb Fixed bug #60139 (Anonymous functions create cycles not detected by the GC) 2011-11-02 06:31:33 +00:00
Dmitry Stogov
e43ff1359e Fixed ZE specific compile warnings (Bug #55629) 2011-09-13 13:29:35 +00:00
Stanislav Malyshev
a447acdcc6 Commit Gustavo's closure rebinding patch as desided by vote 2011-09-07 06:46:27 +00:00
Dmitry Stogov
821d7169d9 Fixed bug #54367 (Use of closure causes problem in ArrayAccess). 2011-04-20 12:59:18 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Dmitry Stogov
f2df6a4a3e - Improved memory usage
. zend_function.pass_rest_by_reference is replaced by
    ZEND_ACC_PASS_REST_BY_REFERENCE in zend_function.fn_flags
  . zend_function.return_reference is replaced by ZEND_ACC_RETURN_REFERENCE
    in zend_function.fn_flags
  . zend_arg_info.required_num_args removed. it was needed only for internal
    functions. Now the first arg_info for internal function (which has special
    meaning) is represented by zend_internal_function_info structure.
  . zend_op_array.size, size_var, size_literal, current_brk_cont,
    backpatch_count moved into CG(context), because they are used only during
    compilation.
  . zend_op_array.start_op is moved into EG(start_op), because it's used
    only for 'interactive' execution of single top-level op-array.
  . zend_op_array.done_pass_two is replaced by ZEND_ACC_DONE_PASS_TWO in
    zend_op_array.fn_flags.
  . op_array.vars array is trimmed (reallocated) during pass_two.
  . zend_class_entry.constants_updated is replaced by
     ZEND_ACC_CONSTANTS_UPDATED in zend_class_entry.ce_flags
  . the size of zend_class_entry is reduced by sharing the same memory space
    by different information for internal and user classes.
    See zend_class_inttry.info union.
2010-09-15 07:38:52 +00:00
Felipe Pena
e10d33fe5a - Fixed bug #52539 (Calling function from rebound Closure causes crash) 2010-08-08 15:06:14 +00:00
Stefan Marr
e6bd5368ad Fixed issue with statics in traits.
#Please review this change, I moved the routine which copies statics from the closure code to zend_variables.c
#Please also have a look to check whether the TSRMLS_DC is correct, and whether it fits with the rest in zend_variables, because there you are using some macro magic and I am not exactly sure what the reason is for that.
2010-06-08 15:56:36 +00:00
Antony Dovgal
9aa82f22f2 fix ZTS build 2010-04-20 12:53:43 +00:00
Dmitry Stogov
94dd83722b Changed the structure of op_array.opcodes. The constant values are moved from opcode operands into a separate literal table 2010-04-20 10:57:45 +00:00
Stanislav Malyshev
c93a4f192b restore $this support for closures to its former glory 2010-04-19 19:45:03 +00:00
Sebastian Bergmann
d2281d1dff sed -i "s#1998-2009#1998-2010#g" **/*.c **/*.h **/*.php 2010-01-05 20:46:53 +00:00
Felipe Pena
dcf91e6266 - Fixed bug #50146 (property_exists: Closure object cannot have properties) 2009-11-11 18:59:37 +00:00
Etienne Kneuss
4881a9cff4 Fix endless recursion of var_dump() over self-referencing closures 2009-08-10 15:18:13 +00:00
Christian Seiler
c6d89bd4a8 [DOC] Remove $this support in closures for PHP 5.3 beta 1
- Implementation notes here:
  http://wiki.php.net/rfc/closures/removal-of-this
2009-01-26 22:54:34 +00:00
Dmitry Stogov
312176f083 Reverted "Rebind closure when binding to property" 2009-01-14 10:28:22 +00:00
Marcus Boerger
8e741674af - MFH - Set scope when copying a closure with a new this pointer. 2009-01-04 14:23:29 +00:00
Marcus Boerger
b5d15b2975 - MFH Prevent instantiation from Reflection 2009-01-03 19:29:55 +00:00
Marcus Boerger
b7bb8034b5 - MFH Fix refcounting 2009-01-03 18:22:20 +00:00
Marcus Boerger
0e131653c1 - MFH Rebind closure when binding to property 2009-01-03 17:48:40 +00:00
Marcus Boerger
d9a78a887f - MFH Add reflection support helpers 2009-01-03 12:25:59 +00:00
Pierre Joye
8d62f3dd02 - fix build (declaration first please) 2009-01-02 01:50:13 +00:00
Marcus Boerger
480fccce37 - MFH Add var_dump support for closures 2009-01-01 16:22:44 +00:00
Sebastian Bergmann
08659c2dcd MFH: Bump copyright year, 3 of 3. 2008-12-31 11:15:49 +00:00
Etienne Kneuss
f48d22afa1 MFH: Fix #46646 (Implement zend functions to restrict serialization or internal classes) 2008-12-22 14:11:49 +00:00
Dmitry Stogov
7d4fd3fd38 Fixed bug #46409 (__invoke method called outside of object context when using array_map) 2008-11-27 19:01:23 +00:00
Dmitry Stogov
df9b7a1fe0 Fixed possible crash because of overriden error handler 2008-09-17 13:08:54 +00:00
Etienne Kneuss
f90255c66b MFH: Handlerify get_closure 2008-08-14 21:36:56 +00:00
Marcus Boerger
1b7e862444 - WS (actually my falut) 2008-08-11 10:30:21 +00:00
Dmitry Stogov
a4a3ed44bb - Made closures implementation reflection friendly (Christian)
- Changed E_ERROR(s) into E_RECOVERABLE_ERROR(s) (Marcus)
2008-08-11 08:49:00 +00:00
Dmitry Stogov
ba15f6809d Disable closures serialization/unserialization 2008-08-07 13:35:51 +00:00
Dmitry Stogov
f02f9b0545 Removed Closure::__toString() 2008-07-31 07:10:33 +00:00
Dmitry Stogov
8b14236557 Fixed bug #45608 (closures don't work in static methods) 2008-07-26 14:15:19 +00:00
Dmitry Stogov
af05ce0af6 Fixed is_callable/call_user_func mess that had done different things for very similar arguments e.g. array("A","B") and "A::B" 2008-07-26 13:14:04 +00:00
Felipe Pena
0fbe6a0c14 - MFH: Added TSRMLS_DC to apply_func_args_t and zend_hash_apply_with_arguments. 2008-07-24 19:52:24 +00:00
Jani Taskinen
d10d4e48c3 ws 2008-07-22 07:44:41 +00:00
Dmitry Stogov
4d8bdd9d1b Closure object cannot have properties 2008-07-22 07:29:31 +00:00
Dmitry Stogov
0fa7fedfde Fixed is_callable() to support closures and return appropriate function name 2008-07-14 12:18:23 +00:00
Dmitry Stogov
d5ef2f466c Added support for lambda functions and closures 2008-07-14 09:49:03 +00:00