summaryrefslogtreecommitdiff
path: root/Zend
Commit message (Collapse)AuthorAgeFilesLines
* Fixed crash in Zend/tests/unset_cv09.phptDmitry Stogov2010-04-261-2/+2
|
* - Fix testFelipe Pena2010-04-261-1/+1
|
* - Remove empty testsFelipe Pena2010-04-261-0/+0
|
* - Removed allow_call_time_pass_reference (Pierrick)Felipe Pena2010-04-264-44/+9
|
* fix ~450 tests and 25 segfaultsAntony Dovgal2010-04-251-1/+1
| | | | | make test, anyone?
* Remove unused variableDavid Soria Parra2010-04-251-1/+0
|
* Add DTrace probesDavid Soria Parra2010-04-248-1/+237
|
* fix WSAntony Dovgal2010-04-231-1/+1
|
* Use fast class fetch functionDmitry Stogov2010-04-234-4/+9
|
* - Fix memory issueFelipe Pena2010-04-231-6/+3
|
* - Fix Windows build (Kalle)Felipe Pena2010-04-231-8/+12
|
* - Fix function signatureFelipe Pena2010-04-231-2/+2
|
* - Fix ZTS code and CSFelipe Pena2010-04-231-11/+11
|
* - Fix zend_hash_apply_with_arguments() calls on ZTSFelipe Pena2010-04-221-6/+6
|
* - Fixed ZTS build & comment-styleFelipe Pena2010-04-221-72/+75
|
* Implemented Traits for PHP as proposed in the RFC [TRAITS]Stefan Marr2010-04-2212-860/+1934
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | # RFC http://wiki.php.net/rfc/horizontalreuse#traits_-_reuse_of_behavior # Ok, here we go, I guess that will result in more discussion, which is fine # by me. But now, the patch is here, and properly archived. # # See below a list of notes to the patch, it also includes a list of # points which should be fixed # # Internals of the Traits Patch # ----------------------------- # # Open TODOs # """""""""" # # - Reflection API # - support for traits for internal classes # - currently destroy_zend_class does not handle that case # # Introduced Structures # """"""""""""""""""""" # # Data structures to encode the composition information specified in the # source: # - zend_trait_method_reference # - zend_trait_precedence # - zend_trait_alias # # Changes # """"""" # # zend_class_entry # - uses NULL terminated lists of pointers for # - trait_aliases # - trait_precedences # - do you prefer an explicit counter? # - the information is only necessary during class composition # but might be interesting for reflection # - did not want to blow up class further with not really necessary length counters # # added keywords # - trait # - insteadof # # Added opcodes # ZEND_ADD_TRAIT # - similar to ZEND_ADD_INTERFACE # - adds the trait to the list of traits of a class, no actual composition done # ZEND_BIND_TRAITS # - emitted in zend_do_end_class_declaration # - concludes the class definition and will initiate the trait composition # when the class definition is encountered during runtime # # Added Flags # ZEND_ACC_TRAIT = 0x120 # ZEND_ACC_IMPLEMENT_TRAITS = 0x400000 # ZEND_FETCH_CLASS_TRAIT = 14 # # zend_vm_execute.h # - not sure whether the handler initialization (ZEND_ADD_TRAIT_SPEC_HANDLER, # ZEND_BIND_TRAITS_SPEC_HANDLER) is correct, maybe it should be more selective # # zend_compile.c # - refactored do_inherit_method_check # split into do_inherit_method_check and do_inheritance_check_on_method # - added helper functions use a '_' as prefix and are not mentioned in the # headers # - _copy_functions # prepare hash-maps of functions which should be merged into a class # here the aliases are handled # - _merge_functions # builds a hash-table of the methods which need to be added to a class # does the conflict detection # - reused php_runkit_function_copy_ctor # - it is not identical with the original code anymore, needed to update it # think I fixed some bugs, not sure whether all have been reported back to runkit # - has to be renamed, left the name for the moment, to make its origin obvious # - here might be optimization potential # - not sure whether everything needs to be copied # - copying the literals might be broken # - added it since the literals array is freed by efree and gave problems # with doubled frees # - all immutable parts of the zend_op array should not be copied # - am not sure which parts are immutable # - and not sure how to avoid doubled frees on the same arrays on shutdown # - _merge_functions_to_class # does the final merging with the target class to handle inherited # and overridden methods # - small helper for NULL terminated lists # zend_init_list, zend_add_to_list # # zend_language_parser.y # - reused class definition for traits # - there should be something with regard to properties # - if they get explicitly defined, it might be worthwhile to # check that there are no collisions with other traits in a composition # (however, I would not introduce elaborate language features to control that # but a notice for such conflicts might be nice to the developers)
* Changed the exclusion keyword from 'instead' to 'insteadof'. [TRAITS]Stefan Marr2010-04-224-5/+5
| | | | | | #That was suggested several times already, but am still not sure whether that really reads better. #Especially since only the trait is mentioned, since the method name would be duplicated anyway.
* Removed unused functionDmitry Stogov2010-04-221-5/+0
|
* Optimized access to global constants using values with pre-calculated ↵Dmitry Stogov2010-04-227-36/+162
| | | | hash_values from litersls table
* - Removed unused variablesFelipe Pena2010-04-222-24/+0
|
* ZEND_RETURN is splitted into two new instructions ZEND_RETURN and ↵Dmitry Stogov2010-04-224-231/+369
| | | | ZEND_RETURN_BY_REF
* Removed import_request_variables(), this is not needed anymore without ↵Kalle Sommer Nielsen2010-04-211-0/+2
| | | | register_globals
* - Dropped unused HL_BG_COLOR (Kalle)Felipe Pena2010-04-211-1/+0
|
* Remove highlight.bg, it was removed in the old trunk and its not referenced ↵Kalle Sommer Nielsen2010-04-214-4/+0
| | | | in zend_highlight.c, meaning its not even implemented correctly in 5.3.
* - Fix ZTS buildFelipe Pena2010-04-211-9/+9
|
* Eliminated unnecessary compile-time hash_value recalculation for interned ↵Dmitry Stogov2010-04-211-85/+111
| | | | strings
* Removed register_globalsKalle Sommer Nielsen2010-04-211-12/+5
|
* add test for self:: and static::Stanislav Malyshev2010-04-201-0/+47
|
* WSJohannes Schlüter2010-04-201-2/+2
|
* fix ZTS buildAntony Dovgal2010-04-201-1/+1
|
* Fixed bug #48781 (Cyclical garbage collector memory leak)Dmitry Stogov2010-04-201-0/+2
|
* Updated version numbersDmitry Stogov2010-04-203-3/+3
|
* Added a number of small performance tweaks and optimizationsDmitry Stogov2010-04-2018-6973/+9920
| | | | | | | . ZEND_RECV now always has IS_CV as its result . ZEND_CATCH now has to be used only with constant class names . ZEND_FETCH_DIM_? may fetch array and dimension operans in a different order
* regenerated filesDmitry Stogov2010-04-202-335/+341
|
* Added concept of interned strings. All strings constants known at compile ↵Dmitry Stogov2010-04-2023-152/+784
| | | | time are allocated in a single copy and never changed.
* Changed the structure of op_array.opcodes. The constant values are moved ↵Dmitry Stogov2010-04-2018-6185/+6835
| | | | from opcode operands into a separate literal table
* Added an optimization which saves memory and emalloc/efree calls for empty ↵Dmitry Stogov2010-04-201-23/+34
| | | | HashTables
* Added a micro benchmark which measures the performance of some primitive ↵Dmitry Stogov2010-04-201-0/+275
| | | | operations. It's usefult to detect performance evaluation caused by new patches.
* restore $this support for closures to its former gloryStanislav Malyshev2010-04-1913-25/+304
|
* Added traits test cases. No engine changes for now. [TRAITS]Stefan Marr2010-04-1530-0/+866
| | | | | | #Getting accustomed to the infrastructure. #Any comments are welcome, especially with regard to syntax and keywords.
* Removed register_long_arrays ini option (and $HTTP_SESSION_VARS from ↵Kalle Sommer Nielsen2010-04-151-5/+3
| | | | ext/session)
* change namespaced ctors - only __construct would workStanislav Malyshev2010-04-042-16/+8
|
* - Fixed bug #51445 (var_dump() invalid/slow *RECURSION* detection)Felipe Pena2010-04-0217-177/+42
|
* fix #49192 - crash in GC when get_properties handler returns nullStanislav Malyshev2010-04-011-8/+40
|
* fix #51394 - try harder to find script lineno when exception happensStanislav Malyshev2010-04-012-0/+20
|
* Set session.entropy_file to /dev/urandom or /dev/arandom byRasmus Lerdorf2010-03-311-0/+7
| | | | | default if present at compile-time. Addresses part of bug #51436
* Add some const declarations, makes C++ extension writers happyJohannes Schlüter2010-03-301-2/+2
|
* - Reverted r296062 and r296065Jani Taskinen2010-03-122-37/+36
|
* MFH: Improved / fixed output buffering (Michael Wallner)Jani Taskinen2010-03-112-36/+37
|
* - Fixed bug #50383 (Exceptions thrown in __call / __callStatic do not ↵Felipe Pena2010-03-072-1/+133
| | | | include file and line in trace)