Pierrick Charron
3f2bcb7723
Coding standard
2011-12-06 06:44:22 +00:00
Xinchen Hui
d18a61aefb
Fix typo
2011-12-05 12:33:56 +00:00
Dmitry Stogov
1d6c98a136
Fixed bug #60444 (Segmentation fault with include & class extending)
2011-12-05 09:20:12 +00:00
Stefan Marr
db0888dfc1
Fixed Bug #60369 Crash with static property in trait
2011-11-23 21:24:34 +00:00
Felipe Pena
bc810a443d
- Fixed bug #43200 (Interface implementation / inheritence not possible in abstract classes)
2011-11-19 13:36:03 +00:00
Felipe Pena
cc8573e7a5
- CS
2011-11-18 13:56:41 +00:00
Stefan Marr
76772dc20d
Fixes Bug #54441 (Handling of changing modifiers on a trait alias)
...
# this now results also in a compilation error, since it would open the door for inconsistencies, and violates the DRY principle.
2011-11-18 13:49:07 +00:00
Felipe Pena
c5ec9dd650
- Fix build
2011-11-17 21:07:52 +00:00
Stefan Marr
c5ba229617
Fixed Bug #60165 (Aliasing unexisting trait should throw/trigger the exception/error)
...
- aliases that are not actually matching anything are treated as errors now. This
will make sure that all methods that are expected to be in a class are actually
there, or in case a trait changed for instance, that the code breaks already
on composition
- Precedence declarations are also checked to ensure that the method
which is supposed to take precedence actually exists, however,
the other traits mentioned in the declaration are not regarded.
We are more lenient here, since this avoids unnecessary fragility.
- fixed another seamingly unrelated test which broke in the progress
but wasn't clear before either.
2011-11-17 21:04:15 +00:00
Felipe Pena
3c7a573a2c
- Fixed bug #60099 (__halt_compiler() works in braced namespaces)
2011-11-16 17:41:40 +00:00
Stefan Marr
5745f95372
Fixed inconsistent whitespace.
...
# Belongs to svn rev. 318793.
2011-11-05 02:05:28 +00:00
Stefan Marr
7334dfd7eb
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
36103d1236
use jmp_addr only when it's initialized
2011-11-03 08:39:12 +00:00
Antony Dovgal
ed276758f7
fix folding, ws and cs
2011-11-02 21:12:13 +00:00
Antony Dovgal
8d520d6296
initialize variable and fix segfaulting tests
2011-11-02 21:05:36 +00:00
Stefan Marr
4591498df7
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
9b0d73af1d
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
b5f15ef561
Fixed Bug #60145 (Usage of trait's use statement inside interfaces not properly checked.)
2011-11-01 00:39:10 +00:00
Xinchen Hui
5921e73a37
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
07b7ba8b40
Improved ternary operator performance when returning arrays
2011-10-18 19:42:42 +00:00
Stanislav Malyshev
05c5c8958e
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
e14354af21
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
469fc0a341
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
4ffc16611d
Remove unecessary codes
2011-10-07 04:14:31 +00:00
Xinchen Hui
2e925f6f19
Fixed bug #55825 , and add test script
2011-10-03 17:01:17 +00:00
Xinchen Hui
c58f254354
Improve the warning message of incompatible arguments. ( #55719 )
...
And fix tests related.
2011-09-23 15:08:11 +00:00
Derick Rethans
a70889f8fd
- Fixed compiler warnings (patch by Kalle Sommer Nielsen)
2011-09-13 15:17:11 +00:00
Dmitry Stogov
4a25a7740d
Fixed ZE specific compile warnings (Bug #55629 )
2011-09-13 13:29:35 +00:00
Stefan Marr
117e072941
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
133596b6f7
Improve errormessage on wrong use statements
2011-08-16 10:46:49 +00:00
Hannes Magnusson
550980cfe5
Callable typehint following the rules of is_callable($arg, false);
2011-08-16 10:44:47 +00:00
Stefan Marr
4a51ea4b81
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
0500cffb2e
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
f2ed1242d6
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
c312e60280
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
65cbcb3be9
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
f52197815a
- 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
9a483afa5b
Fixed incorrect initialization when copied op_array.vars was NULL (TRAITS)
2011-07-23 18:12:31 +00:00
Stefan Marr
9f66085649
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
f214fd4f7d
Fixed bug #55150 (php -a segfaults)
2011-07-11 07:10:30 +00:00
Felipe Pena
c5901b64a7
- Added zend_is_auto_global_quick function
2011-07-10 15:03:38 +00:00
Felipe Pena
9aa25d0938
- Minor optimization taking the computed hash of interned strings
2011-07-10 12:37:42 +00:00
Felipe Pena
70cacfd3a8
- 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
644b5fdec0
- WS
2011-07-09 14:35:37 +00:00
Felipe Pena
32a4d68013
- Minor optimization and clean up
2011-07-09 12:06:11 +00:00
Felipe Pena
32f47f5c41
- CS and WS
2011-07-08 19:52:21 +00:00
Felipe Pena
09842e83ba
- Fixed bug #55156 (ReflectionClass::getDocComment() returns comment even though the class has none)
2011-07-07 23:07:14 +00:00
Felipe Pena
8953916314
- Fixed bug #55137 (Changing trait static method visibility)
2011-07-06 00:33:38 +00:00
Felipe Pena
d8e8e68f07
- 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
b3a063643b
- Optimize property finding by zend_hash_quick_find
2011-06-20 02:04:13 +00:00