Stefan Marr
1d2a63da5f
Changed collision warning for Traits to fatal error.
...
#This change is made to have all possible cases of collisions consistently handled as fatal errors.
#The reason to have it fatal is that most likely something changed unexpectedly and needs urgent attention by the developer, since it will fail eventually anyway for instance because the expected method is missing in the class.
#Discussed in this thread: http://marc.info/?l=php-internals&m=129155790226876
2010-12-12 16:48:02 +00:00
Felipe Pena
215917d711
- Fixed ZTS build
2010-12-10 11:33:35 +00:00
Scott MacVicar
d9187596c9
MFH: Fix indirect reference of $this
2010-12-10 06:34:03 +00:00
Dmitry Stogov
755c2cd0d8
Removed compile time dependency from ext/mbstring
2010-12-08 11:27:34 +00:00
Pierre Joye
e72e27eecc
- fix ts build
2010-12-01 16:48:53 +00:00
Dmitry Stogov
a45631d966
Allowed indirect $this access (Scott)
2010-12-01 13:33:49 +00:00
Dmitry Stogov
7628da98c4
Removed support for break/continue $var syntax
2010-11-24 12:19:56 +00:00
Dmitry Stogov
ab93d8c621
Added multibyte suppport by default. Previosly php had to be compiled with --enable-zend-multibyte. Now it can be enabled or disabled throug zend.multibyte directive in php.ini
2010-11-24 05:41:23 +00:00
Felipe Pena
7c541356f3
- Fixed compile warnings
2010-11-23 21:49:18 +00:00
Dmitry Stogov
d72ac0771d
Fixed bug #35547 (Segfault accessing static method)
2010-11-23 10:22:34 +00:00
Stefan Marr
4cc45507da
Fixed problem reported by Patrick ALLAERT. Trait method was not applied properly when fully qualified.
2010-11-18 17:59:04 +00:00
Etienne Kneuss
105db96e78
Fixed covariance of return-by-ref constraints
2010-11-03 15:40:24 +00:00
Etienne Kneuss
9d25e7ee7b
Fixed covariance of return-by-ref constraints
2010-11-03 15:40:24 +00:00
Dmitry Stogov
fa3f0bb63f
Fixed bug #51008 (Zend/tests/bug45877.phpt fails)
2010-10-05 11:28:56 +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
Dmitry Stogov
2188f26c45
Fixed bug #52614 (Memory leak when writing on uninitialized variable returned from method call)
2010-08-25 09:14:36 +00:00
Felipe Pena
2fb2f81538
- Improved fix for bug #52573
2010-08-18 01:59:37 +00:00
Felipe Pena
f3028b9226
- Improved fix for bug #52573
2010-08-18 01:59:37 +00:00
Sascha Schumann
50a0ea7b8c
separate properties of internal classes in ZTS mode fully,
...
otherwise multiple threads will modify the zvals' contents
without any synchronisation.
2010-08-12 07:58:14 +00:00
Dmitry Stogov
7d55780ca0
In ZTS mode default properties and constants of internal classes can't be modified in place and have to be separated
2010-08-11 09:38:41 +00:00
Dmitry Stogov
931c2d104d
In ZTS mode default properties and constants of internal classes can't be modified in place and have to be separated
2010-08-11 09:38:41 +00:00
Dmitry Stogov
3cf5ab9e56
Use interned strings for class names
2010-08-05 13:10:15 +00:00
Dmitry Stogov
6443445f25
ZEND_UNSET_* don't have results
2010-07-29 09:46:59 +00:00
Dmitry Stogov
ca4de03eed
ZEND_FETCH_*_R operations simplified and can't be used with EXT_TYPE_UNUSED flag any more. Thit is very rare and useless case. ZEND_FREE might be required after them instead.
2010-07-16 13:38:09 +00:00
Felipe Pena
b458b1a4c1
- Fix ZTS build
2010-07-08 15:22:11 +00:00
Dmitry Stogov
f0c8366a9e
- use interned strings for auto globals
...
- $GLOBALS became a JIT autoglobal, so it's initialized only if used (this may affect opcode caches)
2010-07-08 14:05:11 +00:00
Dmitry Stogov
1a1178a685
eliminated unnecessary iterations during request startup/shutdown
2010-07-06 11:40:17 +00:00
Felipe Pena
a8e80ec235
- Reverted fix for bug #51421
2010-06-28 16:37:57 +00:00
Felipe Pena
cb6bf19bfa
- Fixed bug #51421 (Abstract __construct constructor argument list not enforced)
2010-06-26 22:05:13 +00:00
Felipe Pena
10a9634bc9
- Fixed bug #51421 (Abstract __construct constructor argument list not enforced)
2010-06-26 22:05:13 +00:00
Felipe Pena
d98de7d248
- Fixed bug #52160 (Invalid E_STRICT redefined constructor error)
2010-06-26 19:19:16 +00:00
Felipe Pena
eb5e97adf5
- Fixed bug #52160 (Invalid E_STRICT redefined constructor error)
2010-06-26 19:19:16 +00:00
Felipe Pena
dc3940bd1c
- Fix ZTS build
2010-06-08 18:02:10 +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
Johannes Schlüter
0262fdf3e9
- A method called like a trait is no constructor
2010-05-29 20:01:08 +00:00
Dmitry Stogov
f7ce69585c
- Interned string related callbacks moved turned from compiler_globals into real globals
...
- Updated API version number
2010-05-25 09:00:20 +00:00
Ilia Alshanetsky
33fae4caa0
Added support for numeric & scalar type hint as defined within
...
http://wiki.php.net/rfc/typecheckingstrictandweak RFC
2010-05-24 18:32:59 +00:00
Dmitry Stogov
f23e857676
Fixed ZTS build
2010-05-24 17:07:52 +00:00
Dmitry Stogov
c5237d82bf
Added caches to eliminate repeatable run-time bindings of functions, classes, constants, methods and properties
2010-05-24 14:11:39 +00:00
Derick Rethans
1bc9247651
- Added scalar typehinting.
2010-05-20 19:18:35 +00:00
Felipe Pena
a7c129af16
- Fix typo (take 3! thanks Chris and Tony)
2010-05-07 17:57:09 +00:00
Felipe Pena
91c46fd26e
- Fix error message wording (Kalle)
2010-05-07 17:18:49 +00:00
Felipe Pena
c95b4ace40
- Fixed ZEND_VERIFY_ABSTRACT_CLASS order when using traits
...
# It's the last one now, thus the traits can be used to implement interfaces
2010-05-07 16:29:15 +00:00
Felipe Pena
74fe9dd89e
- Fixed magic method and constructor copy for traits
2010-05-07 13:55:27 +00:00
Felipe Pena
5d701938a3
- Added check for constant creation on Traits
...
- Simplified trait flag check
- Test++ :)
2010-05-07 11:09:35 +00:00
Felipe Pena
ca3656dfe0
- Added check for 'static' on trait visibility modifier
2010-05-06 19:20:12 +00:00
Felipe Pena
363d6e45be
- Fix typos
2010-05-06 18:28:45 +00:00
Felipe Pena
241ceed37e
- Fix error messages & WS
2010-05-06 18:20:38 +00:00
Dmitry Stogov
d5800f881c
Optimized access to static properties using executor specialization. A constant class name may be used as a direct operand of ZEND_FETCH_* instruction without previous ZEND_FETCH_CLASS.
2010-05-06 10:27:35 +00:00
Felipe Pena
a888d2cd16
- Added check for trait when trying to extend it
2010-05-04 18:45:01 +00:00