Commit Graph

118 Commits

Author SHA1 Message Date
Felipe Pena
a5f867f3d5 - Constness (Added const qualifier to several function parameters) 2008-08-12 17:15:59 +00:00
Dmitry Stogov
b8d7c7e91d - Removed direct executor recursion.
- Use fastcall calling convention in executor on x86.
2008-06-11 13:19:14 +00:00
Dmitry Stogov
aa82b397da Selected better initial VM stack size 2008-04-15 15:52:48 +00:00
Rasmus Lerdorf
b911467d1d MFB
Here are the signal changes from the 5.3 branch that optimizes signal
handler registration and switches from longjmp to siglongjmp in order
to make signal mask handling consistent across different UNIX operating
systems.
2008-03-19 16:37:49 +00:00
Dmitry Stogov
a8c6814840 Fixed warning 2008-03-12 08:53:10 +00:00
Dmitry Stogov
c5959feae1 Fixed types 2008-01-29 11:13:18 +00:00
Stanislav Malyshev
5ef04d359d fix type 2008-01-28 23:57:04 +00:00
Dmitry Stogov
2971e13836 Changed EG(argument_stack) implementation. 2008-01-24 09:41:48 +00:00
Sebastian Bergmann
9b620d50b4 Bump copyright year, 2 of 2. 2007-12-31 07:12:20 +00:00
Dmitry Stogov
618644c201 - in case of ambiguity class name in namespace call __autoload() only after
checking for both (class from current namespace and internal class)
- improved class fetching performance
- fixed wrong (lowercase) name passed to __autoload() from call_user_func()
2007-09-11 11:23:12 +00:00
Jani Taskinen
5d0176a32b - Fix compile warnings 2007-07-21 00:34:41 +00:00
Dmitry Stogov
2908322c14 WIN64 support 2007-04-16 09:43:53 +00:00
Dmitry Stogov
f6387758c6 - Fixed bug #35106 (nested foreach fails when array variable has a reference).
- Fixed bug #36214 (__get method works properly only when conditional operator is used).
- Fixed bug #39449 (Overloaded array properties do not work correctly).
- Fixed bug #39990 (Cannot "foreach" over overloaded properties).
2007-01-10 15:59:56 +00:00
Sebastian Bergmann
3717df72ae Bump year. 2007-01-01 09:29:37 +00:00
Sara Golemon
63c3ea2dcd Put zend_lookup_class_ex back into the API for BC. 2006-11-08 10:09:17 +00:00
Johannes Schlüter
0e58baae93 - Fix #38465 (ReflectionParameter fails if default value is an access to self:: 2006-10-18 16:34:25 +00:00
Andrei Zmievski
83e0dbb3d2 - Add an extra parameter to the cast_object handler that can be used by
various types as needed.
- Use that parameter to pass a specific converter for
  IS_UNICODE/IS_STRING types.
2006-10-13 14:52:19 +00:00
Andrei Zmievski
0667864631 Callable checks and class fetching and lookup should support identifer
normalization now. (Marcus, Andrei)
2006-07-18 17:52:45 +00:00
Dmitry Stogov
4e662470f7 Keeping consistent arg_stack during arguments freeing (Exception from destructor may use inconsistent arg_stack for backtrace). 2006-05-31 13:02:15 +00:00
Dmitry Stogov
7c0e534157 Dropped zend.ze1_compatibility_mode 2006-03-16 10:33:23 +00:00
Andrei Zmievski
ba0b3868ee Clean up after Marcus. 2006-03-03 23:23:17 +00:00
Marcus Boerger
03be54de37 - Make unicode handling portable (noted by andrei)
# Actually we should provide much more such unicode strings that we often
# use like 'parent', 'self' and so on.
2006-03-03 23:20:29 +00:00
Dmitry Stogov
e3b7f3fd0d Unicode support: MS Visual C compatibility 2006-02-26 11:57:14 +00:00
Dmitry Stogov
0f1209ab3d Portable unicode string API:
- use the same type (int) for zval.value.usr.len and zval.value.str.len
  - use union "zstr" as char*/UChar* mixture instead of void*
  - Z_UNISTR() and Z_UNILEN() no longer check for Z_TYPE()
  - nuke int32_t from ZE (not finisned)
