Commit Graph

960 Commits

Author SHA1 Message Date
Felipe Pena
caa863dc42 - Fixed bug #60099 (__halt_compiler() works in braced namespaces) 2011-11-16 17:41:40 +00:00
Stefan Marr
b632cd196e Fixed inconsistent whitespace.
# Belongs to svn rev. 318793.
2011-11-05 02:05:28 +00:00
Stefan Marr
12cf1b7978 Fixed Bug #60217 (Requiring the same method from different traits)
- also added test to check for inconsistent abstract method definitions, they need to be compatible
2011-11-05 01:46:40 +00:00
Antony Dovgal
fadba4d1c4 use jmp_addr only when it's initialized 2011-11-03 08:39:12 +00:00
Antony Dovgal
6acbe5155e fix folding, ws and cs 2011-11-02 21:12:13 +00:00
Antony Dovgal
bff7cbc87c initialize variable and fix segfaulting tests 2011-11-02 21:05:36 +00:00
Stefan Marr
7cd55955d1 Fixed Bug #60153 (Interface method prototypes not enforced when implementd via traits.)
# Moved the freeing of overriden functions to a point after the check.
# The new check comes after the normal inheritance check to give the first check
# the opportunity to abort with a more detailed error.
# Also fixed a small type in an unrelated test.
2011-11-01 15:25:24 +00:00
Stefan Marr
ce0ddd5a34 Added missing consistency check for abstract methods required by one trait and implemented by another. 2011-11-01 13:42:53 +00:00
Stefan Marr
3b74bba724 Fixed Bug #60145 (Usage of trait's use statement inside interfaces not properly checked.) 2011-11-01 00:39:10 +00:00
Xinchen Hui
725af4c2dd Fixed bug #60174 (Notice when array in method prototype error)
this should also exists in ext/reflection. since the new warning of "array to string convert" is introduced in zend_make_printable_zval which is used in ext/reflection too
2011-10-31 03:47:11 +00:00
Arnaud Le Blanc
ea5a61e39b Improved ternary operator performance when returning arrays 2011-10-18 19:42:42 +00:00
Stanislav Malyshev
70a6a67c1e Bug #55754 - Only variables should be passed by reference for ZEND_SEND_PREFER_REF params 2011-10-16 00:34:01 +00:00
Stefan Marr
7e4b9800f4 Fixed Bug #55554 (Legacy constructors not handled properly) [TRAITS] [DOC]
# The handling of legacy constructors defined by traits was corrected.
# They are now properly registered and used on instantiation.
# The situation for conflicting legacy and __construct constructors is
# mostly identical. If they are defined in the class, they override conflicts
# and do not collide. However, in case different styles are mixed, between
# class and trait definition, we assume a programmer's mistake and report
# a collision.
#
# BTW: +1 for all the fixed tests! `make test` is fun again.
2011-10-09 11:13:27 +00:00
Stefan Marr
9d30c4896f Use ZEND_ constants instead of plain strings for names of magic methods.
# No functional changes.
2011-10-08 23:47:16 +00:00
Xinchen Hui
50bf7a1182 Remove unecessary codes 2011-10-07 04:14:31 +00:00
Xinchen Hui
37e1ed68e5 Fixed bug #55825, and add test script 2011-10-03 17:01:17 +00:00
Xinchen Hui
8cefbca521 Improve the warning message of incompatible arguments. (#55719)
And fix tests related.
2011-09-23 15:08:11 +00:00
Derick Rethans
1777d6fa79 - Fixed compiler warnings (patch by Kalle Sommer Nielsen) 2011-09-13 15:17:11 +00:00
Dmitry Stogov
e43ff1359e Fixed ZE specific compile warnings (Bug #55629) 2011-09-13 13:29:35 +00:00
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