Stanislav Malyshev
f7f5a5ea6b
MEGA-patch: namespaces are R.I.P.
2003-06-02 12:13:11 +00:00
Derick Rethans
bfaf618b08
- Revert my symbol fix patch, and merge in Stas' fixes to Zend Engine 1.
2003-04-18 17:55:45 +00:00
Derick Rethans
bd77233ee3
- MacOSX also prepends the _ before symbols in bundles
2003-04-18 11:35:22 +00:00
Andrei Zmievski
5657b83691
Multi-purpose patch:
...
- The fields of zend_namespace were not completely initialized which
led to a variety of problems.
- The occurrence of class/interface/namespace definition is now
captured.
- Functions/classes/interfaces/namespaces can be preceded by doc
comments which are stored for use by extensions.
2003-03-31 20:42:01 +00:00
Zeev Suraski
26dd8492ed
Add support for interfaces
2003-03-05 11:14:44 +00:00
Zeev Suraski
955636af69
Avoid using a C++ reserved word
2003-02-18 17:18:28 +00:00
Wez Furlong
e52aac940f
Implement simple stream support in the ZE scanners.
2003-02-18 09:37:54 +00:00
Stanislav Malyshev
a4c3b2ce80
Namespace patch. Big changes:
...
1. Nested classes are gone.
2. New syntax for namespaces:
namespace foo {
class X { ... }
function bar { ... }
var x = 1;
const ZZ = 2;
}
3. Namespaced symbol access: $x = new foo::X; - etc.
For now, namespaces are case insensitive, just like classes.
Also, there can be no global class and namespace with the same name
(to avoid ambiguities in :: resolution).
2003-02-16 11:12:43 +00:00
Zeev Suraski
c17c7a2bfa
Centralize class initialization
2003-02-10 16:11:24 +00:00
Zeev Suraski
17439aa9c4
Rework static class properties - now supports access restrictions
2003-02-05 13:35:52 +00:00
Zeev Suraski
471947b188
Reimplement PPP properties
2003-02-04 12:12:34 +00:00
Zeev Suraski
31196cf679
whitespace
2003-02-02 16:29:42 +00:00
foobar
333406bdc2
- Added some missing CVS $Id$ tags, headers and footers.
2003-02-01 01:49:15 +00:00
Sascha Schumann
7431b52291
Revert commit which turned the lengths of strings into zend_uint.
2003-01-15 19:10:14 +00:00
Stanislav Malyshev
d48ffd97d6
RIP handle_* functions. ZE2 will use __ handlers instead.
...
# Yes, I know this will break some things. I will fix those I can find shortly.
2003-01-12 17:16:07 +00:00
Sebastian Bergmann
24db7f182a
ZTS fixes.
2003-01-12 14:25:58 +00:00
James Cox
24d034251d
cvs is dev not alpha.
2003-01-08 17:30:49 +00:00
Sebastian Bergmann
2c5d4b8c23
Bump year.
2002-12-31 15:59:15 +00:00
Zeev Suraski
e062dffe6c
- Implement public/protected/private methods.
...
- Prevent instantiation of classes with abstract methods.
Based in part on Marcus's patch.
2002-12-06 17:09:44 +00:00
Andi Gutmans
27de54b0df
- MFZE1
2002-12-01 19:47:02 +00:00
Andi Gutmans
f222884e2d
- Revert as the patch doesn't compile
2002-12-01 19:22:30 +00:00
Andi Gutmans
b6ecd6704c
- MFZE1
2002-12-01 19:07:07 +00:00
Zeev Suraski
4be862b02c
MFZE1 - error_reporting fix
2002-11-19 17:51:30 +00:00
Ilia Alshanetsky
32e8ee9bee
MFZE1
2002-11-11 16:32:57 +00:00
Zeev Suraski
bd115087e3
MFZE1 - connection_status() fix
2002-09-19 15:58:01 +00:00
Zeev Suraski
711be83d49
MFZE1 - threading fix
2002-09-17 12:42:11 +00:00
Andi Gutmans
e3ca0ff0b8
- Prepare for alpha 3
2002-09-08 15:33:54 +00:00
Stanislav Malyshev
d8651c82cd
Support for __get, __set and __call in classes.
...
This should work as follows: if class hasn't member with given name,
__get/__set is called. If class has no method with given name, __call is called.
__get/__set are not recursive, __call can be.
2002-09-04 09:07:58 +00:00
Zeev Suraski
e801a99a50
MFZE1
2002-09-03 10:25:06 +00:00
Sebastian Bergmann
cfad3c664f
Add html_errors to zend_utility_values. Patch by Jan Lehnardt <jan@php.net>.
2002-09-03 09:41:41 +00:00
Zeev Suraski
88d3154b68
MFZE1
2002-08-13 15:14:45 +00:00
Derick Rethans
0650a59aea
- MFZE1 - MacOSX fixes by Marko Karppinen
2002-07-18 11:16:34 +00:00
Andi Gutmans
bc5ea87e28
- Commit patch to support protected member variables (by Timm Friebe w/
...
- some fixes by me).
- You can't access protected variables from outside the object. If you want
- to see a protected member from your ancestors you need to declare the
- member as protected in the class you want to use it in. You can't
- redeclare a protected variable as private nor the other way around.
2002-07-15 18:09:56 +00:00
Andi Gutmans
f24cb9731c
- Get ready for alpha2
2002-06-29 19:37:10 +00:00
Andi Gutmans
6339bd5912
- Fix bug 15037
...
- Bump version to alpha2-dev
2002-06-29 07:35:41 +00:00
Andi Gutmans
ba72dbf37a
- MFZE1
2002-06-24 07:11:12 +00:00
Andi Gutmans
90f43c78b0
- This should improve performance on Windows
2002-06-08 13:01:05 +00:00
Venkat Raghavan S
bc95839f19
NetWare changes
2002-05-30 08:52:21 +00:00
Andi Gutmans
7e5ec2d761
Initial support for built-in backtracing.
...
There are still a few problems such as includes and calling other functions
from internal functions which aren't seen (will have to think if and how to
fix this).
Also the main scripts filename isn't available. Need to think about that.
2002-05-02 17:20:48 +00:00
Harald Radi
51e797f1e3
some type cleanup work
2002-04-23 18:06:54 +00:00
Stanislav Malyshev
a68b448169
make compatible with current PHP
2002-04-07 17:12:38 +00:00
Harald Radi
d5e64b2287
added thread safe hashtable which allows concurrent
...
reads but only exclusive writes
2002-03-20 21:26:46 +00:00
Andi Gutmans
a990c4da3e
- Finish covering all parsed methods to check for validity in parser.
...
- Change zval's refcount to zend_uint (If it doesn't slow down the Engine
- too much it should probably stay this way). If anyone has time to test
- the difference in speed between zend_ushort & zend_uint in zend.h of
- the struct _zval_struct (one line change) I'd be glad to get some
- figures.
2002-03-19 19:09:53 +00:00
Andi Gutmans
0ee65254ee
- Forgot to close comment.
2002-03-12 19:41:02 +00:00
Andi Gutmans
9760fdcb37
- Macro for duality between Engine 1 and 2
2002-03-12 19:36:24 +00:00
Andi Gutmans
fb6976e46d
- Another couple of indirection fixes.
...
- Make class_entry->refcount be part of the structure and not allocated.
2002-03-12 19:22:29 +00:00
Stanislav Malyshev
92dd5e611b
- make class tables contain class_entry *, not class_entry
...
- fix isset($this)
2002-03-12 10:08:47 +00:00
Andi Gutmans
00e90f2ff3
- Experimental support for private members.
...
<?
class MyClass {
private $Hello = "Hello, World!\n";
function printHello()
{
print $this->Hello;
}
}
class MyClass2 extends MyClass {
function printHello()
{
MyClass::printHello(); /* Should print */
print $this->Hello; /* Shouldn't print out anything */
}
}
$obj = new MyClass();
print $obj->Hello; /* Shouldn't print out anything */
$obj->printHello(); /* Should print */
$obj = new MyClass2();
print $obj->Hello; /* Shouldn't print out anything */
$obj->printHello();
?>
2002-02-21 11:50:44 +00:00
Stanislav Malyshev
cefbdccb98
Pass TSRM to create_object
2002-02-14 09:20:51 +00:00
Stanislav Malyshev
6608f07322
Mega-commit: Enter the new object model
...
Note: only standard Zend objects are working now. This is definitely going to
break custom objects like COM, Java, etc. - this will be fixed later.
Also, this may break other things that access objects' internals directly.
2002-02-07 14:08:43 +00:00
Sebastian Bergmann
62dc854bb0
Happy New Year.
2002-01-06 15:21:36 +00:00
Andi Gutmans
8a0c756c58
- #define to help #ifdef stuff in PHP sources to make them work w/ ZE1 and
...
- 2
2001-12-29 18:07:08 +00:00
Andi Gutmans
73b159e056
- Experimental support for destructors. We need to see if destructors
...
- will actually work well in the context of PHP so we should consider this
- as experimental. Possible problems might be that when the constructor is
- run PHP might not be in a stable state.
2001-12-27 14:35:09 +00:00
Andi Gutmans
29ea3da2f8
- Pretty much finish _clone() support
2001-12-26 19:54:20 +00:00
Andi Gutmans
f4b832d277
- Fix crash bug in startup code.
...
- Start work on being able to reference global and local scope
2001-12-13 16:55:04 +00:00
Andi Gutmans
74efc41fc3
- Make classes have scope and function/constant lookups default to the class
2001-12-12 17:38:37 +00:00
Andi Gutmans
4cb97fa3b9
- Rename zend_class_entry.constants -> zend_class_entry.constants_table
2001-12-11 18:46:43 +00:00
Sebastian Bergmann
d863d52a5d
Update headers.
2001-12-11 15:16:21 +00:00
Sebastian Bergmann
4345f8a0b5
MFZE1 (AIX fixes)
2001-12-11 09:17:38 +00:00
Andi Gutmans
3bfee898db
- More namespaces work.
...
- Nuke memory leak.
2001-12-10 18:57:17 +00:00
Andi Gutmans
e858d27888
- Initial support for class constants. There are still a few semantic
...
- issues which need to be looked into but basically it seems to work.
- Example:
<?php
class foo
{
const hey = "hello";
}
print foo::hey;
?>
2001-11-30 16:29:47 +00:00
Andi Gutmans
d2da63f629
- Support static members. The following script works:
...
<?
class foo
{
class bar
{
function init_values()
{
for ($i=1; $i<10; $i++) {
foo::bar::$hello[$i] = $i*$i;
}
}
function print_values()
{
for ($i=1; $i<10; $i++) {
print foo::bar::$hello[$i] . "\n";
}
}
}
}
foo::bar::init_values();
foo::bar::print_values();
for ($i=1; $i<10; $i++) {
print $hello[$i]?"Shouldn't be printed\n":"";
}
?>
2001-11-25 08:49:09 +00:00
Andi Gutmans
48e54e0c7a
- RISC OS patch by Alex Waugh
2001-11-03 13:35:14 +00:00
Andi Gutmans
b87194e0c6
- Add constructor to the zend_class_entry instead of looking it up each
...
- time by name.
- This will allow the next patch of being able to instantiate nested
- classes such as new foo::bar::barbara();
2001-11-03 11:59:14 +00:00
Andi Gutmans
26578c386d
- Initial support for nested class definitions
2001-10-29 17:19:02 +00:00
Andi Gutmans
2eabb14dc7
- Merge the NAMESPACES_BRANCH. It wasn't a good idea to have a branch when
...
- the whole CVS tree is work in progress
2001-09-30 17:29:55 +00:00
Stanislav Malyshev
2a0a07b883
Add dlsym underscore detection, by Jani Taskinen
2001-08-26 15:25:55 +00:00
Andi Gutmans
718f323edc
- Fix compile problem
2001-08-19 15:23:25 +00:00
Andi Gutmans
ea48c0c46a
- Fix a bug in method calls.
...
- Try to get the old copying behavior of objects to work (doesn't work yet).
2001-08-16 14:04:04 +00:00
Zeev Suraski
4f6c95d17a
Whitespace
2001-08-11 15:56:40 +00:00
Andi Gutmans
f5ea49a647
- For Sebastian. Will allow to see you're using the Engine 2 CVS via
...
phpinfo()
2001-08-11 00:20:37 +00:00
Andi Gutmans
2f6cd308f9
- Merge zend_try fix from Engine 1
2001-08-08 15:06:08 +00:00
Andi Gutmans
5af7770a81
- Sync Engine2 CVS with latest Engine CVS
2001-08-07 03:17:33 +00:00
Zeev Suraski
d76cf1da18
More TSRMLS_FETCH work
2001-07-31 04:53:54 +00:00
Andi Gutmans
b40db64d0d
- Small patch to allow fixing the PHP tree to be compatible w/ the initial
...
- Zend 2 objects patch. Hopefully I can commit that this week.
2001-07-28 18:33:06 +00:00
Zeev Suraski
b4f3b9d3ce
Redesigned thread safety mechanism - nua nua
2001-07-28 10:51:54 +00:00
Sascha Schumann
6be787a929
Fix build
2001-07-28 00:46:42 +00:00
Zeev Suraski
2c254ba762
Get rid of ELS_*(), and use TSRMLS_*() instead.
...
This patch is *bound* to break some files, as I must have had typos somewhere.
If you use any uncommon extension, please try to build it...
2001-07-27 10:10:39 +00:00
Zeev Suraski
ef4fe54f0a
Always track bailout file/lineno
2001-07-21 16:21:22 +00:00
Zeev Suraski
931ebe08d7
Improve bailout mechanism, supports nesting of bailouts a-la try..catch
2001-07-21 14:25:27 +00:00
Zeev Suraski
fb532ba52b
Fix bug #10467
2001-07-16 11:41:06 +00:00
Andi Gutmans
12db900a6f
- Bump Zend version
2001-06-24 03:54:11 +00:00
Sascha Schumann
996e9a7212
add missing closing paranthesis
2001-05-11 19:41:11 +00:00
Andi Gutmans
62cc5c9c8f
- Bump up Zend version
2001-05-01 07:20:36 +00:00
Zeev Suraski
4e71bbed0a
include limits.h if available
2001-04-28 20:21:42 +00:00
Zeev Suraski
b87bac782f
Fix bug 5661
2001-04-28 20:13:25 +00:00
Andi Gutmans
0971ff99cb
- Whitespace changes to be standard like the rest of Zend
2001-04-27 18:51:56 +00:00
Andi Gutmans
d2c9e8074c
- Update copyright year
2001-02-26 05:43:27 +00:00
Stanislav Malyshev
e4f4983cdc
allow more extensions with resources
2001-02-14 13:17:49 +00:00
Andi Gutmans
3353ad7e6e
- Make people happy who like the Zend version number bumped up in parallel
...
with PHP.
2001-01-21 11:43:34 +00:00
Zeev Suraski
0e08845eb0
Add free_estring()
2001-01-15 10:52:06 +00:00
Zeev Suraski
903018ef36
- Remove backward dependency from PHP -> Zend
...
- Rename get_ini_entry() as get_configuration_directive() for clarity
(it doesn't use the INI subsystem, but the module-supplied function for
retrieving configuration directives)
2001-01-07 18:39:11 +00:00
Zeev Suraski
6b23ef6cef
Commit missing declaration
2001-01-03 08:35:23 +00:00
Stanislav Malyshev
35f4826fea
Add macro to replace value of zval with another value while preserving
...
referencing structure
2000-11-20 12:35:08 +00:00
Zeev Suraski
84f81c50ba
Update version
2000-10-11 17:40:40 +00:00
Andi Gutmans
e7f10a41f2
- Update Zend version.
2000-08-29 15:48:55 +00:00
Andi Gutmans
fcdc025d11
- Beautify code. Try and use more macros for splitting instead of
...
- replicating the code everywhere.
2000-08-04 08:11:54 +00:00
Andi Gutmans
1cce5ed178
- Add zend_ulong
2000-07-08 15:49:39 +00:00
Sascha Schumann
b982307dd1
Change header protection macros to conform to standard.
...
Draft 3 of IEEE 1003.1 200x, "2.2 The Compilation Environment"
All identifiers that begin with an underscore and either an uppercase
letter or another underscore are always reserved for any use by the
implementation.
2000-07-02 23:54:19 +00:00
Zeev Suraski
f34b9d41be
Add $context argument to error handler
2000-06-29 15:07:59 +00:00
Andi Gutmans
3860254631
version update
2000-06-28 18:32:13 +00:00
Zeev Suraski
8e45536cf4
Make it possible to detect whether we're thread safe or not from PHP scripts and the php.ini
...
file
2000-06-26 18:15:33 +00:00
Stanislav Malyshev
536221be39
Make error callback be publicly accessible
2000-06-18 16:02:32 +00:00
Zeev Suraski
968d2c5b33
Get rid of <?php_track_vars?>
2000-06-12 16:07:15 +00:00
Zeev Suraski
98bf43f229
Enable asp_tags/short_tags/allow_call_time_pass_by_reference to work on a per-directory
...
basis as well
2000-06-06 19:13:54 +00:00
Zeev Suraski
d4b160c0d6
- Export normalize_bool
...
- This global/static syntax fix brought us back to the 4 documented conflicts
2000-06-03 03:05:01 +00:00
Zeev Suraski
0b7a9cea88
- Fix Win32 compilation (Use winsock2.h from now on)
...
- Add lambda() support
2000-06-03 01:49:49 +00:00
Zeev Suraski
8a8c3eafc8
Nuke the old error code, use the new one
2000-06-02 12:21:49 +00:00
Zeev Suraski
898c8ead87
IS_BC isn't really being used, but still...
2000-05-31 19:08:18 +00:00
Zeev Suraski
13b67621cf
Fix a bug in static initializers/default values/class member variables that contained
...
array values
2000-05-31 19:07:09 +00:00
Andi Gutmans
cc590f49f2
- Get ready for release
2000-05-21 16:29:38 +00:00
Zeev Suraski
0d6a794d85
Get rid of chval - it's really not necessary and seems to be confusing people
2000-05-11 19:18:11 +00:00
Andi Gutmans
63b7056f9a
- Change Zend Engine version number
2000-05-08 16:33:52 +00:00
Zeev Suraski
b80b8381d4
More error handling work (still completely disabled)
2000-04-27 19:38:11 +00:00
Zeev Suraski
a20e90abb3
We'll need two...
2000-04-25 10:44:50 +00:00
Zeev Suraski
67f6974373
Initial support for trapping errors (not complete and disabled; will be enabled only
...
post-PHP 4.0.0)
2000-04-19 15:08:06 +00:00
Zeev Suraski
e663d856b3
Fix object overloading support
2000-04-10 20:21:13 +00:00
Andi Gutmans
9df63e183e
- Didn't see Thies' commit message although I can't really see how it would
...
make a difference
2000-03-26 16:28:37 +00:00
Andi Gutmans
b763b25c96
- Include Andrea's fix for alloca.h
2000-03-26 16:00:35 +00:00
Thies C. Arntzen
7ec4e5e21b
<alloca.h> needs to be included before we define macros calling alloca()
...
atleast using SGI's cc - should not harm other platforms (i hope)
2000-03-26 14:46:25 +00:00
Zeev Suraski
5dba477467
- Some header dependencies cleanup
...
- Generalize zval_print() and zval_print_r()
2000-03-25 19:10:07 +00:00
Sam Ruby
1e4e9b34e2
RTLD_NOW => RTLD_LAZY|RTLD_GLOBAL
2000-03-25 15:40:08 +00:00
Andi Gutmans
326f69f54e
- Change Zend version as API has changed
2000-03-22 19:07:47 +00:00
Andi Gutmans
13e7413182
- Change zend_startup to accept a flag for starting builtin functions
2000-03-21 19:01:19 +00:00
Andi Gutmans
bf18f87644
- Move #defines
2000-03-21 18:48:28 +00:00
Andi Gutmans
8b8077709e
- Fix compile problem on FreeBSD
2000-03-18 16:11:42 +00:00
Andi Gutmans
512ff32f87
- No reason for refcount to be signed and move to zend_* typedefs
2000-03-18 16:00:30 +00:00
Zeev Suraski
15dd8e61a2
- Fix newly introduced problem reported by Sam Ruby
2000-03-15 17:32:29 +00:00
Andi Gutmans
e92f6f15cb
- define zend_uint and zend_uchar and use them in a few places
2000-03-13 15:43:40 +00:00
Sam Ruby
fc173b6ace
Unresolved externs
2000-03-06 10:46:40 +00:00
Zeev Suraski
5e55e47f7f
It's official now...
2000-03-06 05:26:39 +00:00
Zeev Suraski
56251a7239
Wrap some commonly unused callbacks
2000-03-05 19:50:10 +00:00
Zeev Suraski
0ac9536d99
(c) patch
2000-02-19 22:46:42 +00:00
Andi Gutmans
f1a2ee55e0
- Add ZEND_API
2000-02-17 08:03:13 +00:00
Andi Gutmans
9b840c5f59
- Hopefully fix Thies' bug report.
2000-02-16 16:00:02 +00:00
Zeev Suraski
80bdd19e03
Fine tune Andi's patch
2000-02-11 15:59:30 +00:00
Andi Gutmans
b48eebb114
- #define ZEND_WIN32 differently
2000-02-10 17:19:10 +00:00
Andi Gutmans
bc5c9d8d7b
- Finally beautify those WIN32|WINNT checks
2000-02-10 17:03:53 +00:00
Zeev Suraski
f207b3623e
Pass the executor globals to internal functions
2000-02-05 15:40:05 +00:00
Zeev Suraski
9f51f154aa
- Stop passing list/plist to internal functions
...
- Add a typedef for the pCopyConstructor function pointer
- Minor hacks
2000-02-05 15:11:24 +00:00
Andi Gutmans
059b64efbe
- Make sure its use is understood.
2000-01-28 21:46:07 +00:00
Andi Gutmans
c23056719e
- Double the speed of some key switch() tests for Win32.
2000-01-28 21:43:46 +00:00
Zeev Suraski
fafbf6d8da
- Implement declare() with declarables framework
...
- Implement ticks - Germany&Norway - 5 points!
2000-01-24 19:00:30 +00:00
Zeev Suraski
f24931222c
Make Win32 compile again
2000-01-13 20:34:45 +00:00
Sascha Schumann
bf7b292db9
Move dl stuff from acconfig.h into zend.h. That allows us finer control
...
when it comes to suppressing dlfcn.h.
2000-01-12 19:52:33 +00:00
Andi Gutmans
44e9e95933
- Rename IS_BC to FLAG_IS_BC. We will probably nuke it.
2000-01-04 14:25:42 +00:00
Andi Gutmans
b8cebe32e3
- Separate the overloaded objects' types from Zend's data types.
...
There is no reason for them to be the same, and IS_METHOD just cluttered
there data types.
2000-01-04 13:52:52 +00:00
Andi Gutmans
bdefd5da15
- Change IS_UNSET -> IS_NULL
2000-01-04 13:22:58 +00:00
Zeev Suraski
f2d703e916
- Nuke undefined_variable_string
...
- Introduce IS_UNSET
1999-12-31 13:56:59 +00:00
Zeev Suraski
aec33aa753
Introduce a zval-specific cache - 5-15% speed improvement
1999-12-26 21:56:59 +00:00