2006-02-21 20:12:43 +00:00
Dmitry Stogov
2e5d0a3a9d WS 2006-02-21 08:00:39 +00:00
Dmitry Stogov
b424a32610 Preparation for portable string API (use macroses to access zval). 2006-02-20 19:03:43 +00:00
Dmitry Stogov
227295a4f1 Unicode stuff is changed according to decision maden on PDM.
Now IS_BINRAY data type is removed and IS_STRING starts behave as IS_BINARY in unicode mode. IS_STRING is incompatible with IS_UNICODE, so ALL functions should be improved to support unicode mode.
2006-01-17 12:18:53 +00:00
Andi Gutmans
5de7cc3194 - Update copyright notices to 2006 2006-01-04 23:54:12 +00:00
Marcus Boerger
7c083fcc07 - Have __toString() be called if available in all places an object is used
as a string.
#
# Note that "Object #<id>" is no longer afallback for debugging purpose use
# var_dump, which was made for debugging. If you used this to grab the id
# of an object you can never rely on this. For object storage look at SPL's
# ObjectStorage class.
#
# Note the signature change in the cast handler:
#
# int (*cast_t)(zval *readobj, zval *writeobj, int type, int should_free TSRMLS_DC);
# int (*cast_t)(zval *readobj, zval *retval, int type TSRMLS_DC);
2005-10-05 19:02:27 +00:00
Marcus Boerger
6d703c5967 - In a conditional statement "a ? b ? c", a and b MUST have the same type
# We should make this an inline function to prevent unnecessary calls to
# get classentry or requir that class_entry must return a valid class_entry
# which we do iirc anyway.
2005-10-03 19:24:09 +00:00
Dmitry Stogov
b3ec0a78c9 MFH (removed unnecesary call to zval_ptr_dtor) 2005-09-19 17:50:11 +00:00
Dmitry Stogov
0a54602089 Fixed bug #34199 (if($obj)/if(!$obj) inconsistency) 2005-09-12 11:48:28 +00:00
Dmitry Stogov
24743055a3 Changed is_a() and is_subcalls_of() functions to not call __autoload() (in the same way as "instanceof" operator). 2005-08-23 07:23:30 +00:00
Andrei Zmievski
b80cb7bd2f Unicode support 2005-08-11 23:35:03 +00:00
foobar
916815b779 Bump up the year 2005-08-03 13:30:58 +00:00
Dmitry Stogov
61b9dedd90 Export zend_do_fcall() helper from executor 2005-06-24 12:33:53 +00:00
Stanislav Malyshev
999998ecaa rename to zend_ 2005-06-16 14:27:08 +00:00
Stanislav Malyshev
87c9e68c91 export zval getters 2005-06-16 11:50:08 +00:00
Dmitry Stogov
3c1a774ddc USER_OPCODE API is improvet.
Implemented ability to dispatch from user handler to internal handler of another opcode.
2005-06-16 06:00:48 +00:00
Dmitry Stogov
84b96e9b03 Fix so that extensions like xdebug, can overload opcodes in all execution modes including goto/switch 2005-06-10 09:54:38 +00:00
Andi Gutmans
8838c0f860 - Two new API calls for Derick (retreive CV name and value) by Dmitry 2005-01-22 02:29:18 +00:00
Andi Gutmans
f82ed13625 - Commit new VM architecture. This one allows people (aka Derick) to
- ask the engine to use function handler mode. Will update the README
- about that.
2004-09-23 21:43:32 +00:00
Andi Gutmans
d9252aa1ea - Fix for bug #29707 2004-09-21 22:09:22 +00:00
Andi Gutmans
96ab56e146 - Roll back VM commit 2004-09-09 16:47:22 +00:00
Andi Gutmans
8eb8850c90 - Some architectural changes:
a) We specialize opcodes according to op_type fields. Each opcode has to
    be marked with which op_type's it uses.
 b) We support different execution methods. Function handlers, switch()
    and goto dispatching. goto seems to be the fastest but it really
    depends on the compiler and how well it optimizes. I suggest playing
    around with optimization flags.

- Warning: Things might break so keep us posted on how things are going.
  (Dmitry, Andi)
2004-09-08 22:14:12 +00:00
Marcus Boerger
0cd2da0309 - Execute destructors earlier (Florian Schaper, fschaper at intux org) 2004-07-25 07:14:49 +00:00
Marcus Boerger
09e76476ef Improve error message 2004-03-16 10:14:57 +00:00
Stanislav Malyshev
97e7ce733a fix the fix 2004-03-04 13:11:03 +00:00
Stanislav Malyshev
99edaa3a4f oops, fix cut&paste gone bad 2004-03-04 13:09:03 +00:00
Stanislav Malyshev
f9c65203d2 Fix object true value: if we are in compat mode and it's Zend object -
use PHP4 rules. Otherwise, object is always true.
2004-03-04 13:06:02 +00:00