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
b7a8297bc1
- Boost up __autoload() calls by caching the lookup
2004-08-23 20:57:40 +00:00
Andi Gutmans
57ba9b8ccf
- Second wave of garbage removal.
2004-08-19 20:29:04 +00:00
Marcus Boerger
5f0433db83
MFB: Enforce protocol on magic methods/functions
2004-08-02 08:27:57 +00:00
Andi Gutmans
d7c839d54f
- More ptr_stack optimizations and cleanups
2004-07-30 21:00:37 +00:00
Marcus Boerger
0cd2da0309
- Execute destructors earlier (Florian Schaper, fschaper at intux org)
2004-07-25 07:14:49 +00:00
Wez Furlong
af9c0b84cd
No point allocating 0 bytes
2004-07-18 09:55:02 +00:00
Wez Furlong
d80297b251
Fix bug #28438 : win32 build fails in non-zts mode
2004-05-18 20:14:54 +00:00
Dmitry Stogov
09d1d232fc
fix of fix related to __autoload. (ext/standard/tests/network/bug20134.phpt passes again)
2004-03-28 09:37:30 +00:00
Andi Gutmans
d6d52f6f2e
/* The compiler is not-reentrant. Make sure we __autoload() only during run-time
...
* (doesn't impact fuctionality of __autoload()
*/
2004-03-25 11:30:02 +00:00
Dmitry Stogov
2bbba73606
Using ALLOC_HASHTABLE/FREE_HASHTABLE instead of emalloc/free.
2004-03-25 08:14:33 +00:00
Dmitry Stogov
55cf45abf5
New autoload protection schema was implemented (Using HashTable instead of boolean flag)
2004-03-24 14:30:59 +00:00
Marcus Boerger
cbaa43ff12
Fix SEGV in certain conditions while calling static methods
2004-03-16 21:29:22 +00:00
Marcus Boerger
6e8c176a9d
TSRM fix
2004-03-16 18:04:25 +00:00
Derick Rethans
b0dbd2abcc
- Spaces to tabs
2004-03-16 14:59:06 +00:00
Andi Gutmans
833b97d4c2
- If the called method is static then don't define $this
2004-03-16 14:49:52 +00:00
Andi Gutmans
0041aff953
- Error out if get_method() isn't defined.
...
- Use calling scope of internal function callee when calling a method
using static syntax (array("A", "func"));
2004-03-16 14:39:07 +00:00
Marcus Boerger
09e76476ef
Improve error message
2004-03-16 10:14:57 +00:00
Andi Gutmans
1aedb9615a
- Fix windows build
2004-03-14 18:00:40 +00:00
Andi Gutmans
37d713ea49
- Fix for bug #27504
2004-03-14 17:52:58 +00:00
Marcus Boerger
50ee116f08
Clearify the different method/class flags (as discussed with Andi).
2004-03-09 16:38:37 +00:00
Marcus Boerger
c3b06ea21e
Check count.
2004-03-08 16:52:59 +00:00
Andi Gutmans
7c72f6ff61
- Fix crash in exception handling (zend_exception_error(...) and
...
zend_eval_string_ex() were buggy (Dmitry, Andi)
2004-03-01 13:29:45 +00:00
Zeev Suraski
eb6fd52e21
- Rename compatiblity mode to zend.ze2_compatibility_mode (it doesn't only affect auto-clone).
...
- Perform implementation checks even with simple inheritance (off when
compatibility mode is enabled).
- Restore default arguments in interfaces and handle it correctly.
- Move registration of internal classes later in the startup sequence
in order to have INI options available.
2004-02-25 10:57:10 +00:00
Zeev Suraski
00ed3bad29
Centralize exceptions code in zend_exceptions.[ch].
...
Remove zend_default_classes.h (use zend_exceptions.h instead)
NOTE: This currently breaks the build, fixes to php-src and pecl coming
soon
2004-02-12 10:38:14 +00:00
Zeev Suraski
d9630a595b
Exceptions updates:
...
- Enforce exceptions to be derived from class Exception. This allows
users to perform catch-all. It's not yet complete, so don't get
comfortable with it just yet :) Updates are coming soon.
- Implement zend_throw_exception() using zend_throw_exception_ex()
2004-02-12 10:24:40 +00:00
Andi Gutmans
559b14611d
- Add API function to throw exception by using an object
2004-02-12 09:50:08 +00:00
Zeev Suraski
75390796be
Fix bug #25038
2004-02-11 13:01:39 +00:00
Zeev Suraski
6b6fe2f76e
Fix exceptions thrown without a stack frame
...
Always enable set_exception_handler()
2004-02-11 12:31:18 +00:00
Zeev Suraski
73a6bcf5cf
Complete the fix for handling of exceptions happening during the
...
argument passing phase of function calls (fixes bug #26866 )
2004-02-11 09:42:58 +00:00
Zeev Suraski
4b632eba46
whitespace
2004-02-11 09:42:10 +00:00
Zeev Suraski
da36a7c249
Fix bug #26869
2004-02-10 15:30:32 +00:00
Zeev Suraski
e28ab687d2
Fix exceptions happening inside internal functions called through
...
zend_user_function()
2004-02-04 23:48:39 +00:00
Zeev Suraski
14ac17fa95
Remove double initialization
2004-02-04 23:28:40 +00:00
Zeev Suraski
c5d842279c
Reinstate early-binding for classes.
...
Note that this is available for downwards compatibility only - and it doesn't
work if you use new features (namely, interfaces). Generally, people should
declare their classes before using them, but we just didn't want hell to break
loose (c)
2004-02-04 16:30:15 +00:00
Zeev Suraski
f5f7d569a0
Change destructor implementation (details will follow on internals@)
2004-02-04 09:56:20 +00:00
Zeev Suraski
c5a7b668cd
- Clean garbage (delete was nuked a long time ago)
2004-02-03 15:37:37 +00:00
Zeev Suraski
9e60cb553f
Rewrote exception support. Fixes a few limitations and bugs in the old
...
implementation, and allows exceptions to 'fire' much earlier than before.
Instructions on how to use the new mechanism will follow on internals@
shortly...
Note - this (most probably) breaks the current implementation of
set_exception_handler()
2004-02-03 12:17:09 +00:00
Zeev Suraski
c15d4ddb2b
Forward-port fix for timeouts under Windows
2004-01-28 09:07:02 +00:00
Marcus Boerger
3ca44539a1
Switch from ZEND_ACC_DYNAMIC to ZEND_ACC_ALLOW_STATIC and disallow calling
...
internal non-static methods statically.
# As discussed with Zeev:
# - For BC standard userspace methods allow this with an E_STRICT message.
# - If you want to implement an internal method taht can be called both
# statically and non-statically then use flag ZEND_ACC_ALLOW_STATIC.
# - Magic user space methods __*() cannot and __construct, __destruct,
# __clone can never be called statically.
2004-01-24 16:59:24 +00:00
Sebastian Bergmann
1e902b696d
Change message as proposed by Jon.
2004-01-24 04:59:47 +00:00
Marcus Boerger
6020ffd007
Simplify detection of methods that must be called dynamic (with object)
2004-01-23 22:04:42 +00:00
Marcus Boerger
79e7145cc7
Disallow calling __clone/__construct/__destruct static
...
Send an E_STRICT when calling a non static method static
2004-01-23 20:58:23 +00:00
Marcus Boerger
3df0288490
Improove debug capabilities
2004-01-18 23:47:10 +00:00
Zeev Suraski
a72c1ab93b
Added error mask to set_error_handler()
...
Patch by Christian Schneider <cschneid@cschneid.com>
2004-01-10 11:43:42 +00:00
foobar
ccfc46b0aa
- Happy new year and PHP 5 for rest of the files too..
...
# Should the LICENSE and Zend/LICENSE dates be updated too?
2004-01-08 17:33:29 +00:00
Marcus Boerger
03e039b19d
Fix __autoload() with derived classes
2003-12-29 12:35:44 +00:00
Marcus Boerger
c6cb00fe59
Fixed bug #26697 (calling class_exists on a nonexistent class in __autoload
...
results in segfault).
2003-12-23 10:45:10 +00:00
Dmitry Stogov
ae4a09b239
*** empty log message ***
2003-12-17 15:08:13 +00:00