Commit Graph

941 Commits

Author SHA1 Message Date
Pierre Joye
58a96d5588 - WS 2011-09-06 06:32:00 +00:00
Stefan Marr
1f4dfded59 Fixed bug #55524 Traits should not be able to extend a class
# also used the Z_STRVAL where it seemed appropriate
2011-08-29 15:53:46 +00:00
Hannes Magnusson
b55d116e9a Improve errormessage on wrong use statements 2011-08-16 10:46:49 +00:00
Hannes Magnusson
306c42023e Callable typehint following the rules of is_callable($arg, false); 2011-08-16 10:44:47 +00:00
Stefan Marr
466d5414df Bug #55424 Fatal error when calling a method from a trait that is defined in parent class and required by using an abstract method in the trait.
# The method got unconditionally deleted from the class, since it was assumed that we override it, but we did not in case of abstract methods coming from a trait. Thus, dont delete when we try to merge in an abstract method.
2011-08-15 22:16:58 +00:00
Stefan Marr
f4d3d6c439 Fixed Bug #55355: Inheritance chain was not regarded when checking whether the abstract method of a trait is satisfied. 2011-08-15 11:16:18 +00:00
Stefan Marr
b14b440c93 Fixed Bug #55372 Incorrect handling of literals led to memory corruption.
# Dmitry you might want to review this patch, since I split up zend_add_literal
# and added a version for post-pass_two() usage.
2011-08-15 09:54:06 +00:00
Stefan Marr
adfdd01372 Addendum for patch to bug #55214: Class name was freed before method literal referring to it.
# Thanks to Felipe for catching this.
# The fix duplicates the name into the literal to avoid the dependency
2011-08-15 08:29:48 +00:00
Stefan Marr
88f497f27d Fixed Bug #55214 use of __CLASS__ within trait returns trait name not class name [TRAITS] [DOC] 2011-07-31 18:18:56 +00:00
Felipe Pena
b07c3c3e01 - Fixed bug #55326 (Trait method copying misindentifies serialization callbacks)
patch by: Gustavo Lopes (cataphract@php)
2011-07-31 12:27:47 +00:00
Stefan Marr
c9fdd777fb Fixed incorrect initialization when copied op_array.vars was NULL (TRAITS) 2011-07-23 18:12:31 +00:00
Stefan Marr
f295302af6 Fixed bug in the handling of conflicting property initializers for traits.
# Bug was uncovered by discussion in http://news.php.net/php.internals/54129
# Forgot to check the actual value of the initializer comparison, only checked
# whether comparison was successful which is not enough.
2011-07-23 13:48:07 +00:00
Dmitry Stogov
fb6440b4f1 Fixed bug #55150 (php -a segfaults) 2011-07-11 07:10:30 +00:00
Felipe Pena
62e4cfc2d0 - Added zend_is_auto_global_quick function 2011-07-10 15:03:38 +00:00
Felipe Pena
17a7fd0656 - Minor optimization taking the computed hash of interned strings 2011-07-10 12:37:42 +00:00
Felipe Pena
0fe6fd9e89 - Changed zend_resolve_class_name() prototype
# No needed to pass fetch_type as pointer here
2011-07-09 17:27:59 +00:00
Felipe Pena
5cb1602aab - Minor optimization and clean up 2011-07-09 12:06:11 +00:00
Felipe Pena
31c043e7af - CS and WS 2011-07-08 19:52:21 +00:00
Felipe Pena
866240200f - Fixed bug #55156 (ReflectionClass::getDocComment() returns comment even though the class has none) 2011-07-07 23:07:14 +00:00
Felipe Pena
8cf3c27f82 - Fixed bug #55137 (Changing trait static method visibility) 2011-07-06 00:33:38 +00:00
Felipe Pena
0124c28610 - Fixed bug #55086 (Namespace alias does not work inside trait's use block)
patch by: Pierrick
2011-07-02 17:12:20 +00:00
Felipe Pena
58d41e5753 - Optimize property finding by zend_hash_quick_find 2011-06-20 02:04:13 +00:00
Felipe Pena
d188a36547 - Simplify function code 2011-06-20 01:36:23 +00:00
Felipe Pena
b26f6cb0f6 - Avoid re-hash here too 2011-06-20 01:21:47 +00:00
Felipe Pena
142ce5c949 - Minor optimization (avoid to re-hash already computed var name hash) 2011-06-19 21:56:09 +00:00
Felipe Pena
c34b86c454 - Removed unnecessary TSRMLS_FETCH 2011-06-19 20:16:08 +00:00
Felipe Pena
50ade27198 - Fix build on Windows 2011-06-13 17:52:23 +00:00
Felipe Pena
a43b067172 - Fixed bug #54624 (class_alias and type hint) 2011-06-12 21:10:31 +00:00
Felipe Pena
e613aae620 - Avoid zend_do_ticks() call for each statement in parsing 2011-06-12 01:43:10 +00:00
Stanislav Malyshev
d7c9c5af92 scalar types cleanup 2011-06-03 01:09:32 +00:00
Felipe Pena
180146d49b - Fixed bug #54804 (__halt_compiler and imported namespaces) (Pierrick) 2011-05-19 23:20:47 +00:00
Pierre Joye
7ee407eb37 - WS 2011-05-17 10:39:18 +00:00
Stefan Marr
8ba00176f1 Fixed a inconsitent condition for aliasing traits.
- missed a failing Traits test, but is now fixed, and the bug covered by a dedicated test
# Should always comment conditions that go over more than two lines :-/
2011-05-13 20:28:34 +00:00
Moriyoshi Koizumi
cdb9ee0d1a Fix zend.multibyte oddities. Hope this will address all the known problems. 2011-03-06 07:00:30 +00:00
Felipe Pena
f6a3cd6f57 - Fixed bug #53748 (Using traits lead to a segmentation fault) 2011-01-28 21:19:09 +00:00
Pierre Joye
9885f30873 - fix warning about undefined zend_multibyte_set_filter and zend_multibyte_yyinput_again, why are they not in zend_multibyte.h btw? 2011-01-19 21:40:15 +00:00
Pierre Joye
a27baa7161 - WS 2011-01-19 17:17:52 +00:00
Pierre Joye
3584bbee3b - avoid local redeclaration 2011-01-19 17:06:50 +00:00
Felipe Pena
0203cc3d44 - Year++ 2011-01-01 02:17:06 +00:00
Stefan Marr
d6ac811e5d Removed dead code.
# should not have been commited in the first place.
2010-12-20 08:49:59 +00:00
Felipe Pena
3e3d7c52f0 - Fix build 2010-12-20 01:42:25 +00:00
Stefan Marr
7357867bac Added strict handling of properties in traits.
# This is the first attempt to implement the properties as discussed on the mailinglist.
# RFC is not updated to reflect this changes, yet.
2010-12-20 00:52:40 +00:00
Moriyoshi Koizumi
bbf3d43c1e * Refactor zend_multibyte facility.
Now mbstring.script_encoding is superseded by zend.script_encoding.
2010-12-19 16:36:37 +00:00
Stefan Marr
d7c3c627e8 Changed E_ERROR to E_COMPILE_ERROR for Trait compilation errors.
#Thanks for catching this Kalle.
2010-12-12 17:12:29 +00:00
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
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