Marcus Boerger
3597704c64
Add function/method parameter reflection
2003-08-04 19:37:08 +00:00
Ilia Alshanetsky
1007b0a826
Fixed bug #23104 (hash position of static arrays not being reset)
2003-08-04 17:10:52 +00:00
Stanislav Malyshev
2884e8a715
oops. forgot function
2003-08-04 11:03:38 +00:00
Stanislav Malyshev
7cb1730293
fix crash #24842
2003-08-04 11:02:53 +00:00
Stanislav Malyshev
b6ff804cfe
fix leaks: bug #24831
2003-08-04 10:40:05 +00:00
Stanislav Malyshev
a3dc90d8d0
use get_obj_zval_ptr
2003-08-04 10:30:42 +00:00
Stanislav Malyshev
3586a6a43b
add test
2003-08-04 09:31:58 +00:00
Stanislav Malyshev
4d51526350
Fix #24884 - clone $this
2003-08-04 09:10:52 +00:00
Zeev Suraski
1959133fb3
Simplify code using XOR
2003-08-04 07:53:09 +00:00
Zeev Suraski
fe9b5870af
Add logical XOR, proves to be quite useful lately
2003-08-04 07:52:36 +00:00
Zeev Suraski
6f53e48bb9
This check shouldn't be necessary
2003-08-04 07:52:09 +00:00
f1d8c1c448
ChangeLog update
2003-08-04 00:30:32 +00:00
Marcus Boerger
1f8fd69e78
Fix crash
2003-08-03 22:28:14 +00:00
Marcus Boerger
538aad24e3
Fix test and add missing initialization
2003-08-03 22:03:52 +00:00
Zeev Suraski
ef5a79bfed
Ensure functions have a valid access level
2003-08-03 21:06:23 +00:00
Zeev Suraski
e3f4147931
Default to public
2003-08-03 21:04:39 +00:00
Marcus Boerger
8c614ddda4
Not needed, will be copied from ptr->flags later
2003-08-03 20:49:27 +00:00
Marcus Boerger
bdf84d4e12
Add missing arg info
2003-08-03 19:25:03 +00:00
Moriyoshi Koizumi
fb6300dd6c
Style & WS fixes
2003-08-03 19:20:45 +00:00
Zeev Suraski
f8bbafd604
ntroduce infrastructure for supplying information about arguments,
...
including:
- Whether or not to pass by ref (replaces the old arg_types, with arg_info)
- Argument name (for future use, maybe introspection)
- Class/Interface name (for type hints)
- If a class/interface name is available, whether to allow a null instance
Both user and builtin functions share the same data structures.
To declare a builtin function that expects its first arg to be an instance
of class 'Person', its second argument as a regular arg, and its third by
reference, use:
ZEND_BEGIN_ARG_INFO(my_func_arg_info, 0)
ZEND_ARG_OBJ_INFO(0, someone, Person, 1)
ZEND_ARG_PASS_INFO(0)
ZEND_ARG_PASS_INFO(1)
ZEND_END_ARG_INFO();
and use my_func_arg_info as the arg_info parameter to the ZEND_FE() family
of macros.
The first arg to each ZEND_ARG_*() macro is whether or not to pass by ref.
The boolean arg to ZEND_BEGIN_ARG_INFO() tells the engine whether to treat
the arguments for which there's no explicit information as pass by reference
or not.
The boolean argument to ZEND_ARG_OBJ_INFO() (4th arg) is whether or not to allownull values.
2003-08-03 17:40:44 +00:00
Zeev Suraski
7112d3a3f8
No need for this initialization - this function initializes all of the
...
elements of zend_internal_function
2003-08-03 10:32:40 +00:00
Zeev Suraski
8b4bd4a8ec
Clean up. extended_value can only contain either ZEND_UNSET_DIM or
...
ZEND_UNSET_OBJ.
2003-08-03 08:23:25 +00:00
Zeev Suraski
9d7122fb53
Generalize fetch_class
2003-08-03 08:21:08 +00:00
973b85672b
ChangeLog update
2003-08-03 00:30:27 +00:00
Marcus Boerger
4f1e331c4d
Initialize all struct members: Necessary for reflection
2003-08-02 19:03:14 +00:00
Marcus Boerger
04c90c8738
Show interfaces
2003-08-02 14:22:18 +00:00
Wez Furlong
0b6f7bddf4
fix usage of instanceof here too
2003-08-02 11:43:55 +00:00
Marcus Boerger
4fa6eac1f8
Fix warning
2003-08-02 11:39:15 +00:00
be9986eb8e
ChangeLog update
2003-08-02 00:30:27 +00:00
Wez Furlong
5c4de2664c
better fix...
2003-08-01 17:51:56 +00:00
Wez Furlong
ad12b3da82
Fix "O" format for zend_parse_parameters
2003-08-01 16:48:11 +00:00
6e49dd99c8
ChangeLog update
2003-08-01 00:30:42 +00:00
Zeev Suraski
4f6b315211
Use instanceof_function()
2003-07-31 16:30:15 +00:00
Zeev Suraski
accd6b623b
Finish the array overloading patch
2003-07-31 09:06:11 +00:00
Zeev Suraski
d95a6916de
Cleanup
2003-07-31 08:24:55 +00:00
Andi Gutmans
7055fda013
- Fix logic. It was the wrong way around.
2003-07-31 05:08:59 +00:00
8d75e7082d
ChangeLog update
2003-07-31 00:30:27 +00:00
Andi Gutmans
8264eedc48
- Fix problem with hash when updating same bucket with data of different
...
sizes one after another.
- Fix number of arguments to read_dimension.
2003-07-30 19:47:39 +00:00
Zeev Suraski
68fa4e50f8
Get rid of an opcode
2003-07-30 17:49:27 +00:00
Zeev Suraski
f41f62c2ff
Support overloading of $foo["bar"] += "baz"
2003-07-30 17:40:54 +00:00
Zeev Suraski
c0b46739ca
Improve array overloading - support unset($foo["bar"])
2003-07-30 17:12:06 +00:00
Zeev Suraski
4839ce5952
Remove garbage
2003-07-30 17:02:41 +00:00
Zeev Suraski
2fd4ffce17
Add exec_finished() callback for modules - this is the last place where the
...
modules may touch the symbol table reliably
2003-07-30 16:13:52 +00:00
815be4e5c6
ChangeLog update
2003-07-30 00:30:26 +00:00
Ilia Alshanetsky
7b18132dba
Test case for bug #22836 .
2003-07-29 17:56:50 +00:00
foobar
c50fbaf69a
Remove the obfuscation caused by the double "#ifdef ZTS"
2003-07-29 01:30:59 +00:00
8aef486417
ChangeLog update
2003-07-28 00:30:27 +00:00
Stanislav Malyshev
57b12285de
fix compare
2003-07-27 16:43:05 +00:00
Stanislav Malyshev
7b1bbc85bc
use zend_binary_strncasecmp
2003-07-27 16:39:35 +00:00
Stanislav Malyshev
47fef22bc5
change shutdown order so that dtors would coexist with object error handlers
2003-07-27 15:59:37 +00:00
Stanislav Malyshev
1cc89effdb
clean the right one
2003-07-27 14:02:46 +00:00
Stanislav Malyshev
5bfd386bc3
make shutdown more granular so in case some dtor goes ape we still
...
can shut down cleanly
2003-07-27 13:47:58 +00:00
Stanislav Malyshev
9fa2d52310
make clone and throw coexist peacefully
2003-07-27 13:20:31 +00:00
Stanislav Malyshev
6bea4ca1b0
add test
2003-07-27 12:50:56 +00:00
Stanislav Malyshev
c3c136ea4b
fix #24635 : clean hash before putting into cache
2003-07-27 12:46:14 +00:00
Stanislav Malyshev
399db3c846
fix crash #24550
2003-07-27 12:25:50 +00:00
Stanislav Malyshev
91b4bca976
add test
2003-07-27 12:07:23 +00:00
Stanislav Malyshev
5724c7a66c
fix leaks with class constants (bug #24699 )
2003-07-27 12:03:54 +00:00
Stanislav Malyshev
78f8ca6e55
make __clone call case insensitive, just as other calls are
2003-07-27 11:42:21 +00:00
29df7213cb
ChangeLog update
2003-07-25 00:30:31 +00:00
foobar
e03b0dea7d
cleanup (CS+ws)
2003-07-24 17:07:40 +00:00
Zeev Suraski
0e0936fa59
Fix expectations :)
2003-07-24 17:00:17 +00:00
Zeev Suraski
b54ae17904
Fix logic and comments in ASSIGN_DIM
2003-07-24 16:51:35 +00:00
Zeev Suraski
55097d1dcf
Fix another HANDLE_NUMERIC bug. Looks like you opened Pandora's box, Sterling ;)
2003-07-24 13:14:57 +00:00
Zeev Suraski
2109ab3438
Fix each() binary safety for keys
2003-07-24 13:06:25 +00:00
Zeev Suraski
0610515703
Fix assignments to numeric array indices
2003-07-24 12:56:05 +00:00
Zeev Suraski
7928e763d2
Remove useless code
2003-07-24 12:51:07 +00:00
Zeev Suraski
03b6af07eb
Support references in foreach()
...
Syntax:
foreach ($arr as &$val)
foreach ($arr as $key => &$val)
2003-07-24 12:38:33 +00:00
Zeev Suraski
e25d5e7f7a
Fix binary safety in foreach() keys (fixes bug #24783 )
2003-07-24 08:36:39 +00:00
Zeev Suraski
9b13202723
Make print_r() binary safe with keys
2003-07-24 08:24:07 +00:00
005fc4eddd
ChangeLog update
2003-07-24 00:30:26 +00:00
Stanislav Malyshev
237116aa27
Remove namespace leftovers
2003-07-23 08:58:46 +00:00
Zeev Suraski
e89977f9d9
Go back to ZE1-like code
2003-07-23 08:56:34 +00:00
Sebastian Bergmann
786afb48cb
Fix segfault. Patch by Timm Friebe <thekid@thekid.de>.
2003-07-23 04:02:26 +00:00
a480901c9f
ChangeLog update
2003-07-23 00:30:29 +00:00
Marcus Boerger
6079d4dc1b
Fix for the moment
2003-07-22 20:53:56 +00:00
Zeev Suraski
cf90932a05
Improve infrastructure of numeric handling of elements in symbol tables.
...
When you want to work with a symbol table, and you don't know whether you
have a numeric ("string that looks like a number") or a string element in
your hands, use zend_symtable_*() functions, in place of zend_hash_*()
functions.
2003-07-22 16:06:07 +00:00
Zeev Suraski
6a50660cfe
Fix isset()/empty() for non-trivial object elements
...
(API change - read_property now accepts an extra element)
Fixes bug #24436
2003-07-22 13:49:33 +00:00
3437e2ef41
ChangeLog update
2003-07-22 00:30:54 +00:00
Zeev Suraski
7e72d8e826
Fix bug #24499
2003-07-21 12:13:16 +00:00
Zeev Suraski
754529920d
Revert fix for #24729 , and refix
2003-07-21 07:42:15 +00:00
Marcus Boerger
98963e3c75
Go with a better fix for #24729
2003-07-21 07:13:26 +00:00
George Schlossnagle
0229aad042
reverted at Andi's request. replaced with more generic wrapper.
2003-07-21 06:05:58 +00:00
ada5008f9a
ChangeLog update
2003-07-21 00:30:29 +00:00
Marcus Boerger
8ac334289a
Bugfix #24729 = new ; causes crash when is not set
2003-07-20 20:45:59 +00:00
George Schlossnagle
600f72f7b4
should nt here
2003-07-20 20:16:07 +00:00
Marcus Boerger
cfe2eda4f6
Fix warnings and whitespace in output
2003-07-20 19:57:02 +00:00
Marcus Boerger
23da3057b9
Add support for instances in Reflection_Class.
...
# Thanks to Timm for the fast patch contained reply to my help request :-)))
2003-07-20 18:58:34 +00:00
George Schlossnagle
7c7de5eb3c
removed references to smart_str, replaced with private string management
...
function. When snprintf is integrated into the engine, string_printf
should be altered to use that.
2003-07-20 18:45:40 +00:00
Marcus Boerger
c9c1fcc026
More informative errors here and these are real core errors
2003-07-20 17:50:23 +00:00
Marcus Boerger
7bbe6080f2
Fix uncloneable objetcs
2003-07-20 17:46:21 +00:00
George Schlossnagle
84f5e4870e
more of Timm's implementation.
2003-07-20 15:42:42 +00:00
Marcus Boerger
184118d9a9
Make it a macro
2003-07-20 12:23:46 +00:00
01d8fea855
ChangeLog update
2003-07-20 00:30:10 +00:00
Marcus Boerger
9556c6c27e
This is meant to be used in for(;has_more;next)
...
# Probably the name of such functions should be eol (End-Of-List).
2003-07-19 20:04:51 +00:00
Marcus Boerger
892c1fbbe7
Add missing function to ease implementations
2003-07-19 14:19:04 +00:00
foobar
aad797691b
Fix the HPUX alloca fix as suggested by Sascha
2003-07-19 13:10:24 +00:00
Marcus Boerger
7cdc2d1f39
Shuffle code to ease writing clone handlers
2003-07-19 09:47:00 +00:00
Andi Gutmans
99d0a5c86e
- Don't use alloca on HP-UX (Moriyoshi Koizumi <moriyoshi@at.wakwak.com>)
2003-07-19 07:19:21 +00:00
e4625963aa
ChangeLog update
2003-07-17 00:30:28 +00:00
Zeev Suraski
e10dbc607c
Fix bug in the verification of interface-function implementation
2003-07-16 09:13:47 +00:00
Zeev Suraski
3a898f6d4e
More cleanup for assign-op handling of objects
2003-07-16 08:57:08 +00:00
Zeev Suraski
1c385fc742
Fix warning
2003-07-16 08:48:22 +00:00
ed9c700d9b
ChangeLog update
2003-07-13 00:30:23 +00:00
Andi Gutmans
af1254e458
- WS
2003-07-12 14:54:53 +00:00
f9551bc554
ChangeLog update
2003-07-12 00:30:21 +00:00
Andi Gutmans
939ab68637
- Add support for Z in zend_parse_parameters(). It will allow the extension
...
- to retreive the zval **, thus allowing it to use the convert_to_*_ex()
- family of functions to do type conversions without effecting the value in
- the engine itself. (Josh Fuhs <fuhs@purdue.edu>)
2003-07-11 10:21:39 +00:00
b868cb62b2
ChangeLog update
2003-07-09 00:30:34 +00:00
Zeev Suraski
d9fb6b672a
initial refactoring for assign-op handling of objects
2003-07-08 11:52:21 +00:00
0bef1de448
ChangeLog update
2003-07-08 00:30:24 +00:00
Zeev Suraski
134338522f
Rework zend_do_declare_property and related code into one code base
2003-07-07 16:22:56 +00:00
Zeev Suraski
376c7a1771
Fix bug
2003-07-07 16:04:42 +00:00
Zeev Suraski
3cfa6a68f4
Add get_dim callback
2003-07-07 10:53:27 +00:00
Zeev Suraski
ed97b9fb6e
Fix naming convention
2003-07-07 10:47:25 +00:00
Derick Rethans
d16f0a6333
- Help Zeev fixing ghosts :)
2003-07-07 10:16:05 +00:00
Zeev Suraski
ae6a1e7e4e
whitespace
2003-07-07 09:12:15 +00:00
Zeev Suraski
65f8bafb29
Fix & whitespace
2003-07-07 09:08:33 +00:00
Zeev Suraski
765f349ecd
fixlet
2003-07-07 09:01:22 +00:00
Zeev Suraski
938c0fbc19
Initial support for overloading of array syntax for objects (very initial)
2003-07-07 09:00:36 +00:00
54271f5187
ChangeLog update
2003-07-07 00:30:19 +00:00
George Schlossnagle
daf3ac65ea
add convenience functions or adding class properties. Ok'd for commit by Andi.
2003-07-06 19:55:20 +00:00
772f666998
ChangeLog update
2003-07-05 00:30:12 +00:00
Andi Gutmans
84f4588726
- Add heap to memory manager. This should improve performance.
...
- Enabling it by default so that it gets tested. We should decide before
beta 2 if we want to revert back to malloc or not.
- Thanks to Sebastian for benchmarking it
2003-07-04 15:38:12 +00:00
Sebastian Bergmann
c86b4d13e6
2 * TSRMLS_FETCH() -> 1 * TSRMLS_DC
2003-07-04 10:31:41 +00:00
George Schlossnagle
96b71d7f87
ws fix
2003-07-04 03:26:37 +00:00
99b41db6c1
ChangeLog update
2003-07-04 00:30:27 +00:00
Marcus Boerger
d7e14ad8a3
Allow final private methods
...
#
# Declaring a method private and final would only be an error for an abstract
# class. But at the moment the method is defined and it's modifiers are checked
# we do not know whether or not we have an abstract class. It could already be
# abstract but it also become abstract later.
#
# Since i made the mistake in first place i remove the check now.
#
# Providing the correct test would slow down the compiler becuase we'd have to
# iterate through all methods on all abstract classes and check for this. I
# guess we can live without. Or does anybody wants this to be implemented ?
2003-07-03 16:45:37 +00:00
George Schlossnagle
edf78b2141
win build fixes (Rob Richards)
2003-07-03 14:11:31 +00:00
George Schlossnagle
6a4c48be6f
can't forget Andrei
2003-07-03 14:00:17 +00:00
Stanislav Malyshev
8f0234160a
enable Classname() constructor to be called via parent::__constructor()
2003-07-03 12:03:11 +00:00
Stanislav Malyshev
3f0d60f749
add test for Bug #19859
2003-07-03 09:22:35 +00:00
Stanislav Malyshev
5a7b07701b
Fix bug #19859 - allow fast_call_user_function to support __call
2003-07-03 09:18:41 +00:00
Stanislav Malyshev
2f96c161df
fix the get_parent_class fix
2003-07-03 08:00:10 +00:00
George Schlossnagle
3d7283b94f
more of Timm's patches, and mod authors line to give credit where credit is due.
2003-07-03 05:33:23 +00:00
30b5cbd151
ChangeLog update
2003-07-03 00:30:19 +00:00
Marcus Boerger
5b54322dc7
Temporairy solution to overcome shutdown propbelms with objects that have
...
hidden destructors.
#
# If we set the error level to E_ERROR what we must to to be correct and an
# object needs to be automatically destructed in shutdown process then the
# exit would cause memory corruption and a SEGV.
2003-07-02 23:58:47 +00:00
Marcus Boerger
669016c724
Reorganize this a bit to ensure the object memory is destructed before
...
showing the error.
2003-07-02 23:53:53 +00:00
Marcus Boerger
d007a6ce5e
Bug #24399 : is_subclass_of(): fix memleak, too
2003-07-02 21:57:57 +00:00
Zeev Suraski
eb224d4a5f
Throughly fix scoping change. Fixes, among other things, bug #24403
2003-07-02 17:48:18 +00:00
Andi Gutmans
02c7aacf83
- Nuke CG(in_clone_method)
2003-07-02 16:52:07 +00:00
Zeev Suraski
d245c52e0c
Fix for bug #22367 .
...
Heads up - this will break syntactical compatiblity, return($foo) will
not work with functions that return references - return $foo should be used
instead. It never worked well before, and caused all sorts of odd bugs.
It *might* be possible to support this specifically, albeit unlikely
2003-07-02 15:06:10 +00:00
Sterling Hughes
92e9e0ca7e
optimize the case where the object is really a class name, as we don't need
...
to set EX(object) here.
2003-07-02 14:44:41 +00:00
Sterling Hughes
3fc83023b6
Timm Friebe points out that object detection should be done regardless of
...
the function pointer
2003-07-02 14:33:41 +00:00
Marcus Boerger
74a0f6c8ab
Finally fix property cloning and fix the tests accordingly.
...
# The default behaviour is to copy all properties with all current values
# from the old object. But if __clone is overwritten then only the default
# properties are cloned with their correct default values. So we keep
# the type system intact and also allow real __clone overwriting now.
2003-07-02 07:24:11 +00:00
Sterling Hughes
c491b0a672
Fix bug #24445
2003-07-02 04:31:33 +00:00
ed96d7bff0
ChangeLog update
2003-07-02 00:30:25 +00:00
Marcus Boerger
5500287432
Fix __clone().
...
# This is somewhat discussable. I copied all properties from the old to the
# new object. But for type correctness we only need to copy the properties
# declared in the class and its parents.
#
# Also someone might want to take care about static and const members.
2003-07-01 23:29:36 +00:00
Marcus Boerger
e0a68b1ee0
Use both destructor and shutdown
2003-07-01 23:06:40 +00:00
Marcus Boerger
bef4696d3e
small bugfix
2003-07-01 22:47:41 +00:00
Marcus Boerger
2c72deee2c
Rename test to correct extension
2003-07-01 21:59:46 +00:00
Marcus Boerger
40dd3f4f88
__clone might not be defined
2003-07-01 21:30:21 +00:00
Marcus Boerger
a04cba504f
Fix __clone visibility
2003-07-01 20:02:27 +00:00
Marcus Boerger
35c40932e8
Fix destructor visibility
2003-07-01 19:13:50 +00:00
Derick Rethans
d2b1b6c700
- Added test for bug #24436
2003-07-01 19:12:56 +00:00
George Schlossnagle
c36a59cfd9
Timm Friebe's patches for code celanup and additional functions.
2003-07-01 18:41:42 +00:00
foobar
82194d2766
Missing .cvsignore, broken test, renamed zend2.php -> zend2.php.txt
2003-07-01 15:56:07 +00:00
Sebastian Bergmann
fff7ef2f6c
ZTS fixes.
2003-07-01 04:25:29 +00:00
George Schlossnagle
4edd9505fe
more incremental changes. add anything that needs a class factory.
2003-07-01 04:10:57 +00:00
George Schlossnagle
9c26571b37
all the easy parts of Reflection_Class
2003-07-01 02:31:21 +00:00
d699324624
ChangeLog update
2003-07-01 00:30:09 +00:00
Shane Caraveo
5efc65f910
this fixes including this header in a c++ file (vs6)
2003-06-30 20:33:02 +00:00
Sterling Hughes
778d8c8bf1
nuke "main" as a reserved keyword
2003-06-30 20:24:26 +00:00
Andi Gutmans
288dacca0c
- ZE coding style requires if ( instead of if(
2003-06-30 20:22:35 +00:00
Sebastian Bergmann
5ee72bb478
ZTS fixes. Remove unused local variables.
2003-06-30 20:17:01 +00:00
George Schlossnagle
aa96d17022
added support for Reflection_Function, the first part of
...
the reflection api
2003-06-30 20:03:56 +00:00
Sterling Hughes
1d70191ab1
move the check down a little so it catches all cases
2003-06-30 19:52:47 +00:00
Sterling Hughes
d0bd54ce6a
Fix bug #24399 from an excellent test case by edin
2003-06-30 19:11:01 +00:00
Zeev Suraski
53acb1814e
Semantically it's a refcount increase, not a lock...
2003-06-30 13:51:48 +00:00
Zeev Suraski
6f9d0da2e5
Fix 'global' implementation (fixes, at least, bug #24396
2003-06-30 13:47:12 +00:00
Sterling Hughes
dae3fefd10
revert back the optimization for now.
2003-06-30 01:41:15 +00:00
68749958ab
ChangeLog update
2003-06-30 00:30:21 +00:00
Ilia Alshanetsky
9754535255
Fixed bug #24279 (__get() crash when no value is returned)
2003-06-29 23:41:49 +00:00
Sebastian Bergmann
4aa81c9d72
Remove namespace references.
2003-06-29 09:40:23 +00:00
Sterling Hughes
f605f0b708
Very simple, but very effective optimization. Provides a signifigant speed
...
improvement to matches done via '=='. This checks that the lengths of two
strings are equal before performing a memcmp() on them.
2003-06-29 01:49:10 +00:00
b6bc8b9edf
ChangeLog update
2003-06-24 00:30:11 +00:00
Zeev Suraski
bc4c7c6a6d
Fix crash :)
2003-06-23 22:14:38 +00:00
Stanislav Malyshev
c3fb1eac15
FIx leak
2003-06-23 14:48:59 +00:00
d520d2b805
ChangeLog update
2003-06-23 00:31:49 +00:00
Zeev Suraski
cbec89a358
Fix complex expressions for class names in NEW
2003-06-22 10:50:43 +00:00
Zeev Suraski
f263aecc8e
Simplify
2003-06-22 10:12:25 +00:00
39c3b7a184
ChangeLog update
2003-06-22 00:31:09 +00:00
Marcus Boerger
c8bebdaf67
WS
2003-06-21 21:56:44 +00:00
Marcus Boerger
60c7abac61
Add final classes
2003-06-21 21:56:06 +00:00
ccfb4c316e
ChangeLog update
2003-06-17 00:31:41 +00:00
Stanislav Malyshev
b48a86581a
no need to init zval - assignment will init
2003-06-16 15:43:40 +00:00
Stanislav Malyshev
f205abb3f8
Fix bug #22592 - cascading assignments to string offsets
2003-06-16 15:41:02 +00:00
Stanislav Malyshev
f57ac82bb0
support for self:: and parent:: constants
2003-06-16 10:16:50 +00:00
Stanislav Malyshev
4dcc1ef66c
fix lambda function static vars (related to #17115 )
2003-06-16 09:59:02 +00:00
0e4f73ee54
ChangeLog update
2003-06-16 00:31:04 +00:00
Sebastian Bergmann
2c7ebe557f
Fix ZTS build.
2003-06-15 15:34:00 +00:00
Stanislav Malyshev
b81873134b
Fix bug #23279 - exception handler exits after first function call
2003-06-15 15:07:55 +00:00
Stanislav Malyshev
fe1ef91e77
No need to duplicate code - zend_get_constant() knows to
...
handle class constants now
2003-06-15 14:46:15 +00:00
Stanislav Malyshev
95a936becc
Fix bug #18872 - Improper handling of class constants used as default
...
function argument values
2003-06-15 14:42:39 +00:00
Stanislav Malyshev
4a8c31d6c9
set ending \0 for string
2003-06-15 14:40:38 +00:00
Stanislav Malyshev
8cd9792375
Fix bug #23384 - static class::constant constants should now
...
work in static & array expressions.
2003-06-15 13:58:50 +00:00
Stanislav Malyshev
efafae1427
Fix bug #21800 - initialize opcode handlers in interactive mode
2003-06-15 11:44:30 +00:00
768ac8de32
ChangeLog update
2003-06-15 00:31:02 +00:00
Marcus Boerger
4eb6392519
ecalloc doesn't return NULL
2003-06-14 11:32:30 +00:00
Marcus Boerger
ceb91fba65
Bugfix #24182 : va_arg macro error in Zend/zend.c
2003-06-14 09:25:36 +00:00
a5cc34d6f0
ChangeLog update
2003-06-11 00:31:17 +00:00
foobar
d0bfc137df
- Missing $Id$ tag
2003-06-10 22:39:29 +00:00
James Cox
f68c7ff249
updating license information in the headers.
2003-06-10 20:04:29 +00:00
61dbfa7624
ChangeLog update
2003-06-10 00:31:08 +00:00
Wez Furlong
7959b2d7b0
Fix for Bug #23951
2003-06-09 17:02:32 +00:00
Stanislav Malyshev
c68924dcbc
remove NS leftover
2003-06-09 14:05:12 +00:00
Zeev Suraski
8d2a4e04ae
Fix bogus implicit declarations of properties (squash bug #23671 )
2003-06-09 13:51:53 +00:00
Stanislav Malyshev
565985acfc
Support 'self' and 'parent' in call_user_func()
2003-06-09 10:55:37 +00:00
Zeev Suraski
910dff4c2b
Fix indirect reference calls to bogus function names
2003-06-09 07:39:55 +00:00
866bce3414
ChangeLog update
2003-06-09 00:30:58 +00:00
foobar
7f52928ea5
ws
2003-06-09 00:15:11 +00:00
Zeev Suraski
636e9cc6a4
Fix casing issues in access level checks
2003-06-08 19:28:29 +00:00
Zeev Suraski
d329ce93f2
Nicer handling of protected/private members in print_r()
2003-06-08 18:53:58 +00:00
Zeev Suraski
faefdb7bdd
Fix handling of object property assignments in switch expressions
...
(bug #23925 )
2003-06-08 18:52:53 +00:00
Zeev Suraski
4abaac8c2f
Fix set_error_handler()
2003-06-08 14:00:11 +00:00
06d6909c58
ChangeLog update
2003-06-07 00:31:14 +00:00
Sascha Schumann
3d5ecc112b
mfb #24025 fix
2003-06-06 12:12:25 +00:00
2cf370142d
ChangeLog update
2003-06-05 00:30:46 +00:00
Stanislav Malyshev
b4fcdaedee
fix non-ZTS build
2003-06-04 09:09:47 +00:00
Sebastian Bergmann
f26c5f9ce4
Fix segfault. Again.
2003-06-04 08:52:43 +00:00
Stanislav Malyshev
039c174337
rm namespace leftovers
2003-06-04 08:16:55 +00:00
Sebastian Bergmann
d74d05f431
Fix segfault. #Hopefully not a Voodoo Fix[TM].
2003-06-04 07:46:22 +00:00
5c2b048135
ChangeLog update
2003-06-03 00:31:04 +00:00
Sebastian Bergmann
572504845d
Leftover.
2003-06-02 15:53:09 +00:00
Sebastian Bergmann
1fe874fbb8
Leftover.
2003-06-02 15:42:34 +00:00
Stanislav Malyshev
f7f5a5ea6b
MEGA-patch: namespaces are R.I.P.
2003-06-02 12:13:11 +00:00
6fc0636581
ChangeLog update
2003-06-02 00:30:46 +00:00
Marcus Boerger
7e2f7b06b5
No nested classes
2003-06-01 19:18:34 +00:00
Marcus Boerger
c3dd93fb4a
Add some ZE2 bug tests
2003-06-01 18:35:29 +00:00
Marcus Boerger
a023c1034b
Bugfix #23670 : implements and extends cause Apache 2 crash
2003-06-01 17:28:52 +00:00
Marcus Boerger
53dae40d5a
Do it correct always
2003-06-01 16:20:23 +00:00
Marcus Boerger
7463e7239b
Defining it once is enough
2003-06-01 11:15:01 +00:00
d40e85bdc6
ChangeLog update
2003-06-01 00:30:54 +00:00
Marcus Boerger
9e4286112e
Fix init shutdown
2003-05-31 19:21:52 +00:00
Sterling Hughes
5bb29cfaeb
revert the function call caching patch until a new solution is decided
...
upon.
2003-05-31 18:31:28 +00:00
Marcus Boerger
5457e34273
Fix constants (noticed by David Brown <dave@codewhore.org>)
2003-05-31 17:24:20 +00:00
Marcus Boerger
05a217707f
c->name_len already contains the '\0'
2003-05-31 15:57:59 +00:00
3240dce99c
ChangeLog update
2003-05-31 00:30:49 +00:00
97e21d21d0
Update
2003-05-30 18:39:38 +00:00
Stanislav Malyshev
95a3fd7b3c
fix crash on exceptions when return value of the inside function is used
2003-05-30 10:05:29 +00:00
78b5b96d17
ChangeLog update
2003-05-30 00:30:57 +00:00
Marcus Boerger
21d32c2430
Fix ~ operator in class constants.
2003-05-29 19:27:11 +00:00
Marcus Boerger
472cc5b9f3
Faster interface inheritance & faster inheritance checks
2003-05-29 19:00:40 +00:00
Marcus Boerger
afb748d17a
CS
2003-05-29 12:59:43 +00:00
Wez Furlong
15fd642525
Fix Bug #23285 (Potential Stack Overflow in zendlex).
2003-05-29 09:01:55 +00:00
35a76b2a8a
ChangeLog update
2003-05-29 00:30:48 +00:00
Sterling Hughes
d919f18607
no reason to do this at runtime
2003-05-28 22:56:56 +00:00
Sterling Hughes
88b2f89eee
Cache function call lookups with loops (store in a temporary variable on the
...
result opline).
Assuming lazy concensus on message that GeorgeS sent to the list last week
2003-05-28 20:42:40 +00:00
d20e82daf0
ChangeLog update
2003-05-28 00:30:50 +00:00
Sterling Hughes
ae2bfb7880
Assume lazy consensus regarding the cast_object() patch. *Only* implemented
...
from a internals perspective. This callback has been very useful for both
ext/mono and ext/simplexml
2003-05-27 18:52:25 +00:00
119e150189
ChangeLog update
2003-05-27 00:30:59 +00:00
Marcus Boerger
955460a319
Add pseudo constant __METHOD__ to easily report namespace::class::method.
...
# This is especially good for tests. Since it does not draw away from the
# real issues and nicely reports what is needed to identify a method.
2003-05-26 20:45:22 +00:00
07adb2e19f
ChangeLog update
2003-05-24 00:30:49 +00:00
Marcus Boerger
b1b8ed64dc
Revert to sizeof()
2003-05-23 18:37:36 +00:00
Sterling Hughes
ae9106521a
move HANDLE_NUMERIC() from the hash table implementation upstream to the
...
places that actually need to use it.
2003-05-23 15:11:15 +00:00
9b08c569c6
ChangeLog update
2003-05-23 00:30:53 +00:00
Marcus Boerger
475594c861
No need to copy here unless implicit_clone is active (noticed by rob)
2003-05-22 19:13:20 +00:00
f31389a956
ChangeLog update
2003-05-22 00:30:45 +00:00
Marcus Boerger
66b9125968
Make use optimized string lowering
2003-05-21 22:57:51 +00:00
Marcus Boerger
402f5f7a0d
Use same parameter order as strcpy()
2003-05-21 22:36:09 +00:00
Marcus Boerger
7af8eadd57
Make zend_str_tolower_copy() a copy function (like stccpy).
...
Supply a dup version (like estrdup).
Fix tolower() handling.
# Havin copy and dup allows to use the faster version even with
# memory not allocated by emalloc.
2003-05-21 21:59:40 +00:00
foobar
bec958114b
Fixed bug #23619 (set_error_handler() registered handler not called for object instances). (Jani, waboring@qualys.com)
2003-05-21 21:42:25 +00:00
Sterling Hughes
5619166fe4
optimize loops. The check only exists for integers because that's the more
...
common optimization, and you actually lose performance if you check for
a double too (wierd but true).
2003-05-21 18:46:34 +00:00
Sterling Hughes
d824cd3309
add some logic to detect zend_mm, which is really only useful when thread
...
safety support is enabled.
2003-05-21 17:54:57 +00:00
ec2c98b933
ChangeLog update
2003-05-21 15:46:35 +00:00
Sterling Hughes
654f141e1c
leave this off until its more ready/stable
...
php5 actually beats php4.3.* in my benchmarks now
# make sure to recompile zend_alloc.c
2003-05-21 12:22:24 +00:00
Sterling Hughes
d141ffd9de
use zend_str_tolower_copy()
2003-05-21 12:15:33 +00:00
Sterling Hughes
b5ca4de525
Bottom drawer optimization to avoid this comparison, but this OP is executed
...
quite often (all of the fetch_* ops)
2003-05-21 11:48:55 +00:00
Sterling Hughes
34087ad2b5
bah humbug, use the pointer based version, which turns out to be an instruction
...
faster
2003-05-20 22:31:15 +00:00
Sterling Hughes
7c7d14a413
use pointer arithmetic for the normal zend_str_tolower()
2003-05-20 20:39:58 +00:00
Marcus Boerger
851bd22f82
No need to copy the zval unless __clone() is called
2003-05-20 20:20:57 +00:00
Sterling Hughes
3079bb1bda
make this faster and sexier
2003-05-20 19:09:33 +00:00
Sterling Hughes
54764e9848
use the new zend_str_tolower_copy() function
2003-05-20 18:44:24 +00:00
Sterling Hughes
a4fb3300b3
doesn't need to be register
2003-05-20 18:42:09 +00:00
Sterling Hughes
ca6ca5e2a6
optimize the lookups by avoiding a copy and then another pass
...
Naked Dancing Girls should be given to: Myself, Zeev, Marcus,
and George Schlossnagle (in no particular order)
2003-05-20 18:28:14 +00:00
Sterling Hughes
909eafc2b0
add fast_call_user_function()
2003-05-20 16:44:42 +00:00
Hartmut Holzgraefe
cb71ac03cb
C++ compile fixes
2003-05-20 13:21:26 +00:00
Marcus Boerger
37a88305e6
Fix exception memleak
2003-05-19 20:40:56 +00:00
Stanislav Malyshev
462eff3497
fix __clone
2003-05-19 17:12:56 +00:00
Marcus Boerger
fe47a383e3
One function call is enough
2003-05-12 18:54:05 +00:00
Marcus Boerger
d3693d9214
Inheritance fix
...
# here we go again, sorry for the mess and thanks to edin for reverting it
2003-05-08 15:04:43 +00:00
Edin Kadribasic
7a0efe828a
Reverting Marcus' incomplete patch which broke the build.
2003-05-07 22:19:43 +00:00
Marcus Boerger
764eaa5b8b
Inheritance fixes
2003-05-07 00:54:38 +00:00
Marcus Boerger
bd74e75b41
Fix namespace issue: Only CG is needed here
2003-05-04 23:01:39 +00:00
Marcus Boerger
29a3586f7b
Allow functions in internal namespaces (for example factories)
2003-05-04 22:49:31 +00:00
Marcus Boerger
fcf92e7e17
Modify the abstract error message so that it shows up to three methods not implemented.
...
# The solution is generic so that we could change the number of methods shown. But the
#problem is that error message here have a maximum length of 1024 chars.
2003-05-04 19:24:24 +00:00
Marcus Boerger
38da5d0124
Fix warnings
2003-05-04 19:11:48 +00:00
Marcus Boerger
9d251cde97
Don't inherit twice what is needed only once
2003-05-04 18:56:35 +00:00
Marcus Boerger
e6d0c8c237
Fix bug #23162 user_error() crashs if > 1024 bytes (Marcus, Moriyoshi)
2003-05-04 18:21:32 +00:00
Sterling Hughes
797dba03b8
semicolon
2003-05-04 00:01:44 +00:00
Sterling Hughes
c8e36ca66f
proto
2003-05-03 23:55:39 +00:00
Sterling Hughes
6f32f79cae
add an accessor for the default exception
2003-05-03 23:54:57 +00:00
Sascha Schumann
e6b558edb2
Fix the *= operator
...
Slightly modified patch by Wez Furlong
2003-04-29 15:06:19 +00:00
foobar
c0cde196d7
Fixed bug #21820 ("$arr[foo]" generates bogus E_NOTICE, should be E_PARSE)
2003-04-25 10:13:51 +00:00
Sascha Schumann
04d2905fb5
add safe_emalloc
2003-04-24 03:35:06 +00:00
Stanislav Malyshev
ad01495a48
Change get_class() so that it returns qualified names for namespaced
...
classes.
*HEADS UP*: get_class_name() handler interface is changed, now it should
allocate the space it returns with emalloc, and the users free it. If
anyone has problems with it or has suggestions how to do it without this -
please tell.
Also: make function_exists() understand namespaces.
2003-04-21 17:01:34 +00:00
Stanislav Malyshev
c5b1314e05
make import * fail if such classes or functions already there
2003-04-21 12:14:12 +00:00
Sterling Hughes
b4262dcf17
Add check for final properties
2003-04-20 14:52:40 +00:00
Stanislav Malyshev
52ac291c54
Check name before '::' so that it would be a namespace in zend_lookup_ns_class
2003-04-20 14:40:38 +00:00
Stanislav Malyshev
ba02f60ee4
refine the set_error_handler fix
2003-04-20 14:20:20 +00:00
Stanislav Malyshev
faafbd6edd
Fix for bug #21094 (set_error_handler can not accept methods),
...
by Timm Friebe
2003-04-20 14:18:15 +00:00