Marcus Boerger
f8a376fe8e
Change tostring() into __toString() to match method name used in casting.
2003-09-18 11:55:57 +00:00
Marcus Boerger
71ba442768
Fallback to default behaviour for unsupported object type conversions
2003-09-18 11:50:05 +00:00
Marcus Boerger
d7fdf15a41
- Allow partial type conversion support for objects.
...
- Add support for object to string conversion from userspace by method
__toString() and add a test.
2003-09-18 11:38:33 +00:00
Marcus Boerger
87045df4ce
Add missing check
2003-09-18 10:21:38 +00:00
77669838d0
ChangeLog update
2003-09-18 00:32:25 +00:00
Marcus Boerger
909bd62a43
Show name of missing function as typed
2003-09-17 11:06:11 +00:00
Marcus Boerger
755c404d08
Use studlyCaps in exception class
2003-09-17 10:15:00 +00:00
Marcus Boerger
46b8801b35
Go with studlyCaps in error messages/backtrace/reflection output
2003-09-17 10:14:12 +00:00
328a6b862a
ChangeLog update
2003-09-17 00:31:56 +00:00
Marcus Boerger
d2088841a4
- Make it clear whether it is an interface or a class
...
- Fix static properties
2003-09-16 19:31:45 +00:00
596ef9704b
ChangeLog update
2003-09-16 00:32:09 +00:00
Marcus Boerger
6bf04aff5b
Revert - need to look for a better solution
2003-09-15 21:00:38 +00:00
Marcus Boerger
16a816b92c
Bugfix #25547
2003-09-15 20:20:14 +00:00
Zeev Suraski
36133c4d0b
Simplify / fix
2003-09-15 08:13:34 +00:00
def79d3754
ChangeLog update
2003-09-15 00:34:42 +00:00
Marcus Boerger
9d7f2fd9f0
Bugfix #25335
2003-09-14 19:56:37 +00:00
Zeev Suraski
e0508c13bb
Commit 64-bit fixes to the standard operators
...
by Ard Biesheuvel (abies@php.net )
2003-09-14 17:37:01 +00:00
Marcus Boerger
1c86e53204
Bugfix #25528 (by Ard Biesheuvel)
2003-09-14 01:20:25 +00:00
576951c129
ChangeLog update
2003-09-14 00:31:51 +00:00
Marcus Boerger
dc6163fe20
Fix warnings
2003-09-13 16:49:50 +00:00
3a9e32d7dc
ChangeLog update
2003-09-12 00:32:10 +00:00
Stanislav Malyshev
5bcc602a7c
add test
2003-09-11 17:07:43 +00:00
Stanislav Malyshev
b163778fee
ws
2003-09-11 17:06:53 +00:00
Stanislav Malyshev
406ff728f1
Use scope from method, not from object
2003-09-11 17:04:26 +00:00
Marcus Boerger
6f78de02f0
Use type instead of constant
2003-09-11 10:26:47 +00:00
d73045166b
ChangeLog update
2003-09-09 00:31:42 +00:00
Marcus Boerger
9d0506ec54
Fix property inheritance where a derived class inherits a public property
...
and owns it as an implicit public property already (noticed by Brad).
2003-09-08 23:25:57 +00:00
Marcus Boerger
62421b5201
Fix registering/derigistering of stdClass in ZTS and NON ZTS mode
2003-09-08 10:45:19 +00:00
3cbdfccaa8
ChangeLog update
2003-09-08 00:31:45 +00:00
Marcus Boerger
cdc5d69ec2
Fix foreach() called with non array
2003-09-07 23:09:30 +00:00
Stanislav Malyshev
22c6bc13c7
check for mach-o/dyld.h - needed for non-PHP ZE build
2003-09-07 13:49:15 +00:00
573abd7e50
ChangeLog update
2003-09-07 00:31:51 +00:00
Marcus Boerger
fdf3fbadf0
Disallow to changing the backtrace
2003-09-06 14:06:40 +00:00
Marcus Boerger
a986b3f6a4
Add missing newline if no static methods are available
2003-09-06 13:18:12 +00:00
Marcus Boerger
10ea007e39
- Internal functions shall be static
...
- Fix more nesting
2003-09-06 13:11:27 +00:00
Marcus Boerger
35529e1964
Fix logic
2003-09-06 13:02:16 +00:00
Marcus Boerger
c31fc7771a
- Fix CS: {{{ / }}}
...
- Fix static reflection_*::export()
- Add class reflection_object which allows to show dynamic properties
2003-09-06 12:52:40 +00:00
Marcus Boerger
f5b1114449
Use %s where it makes more sense
2003-09-06 10:59:07 +00:00
b0aff5de7d
ChangeLog update
2003-09-06 00:31:23 +00:00
Marcus Boerger
79a507e4eb
Simplify reflection_property::__constructor() and fix property factory
2003-09-05 14:48:55 +00:00
Marcus Boerger
9a39cd5501
- Don't use resorved words as variable names.
...
- Improve several exception messages.
- Fix Reflection_Property::_construct() / getDeclaringClass()
# The above does not imply that properties are fixed when returned
# by other reflection api methods.
2003-09-05 14:35:31 +00:00
Marcus Boerger
34990374e1
Fix reflection_api::__construct() (noticed by Andrey)
2003-09-05 12:14:03 +00:00
Marcus Boerger
0e3918732e
Provide string casting for exceptions by calling toString()
2003-09-05 11:40:30 +00:00
79e5df27af
ChangeLog update
2003-09-05 00:32:09 +00:00
Marcus Boerger
95649ab260
Tests show updating consts must happen once at runtime (revert optimization).
...
Add tests for static properties.
2003-09-04 16:00:01 +00:00
Marcus Boerger
4e7a782f3a
Add reflection_class::getstaticproerties()
2003-09-04 15:57:25 +00:00
e2c873fa0c
ChangeLog update
2003-09-04 00:32:10 +00:00
Marcus Boerger
be8287e55c
Partly revert and reintroduce hash table entries for the ctor.
...
# Obviously not the brightest idea i had today.
2003-09-03 21:21:18 +00:00
Marcus Boerger
5569d7fae9
Nuke unused variable, too
2003-09-03 20:28:13 +00:00
Marcus Boerger
61b96d1fe2
- Inheritance applies to __clone() too.
...
- No need to add additional functions for the constructor.
The handler uses the pointer as intended and doesn't look the the name.
2003-09-03 20:26:01 +00:00
Marcus Boerger
91ff8d67e7
Cannot turn a static property into a non static one and vice versa
2003-09-03 19:28:46 +00:00
Marcus Boerger
7bbbd5035d
Fix handling of static properties initialized to arrays
2003-09-03 18:01:22 +00:00
Marcus Boerger
1d21d48e8a
Add missing error messages when violating static property inheritance rules.
2003-09-03 16:34:35 +00:00
Marcus Boerger
1b39a5aa2c
Fix static properties.
...
#
# There's only an errormessage missing which i'll wommit as soon as i find out
# how to do it best. But besides that damn message everything works now and all
# inheritance rules apply.
#
2003-09-03 16:13:40 +00:00
Marcus Boerger
1d3d396fea
Allow redeclareing a protected property as public.
...
#
# The only known thing left at this moment is that the protected static members
# of a base class is different then the redeclared public property. I tried
# to remove both new and old static properties in the derived class and copy
# the base property with the new name. But for reasons i have to check later
# that didn't result in the expected behavior. Anyway we would need a warning
# if someone tries to change the value of a static property in a derived class.
#
2003-09-03 10:58:55 +00:00
Zeev Suraski
93f0ee5fda
Revert bogus patch
...
One must *never* use E_CORE_* error levels!
2003-09-03 08:39:43 +00:00
Marcus Boerger
2f6e25da79
Clearly distinguish between Const, Static and Other members.
...
# Const and static props have more in common then static and dynamic/implicit.
2003-09-03 00:38:13 +00:00
3b2a06382b
ChangeLog update
2003-09-03 00:31:52 +00:00
Marcus Boerger
d1b74000ad
Fix error messages
2003-09-02 23:12:37 +00:00
Marcus Boerger
e569b5aee5
Allow redeclaring of protected properties as public (for internal classes).
...
# See http://news.php.net/article.php?group=php.zend-engine.cvs&article=1737
# for the part not fixed (e.g. property redeclaration of userland classes)
2003-09-02 20:49:42 +00:00
Marcus Boerger
560d3ab36a
Use appropriate function for property name unmangling.
...
# Make Andrey happy
2003-09-02 14:46:02 +00:00
Marcus Boerger
7148cb9e73
Make these static as noticed by Andrey
2003-09-02 14:11:53 +00:00
Marcus Boerger
9702c70a35
Synch/Unify error messages related to function/method calls
2003-09-02 14:08:59 +00:00
Marcus Boerger
469b746b4d
Fix error level
2003-09-02 13:28:34 +00:00
Marcus Boerger
0f3374615b
Currently we cannot support static ctor/dtor
2003-09-02 13:26:25 +00:00
Marcus Boerger
bd86aff005
These are implicit properties as denoted by the flag. Dynamic properties only
...
exist in one single object and currently reflection api is not capable of
showing those.
2003-09-02 13:12:47 +00:00
Marcus Boerger
f03801bdd6
Don't loose information if no parameters were shown.
...
# Noticed by Sebatian Bergmann
2003-09-01 21:40:58 +00:00
Marcus Boerger
bca0019d43
Fix initial buffer size
2003-09-01 21:14:09 +00:00
Marcus Boerger
2b19c5435e
Fix class handling of invoke
2003-09-01 21:11:38 +00:00
Marcus Boerger
d7fa986db8
Show {main} and prevent showing empty stack traces
2003-09-01 20:54:48 +00:00
Marcus Boerger
0036ed9064
Clearify this
2003-09-01 20:02:47 +00:00
Marcus Boerger
bef3e13caf
Add missing '}'
2003-09-01 19:47:34 +00:00
Sebastian Bergmann
07ef05adb5
Revert what I think is an accidental commit by Marcus that slipped in at revision 1.23. Declaring getMessage() as final is a PITA, so I hope it will not come to that.
2003-09-01 17:26:57 +00:00
Marcus Boerger
cbd08869f2
Add static reflector::export() and its implementations.
...
#
# This makes the main reflection use a lot easier.
#
2003-09-01 16:13:24 +00:00
Marcus Boerger
a389286b99
Set the params in the struct
2003-09-01 15:09:57 +00:00
Marcus Boerger
c7f1c2f74f
Invalidate exception in this case too
2003-09-01 13:05:50 +00:00
Marcus Boerger
1257b407a6
WS
2003-09-01 13:04:55 +00:00
ff647c501f
ChangeLog update
2003-09-01 00:31:37 +00:00
Marcus Boerger
4506d4ea24
Don't repeat first const count(consts) time
2003-08-31 15:47:48 +00:00
Marcus Boerger
660c14e74a
Beautify output
2003-08-31 15:30:13 +00:00
Marcus Boerger
4af0621036
Add reflection_parameters, patch by Timm Friebe
2003-08-31 15:06:54 +00:00
Marcus Boerger
f9ee319152
Excluded chars < 32 when displaying string parameters that would obliterate output.
2003-08-31 12:40:29 +00:00
Zeev Suraski
f1b80b9210
Attempt at fixing the linkage problem in Win32
2003-08-31 12:38:50 +00:00
Marcus Boerger
fb4a63a07d
Synch error message with other one to fix tests
2003-08-31 11:38:31 +00:00
Marcus Boerger
8376b7eff7
Check whether we may access tat union
2003-08-31 11:21:30 +00:00
Marcus Boerger
d15ad4609d
Revisited: Replace the non portable code by spprintf
2003-08-31 10:52:23 +00:00
Marcus Boerger
ade319ac54
Using zend_spprintf should be faster here
2003-08-31 10:06:13 +00:00
Marcus Boerger
d45fd8a1b1
Make vspprintf available as zend utility function. Use it in exception output.
2003-08-31 09:35:54 +00:00
c9a69abe25
ChangeLog update
2003-08-31 00:31:46 +00:00
Marcus Boerger
00fddc9b83
Actually fetch the parameter
2003-08-30 23:55:04 +00:00
Marcus Boerger
f1c92fa4c5
- Calling abstract methods should be a error for consistency reason.
...
- So in reflection_api we use the reflection_exception again.
2003-08-30 23:51:42 +00:00
Marcus Boerger
80c0cdf7f7
Even though it is ignored this should be correct
2003-08-30 19:01:10 +00:00
Marcus Boerger
655f2dc572
Add frame numer and finally display stack trace in the message.
...
#
# And voila - nice useable and helpfull exceptions in PHP.
# Now we need to tell ppl 'anyway don't use them if possible'.
#
2003-08-30 18:58:40 +00:00
Marcus Boerger
c80eb4573f
Add exception::traceAsString() and exception::toString()
2003-08-30 18:28:24 +00:00
Marcus Boerger
6c69b28790
fci.function_table & fci.function_name are not needed since we use zend_fcall_info_cache
2003-08-30 13:47:27 +00:00
Marcus Boerger
e679504861
Be precise
2003-08-30 13:38:23 +00:00
Marcus Boerger
49a538d054
Actually using fcc would be a good idea
2003-08-30 12:58:35 +00:00
Marcus Boerger
f7f49e4584
- The compiler can't detect all abstract function calls so we need to check.
...
# In this case throwing a dedicated exception is better than the error we
# show when the compiler can detect the abstract call because its run-time.
2003-08-30 11:40:37 +00:00
Marcus Boerger
ad31a021bc
Make those final (see comment)
2003-08-30 11:33:41 +00:00
707accd337
ChangeLog update
2003-08-30 00:31:40 +00:00
Marcus Boerger
047a574e6c
- Add zend_merge_properties() which is designed to serve *_fetch_object().
...
- Explain drawbacks of object_and_properties_init and zend_merge_properties.
#
# I guess we can live with the purity problem of potentially calling __set()
# of an object which wasn't already ctored.
#
2003-08-29 23:27:22 +00:00
Marcus Boerger
50040c8ae9
- Use zend_fcall_info_cache in invoke() to improve speed.
...
# This also fixes the problem with calling static methods.
2003-08-29 21:46:12 +00:00
Zeev Suraski
aaa1cdca31
Fix a problem in implicit public properties and inheritance
2003-08-29 08:51:43 +00:00
Sascha Schumann
dcfb7638bc
improve a number of zend_debug format strings
2003-08-29 07:34:37 +00:00
a92363f694
ChangeLog update
2003-08-29 00:31:41 +00:00
Marcus Boerger
bdd2d4aacf
Need to tell zend_fetch_debug_backtrace() whether to skip top function or not.
...
# And i wondered why the trace wasn't rally accurate.
2003-08-29 00:16:00 +00:00
Marcus Boerger
b3f3ddd1b5
Add public read access to protected
2003-08-28 23:43:56 +00:00
Marcus Boerger
fa70708d15
Add zend_throw_exception_ex() which allows to format exception messages.
...
#
# Since we don't have any portable way of printing into a dynamic buffer i
# used a stack buffer of 1K (just like the error printing) and used a dynamic
# buffer in case the necessary function is available.
#
2003-08-28 22:56:41 +00:00
Marcus Boerger
12376a2270
Classe tables work this way
2003-08-28 22:53:24 +00:00
Marcus Boerger
8d3620aea8
- Split debug_backtrace() into lowlevel c function and php function wrapper
...
- Add trace property to default method based on new zend_fetch_debug_backtrace
# Unforunatley the handler for uncaught exception can't show this backtrace
# simply because there is currently no way to do it. If i can think of a
# solution i'll add it. Until them i am open to any ideas/help.
2003-08-28 20:35:54 +00:00
Sascha Schumann
744c68e447
older gccs don't understand attribute((format)) on function pointers
2003-08-28 17:31:31 +00:00
Sascha Schumann
83bd1f4398
ZEND_GCC_VERSION should always be defined to a number so we can use
...
simple comparisons all the time.
2003-08-28 17:04:16 +00:00
Sascha Schumann
2e36578cfd
Add format attribute to a number of functions
...
Kill a few warnings
2003-08-28 16:41:20 +00:00
Sascha Schumann
169d43e5fa
cleanup & centralize ZEND_GCC_VERSION and ZEND_ATTRIBUTE_MALLOC so that
...
they can be used by downstream applications
2003-08-28 14:53:02 +00:00
Sascha Schumann
f065aba3ba
Enable attribute((malloc)) for GCC 2.96
2003-08-28 11:55:39 +00:00
Sascha Schumann
6d7e56a0c8
GCC 2 does not know about malloc yet.
2003-08-28 06:17:05 +00:00
Sascha Schumann
cf1f6e3c4c
provide attribute((malloc)) where appropiate
2003-08-28 05:50:15 +00:00
8a00475722
ChangeLog update
2003-08-28 00:32:00 +00:00
Marcus Boerger
43836e97c5
Nuke unused variable
...
# I should have taken Timm's patch
2003-08-27 20:48:41 +00:00
Marcus Boerger
7f5196953c
Fix reflection_class::newInstance()
2003-08-27 20:45:34 +00:00
e01eddf01d
ChangeLog update
2003-08-26 00:32:02 +00:00
foobar
28447d62da
- Fixed bug #25240 (spaces before pre-processor directives)
2003-08-25 23:24:29 +00:00
15592ba096
ChangeLog update
2003-08-25 00:32:07 +00:00
Marcus Boerger
f9cebab0cb
Add missing check
2003-08-24 22:45:59 +00:00
Marcus Boerger
9603e44eb6
Fix memory source of string duplication for non internal properties
2003-08-24 18:47:11 +00:00
Marcus Boerger
19ec7a09fc
- Provide appropriate way to destroy internal zval's.
...
- Allow internal zval's of type string and disallow complex types.
- Define the default string for extensions at class level instead of ctor.
2003-08-24 17:32:47 +00:00
Marcus Boerger
cec053f707
Don't identify alias'ed functions
2003-08-24 16:35:58 +00:00
Zeev Suraski
ea36fc4143
Use ""'s if you want empty strings. We want to crash on errors.
2003-08-24 16:27:01 +00:00
Zeev Suraski
a9107e2be1
Use pemalloc()
2003-08-24 16:17:45 +00:00
Marcus Boerger
b84e9db3b8
Allow NULL, too
2003-08-24 16:13:23 +00:00
Zeev Suraski
0ac5bbd780
Never, ever, overwrite the refcount element of a connected zval!
2003-08-24 15:59:19 +00:00
Marcus Boerger
e44d0f526c
Add dedicated reflection_exception
2003-08-24 15:07:54 +00:00
Marcus Boerger
4e5e7502b8
Allow to throw instances of classes derived from exception
2003-08-24 15:07:00 +00:00
Marcus Boerger
d3473d1f58
- Provide a unified way to display uncaught exceptions, which shows
...
file/line/message info if possible.
- Add zend_eval_string_ex() to be able to handle exceptions in eval'd code.
- Use above function to fix memleaks in CLI.
2003-08-24 13:10:03 +00:00
Marcus Boerger
669603f69d
Make invoke() work
2003-08-24 12:07:13 +00:00
Marcus Boerger
96d4ac7a3f
zend_parse_parameters 'O' works the way we need here
2003-08-24 11:34:01 +00:00
Marcus Boerger
418a7f980c
Not needed
2003-08-24 11:28:53 +00:00
Marcus Boerger
d4cf96c524
Make use method macros
2003-08-24 11:25:08 +00:00
Marcus Boerger
eef1b7b1e8
One of PPP is needed, too
2003-08-24 11:24:10 +00:00
Marcus Boerger
bd07968bef
- Add Reflection_Function::isAlias
...
- Use ZEND_ME/ZEND_METHOD
- Fix static entries
2003-08-24 11:11:55 +00:00
Marcus Boerger
1c2512ddea
- Add fn_flag ZEND_ACC_ALIAS
...
- Unify way of function_entry generation by new macro ZEND_FENTRY
2003-08-24 11:09:45 +00:00
Marcus Boerger
3605be8a29
Fix fn_flags handling
2003-08-24 11:07:30 +00:00
Marcus Boerger
38805f2809
Add property read code and use that in default exception class
2003-08-24 00:36:53 +00:00
b8799ff085
ChangeLog update
2003-08-24 00:32:03 +00:00
Marcus Boerger
c3d60fd7ff
Allow zend_throw_exception() to also set the exception code
2003-08-23 19:48:52 +00:00
Marcus Boerger
96fa63d6bf
Exception has 4 protected default properties (message,code,file,line).
...
They are all initialized at c-level constructor correctly.
2003-08-23 19:41:22 +00:00
Marcus Boerger
baaa4c903d
Internal classes can now have default properties.
2003-08-23 19:37:39 +00:00
Marcus Boerger
5e77dc44dc
Show ctor/dtor information and those don't return anything
2003-08-23 15:47:23 +00:00
Marcus Boerger
fbda310a41
- Flag ctor/dtor methods
...
- Use this to prevent memleaks when an exception gets thrown in ctors.
# I added the dtor flags for consistency, atm a compareable check in
# isn't necessary for destruction. But anyway i'll use this for the
# Relection API too.
2003-08-23 15:38:58 +00:00
Marcus Boerger
43334207ab
Make exception code more robust
2003-08-23 14:22:28 +00:00
d696f1267a
ChangeLog update
2003-08-23 00:31:15 +00:00
Ilia Alshanetsky
f94b536bc8
Replace *magic number* with a much nicer define.
2003-08-22 18:50:12 +00:00
Ilia Alshanetsky
c29e30d3af
Set 2147483647 as the module number of user defined constants
...
Fixed a few bugs and cleaned up get_defined_constants().
2003-08-22 02:08:10 +00:00
d963f8fea3
ChangeLog update
2003-08-22 00:31:48 +00:00
Marcus Boerger
0e32aaa8c6
Add function 'zend_throw_exception(char *message, int duplicate TSRMLS_DC);'
...
to provide an easy way to throw exceptions for extension developers.
2003-08-21 23:32:13 +00:00
Marcus Boerger
fda38bf2ff
If ce not given than any object would do
2003-08-21 15:24:33 +00:00
Marcus Boerger
80b3498839
Paramspec 'O' / zend_parse_method_params(): only if given check the class type
2003-08-21 14:39:17 +00:00
a060bc75c7
ChangeLog update
2003-08-21 00:31:53 +00:00
Zeev Suraski
1e70f45112
adhere to silence
2003-08-20 23:27:04 +00:00
Marcus Boerger
56e8757d77
Fix counting number of leaks
2003-08-20 22:15:01 +00:00
90150d8625
ChangeLog update
2003-08-20 00:31:10 +00:00
Wez Furlong
1a40feb965
fix build
2003-08-19 01:15:47 +00:00
81ec251619
ChangeLog update
2003-08-19 00:30:59 +00:00
Wez Furlong
ef498a27b8
linkage for C++
2003-08-18 23:19:27 +00:00
Zeev Suraski
6ab9c1a336
Prevent access to internal engine functionality
2003-08-18 23:11:58 +00:00
Zeev Suraski
49c4866a47
- Improve tracking
...
- Fix several overloading issues
2003-08-18 22:31:11 +00:00
Zeev Suraski
0dba58c373
Improve tracking
2003-08-18 21:17:26 +00:00
Zeev Suraski
76aaeebdf0
Improve tracking
2003-08-18 20:44:12 +00:00
Zeev Suraski
b5786d4220
ws
2003-08-18 20:43:09 +00:00
4863dd5323
ChangeLog update
2003-08-18 00:31:11 +00:00
Marcus Boerger
744dd20520
Fix warnings
2003-08-17 19:14:30 +00:00
Marcus Boerger
717b5afe1d
Fix warnings
2003-08-17 18:56:54 +00:00
Sascha Schumann
602d1b0045
One bit fields need to be unsigned, otherwise there is no storage for
...
the sign bit
"A signed bit field has a length of 1 bit."
2003-08-17 13:49:52 +00:00
Sascha Schumann
c7d9be97ca
explicitly cast size_t to zend_uint to avoid warnings on 64 bit platforms.
2003-08-17 13:45:51 +00:00
Marcus Boerger
6dbc0bdc35
Remove unnecessary if
2003-08-17 12:38:27 +00:00
Marcus Boerger
1e17ebe047
Put the code where it belongs - fixes a warning and confusion
2003-08-17 12:27:33 +00:00
Marcus Boerger
9c68f33b51
Implement a TBD: JMP to the end of foreach
2003-08-17 12:17:34 +00:00
Marcus Boerger
f2d4e4ca48
WS
2003-08-17 12:16:10 +00:00
Marcus Boerger
82050ae8bc
- Show class names in error messages when dealing with methods
...
- Mark class as abstract if it gets an abstract method
2003-08-17 00:57:35 +00:00
eca2582760
ChangeLog update
2003-08-17 00:31:43 +00:00
Marcus Boerger
fe1a086d19
Simplify abstract method declaration
2003-08-16 20:46:22 +00:00
Marcus Boerger
7a12eb8a2d
WS
2003-08-16 20:12:01 +00:00
beb51466d5
ChangeLog update
2003-08-16 00:31:07 +00:00
Sascha Schumann
b29b4441db
Restrict scope of inline functions to compile unit
...
Submitted by: Jason Greene <jason@inetgurus.net>
2003-08-15 21:02:35 +00:00
5eb3bb00db
ChangeLog update
2003-08-14 00:31:18 +00:00
31a0a30d9d
ChangeLog update
2003-08-13 23:27:30 +00:00
ea2632506d
ChangeLog update
2003-08-13 23:27:28 +00:00
808e49fea0
ChangeLog update
2003-08-13 23:24:59 +00:00
4713ec290a
ChangeLog update
2003-08-13 23:20:59 +00:00
Marcus Boerger
ca9c03b504
Add missing entry
2003-08-13 07:17:16 +00:00
Marcus Boerger
e08aedf5ff
- Show classes in case of methods
...
- Using sprintf here was a bad idea
2003-08-13 07:02:44 +00:00
e58a46c2ae
ChangeLog update
2003-08-13 00:30:30 +00:00
Zeev Suraski
d2971e506c
Remove bogus patch - the number of elements is unrelated
2003-08-12 06:21:02 +00:00
dc36db0715
ChangeLog update
2003-08-12 00:30:27 +00:00
Marcus Boerger
f77f977d0e
Bugfix 21918
2003-08-11 20:14:25 +00:00
Masaki Fujimoto
ab9dcec292
- added script encoding support to Zend Engine 2.
...
this enables ZE2 to gracefully parse scripts written in UTF-8 (with BOM),
UTF-16, UTF-32, Shift_JIS, ISO-2022-JP etc... (when configured with
'--enable-zend-multibyte' and '--enable-mbstring')
2003-08-11 05:24:42 +00:00
ad29f2f006
ChangeLog update
2003-08-11 00:30:22 +00:00
Marcus Boerger
2bbf4ad261
Bugfix #24637 __destruct not called
2003-08-10 23:59:35 +00:00
ae4b25fe88
ChangeLog update
2003-08-10 00:30:29 +00:00
Moriyoshi Koizumi
fe489dcb4f
Fix segfault when a referenced parameter is specified with typehint.
...
Result of the node will never be used because verify_instanceof handler has
been eliminated.
2003-08-09 19:29:38 +00:00
Marcus Boerger
d4aa155d25
Precise destructor errors
2003-08-09 14:32:33 +00:00
2d8509fe20
ChangeLog update
2003-08-08 00:30:25 +00:00
Moriyoshi Koizumi
35ffd45c26
Add missing right parensis
2003-08-07 19:36:13 +00:00
Zeev Suraski
5b312b571e
Clarify use of original_function_state_ptr
2003-08-07 07:37:19 +00:00
Marcus Boerger
e9a4c91ca4
- Fix warnings
...
- Fix code
2003-08-07 07:17:34 +00:00
0f94f538ff
ChangeLog update
2003-08-07 00:30:30 +00:00
Zeev Suraski
0a83ebfd56
clarify :)
2003-08-06 07:38:56 +00:00
26b85413ea
ChangeLog update
2003-08-06 00:30:27 +00:00
foobar
cc011660e7
Fix the build
2003-08-05 23:50:59 +00:00
Zeev Suraski
92b4013e8d
Try to put an end to the endless number of call_user_function variants.
...
zend_call_function() now takes a structure that should contain all of the
necessary information. If further information is necessary in the future,
then we'll be able to add it without having to introduce a new function.
As for caching - the 2nd, optional argument is a struct that can hold all
of the information that's necessary to invoke the function, including its
handler, scope and object it operates on (if any). Note that you may only
use a cache if the arguments you provide to zend_call_function() are
identical to the ones of the last call, except for the argument and return
value information.
The recently introduced fast_call_user_function() was removed
I fixed most of the places that used fast_call_user_function() to use caching
but there are still some that need to be fixed (XML and reflection)
2003-08-05 10:24:40 +00:00
Stanislav Malyshev
8547de3f16
fix syntax
2003-08-05 08:03:26 +00:00
Stanislav Malyshev
f572897dea
remove stack clean - it makes trouble
2003-08-05 07:56:49 +00:00
abd7612009
ChangeLog update
2003-08-05 00:30:17 +00:00
Marcus Boerger
de32c1de56
Fix ZTS
2003-08-04 19:57:53 +00:00
Marcus Boerger
65557ef672
Nuke unused variables
2003-08-04 19:56:12 +00:00
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
Sebastian Bergmann
a17d2f37ea
Corrected patch by Marcus Börger <helly@php.net>.
2003-04-19 09:04:15 +00:00
Sterling Hughes
48b3303217
Patch by Marcus Börger to fix some memleaks
2003-04-18 18:40:53 +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
Sebastian Bergmann
5be2fe410e
Patch by Marcus Börger <helly@php.net>.
2003-04-17 14:33:38 +00:00
Sebastian Bergmann
dccdb2f549
Fix warnings.
2003-04-11 17:30:42 +00:00
Sterling Hughes
c013f78274
satisfy andi's switch fetish ;-)
2003-04-10 20:08:02 +00:00
Sebastian Bergmann
974f406eda
Fix ZTS build. Fix warning.
2003-04-10 17:02:31 +00:00
Sebastian Bergmann
668fc20b97
Document 'const' keyword.
2003-04-10 16:54:46 +00:00
Sterling Hughes
0191ba5de1
allow expressions within constants, so the following is possible
...
class foo {
const a = 1<<0;
const b = 1<<1;
const c = a | b;
}
this makes const a compile-time expression. all other operators are
unaffected.
2003-04-10 15:43:47 +00:00
Zeev Suraski
65f06d8027
Revert Harald's commit
2003-04-10 04:43:42 +00:00
George Schlossnagle
dd090f4a77
One line fix so that it will compile
2003-04-10 03:11:27 +00:00
Harald Radi
07e775bcde
removing the *syntactical sugar* again
...
# commiting that on behalf of the community :)
# don't blame me, i'm just acting as a proxy
2003-04-09 20:23:06 +00:00
Andrei Zmievski
591863d4b0
Switch some functions to use new zend_lookup_ns_class() methods. This
...
means that they will accept both simple and fully qualified class names.
2003-04-08 18:22:32 +00:00
Andrei Zmievski
e5f4c783bc
Rename zend_register_internal_class_in_ns() to a better, less filling,
...
but with the same great taste zend_register_internal_ns_class().
2003-04-08 17:40:56 +00:00
Andrei Zmievski
3b47a64269
Add zend_lookup_ns_class() function.
2003-04-08 17:10:01 +00:00
Andrei Zmievski
2154cddd0e
Move memnstr into Zend and make an alias for BC in PHP.
2003-04-08 15:04:26 +00:00
bf554c279f
ChangeLog update
2003-04-08 00:31:01 +00:00
foobar
0abeba5895
Fixed bug #23093 (highlight_string() crashed with __FUNCTION__)
2003-04-07 22:51:28 +00:00
Sterling Hughes
5ae7fa422d
add markers that make this file easy to parse for external sources
2003-04-07 21:48:17 +00:00
622340a119
ChangeLog update
2003-04-05 01:30:51 +00:00
Andrei Zmievski
81482833b5
Introduce ZEND_ME() and ZEND_METHOD() macros. Use these for declaring
...
class methods to avoid name collisions.
2003-04-04 15:38:20 +00:00
Stanislav Malyshev
6ed305945d
Fix namespace issues
2003-04-04 12:25:47 +00:00
8809836586
ChangeLog update
2003-04-04 01:30:57 +00:00
Andrei Zmievski
e3f1641527
Patch from Timm Friede for when EG(active_namespace) is NULL initially.
2003-04-03 19:05:25 +00:00
Andrei Zmievski
91eff553e3
Initialize all relevant zend_class_entry fields to avoid accidental
...
crashes.
2003-04-03 14:44:41 +00:00
Sebastian Bergmann
76097eda64
Leftover.
2003-04-03 05:06:03 +00:00
Sterling Hughes
4fa866d667
i will not commit before 12:00
...
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
i will not commit before 12:00
2003-04-03 03:07:58 +00:00
61e60f4ffe
ChangeLog update
2003-04-03 01:30:48 +00:00
Andrei Zmievski
3d62a3491e
- Add zend_register_internal_namespace() API function.
...
- Add zend_register_internal_class_in_ns() API function.
2003-04-02 20:27:44 +00:00
Andrei Zmievski
1885d00861
Simplify.
2003-04-02 18:15:08 +00:00
Derick Rethans
7627bf7b36
- Fix whitespace
2003-04-02 17:23:04 +00:00
Sterling Hughes
bb7c2ddb23
add the ability for curl_multi_info to introspect the handles.
...
# Zend commit doesn't break anything, so I'm committing it. If anyone
# has problems, just speak up. :)
2003-04-02 16:58:52 +00:00
Andrei Zmievski
bdd3b6042c
Implement a different way to catch documentation comments.
2003-04-02 16:51:49 +00:00
Andrei Zmievski
e6255b06b1
Revert portions of the doc comment patch. There should be no parser
...
errors now.
2003-04-02 16:13:12 +00:00
Stanislav Malyshev
800de8acb0
allow class_exists() to work with namespaces too.
...
add CLASS_IS_NAMESPACE macro
2003-04-02 15:28:31 +00:00
Stanislav Malyshev
e12415c945
fix typo
2003-04-02 15:03:24 +00:00
Stanislav Malyshev
8a03806a80
fix parameterless get_declared_classes call
2003-04-02 10:36:37 +00:00
1a0b455d71
ChangeLog update
2003-04-02 01:30:47 +00:00
Andrei Zmievski
1ad9bd68ff
Stas's patch on zend_execute.c (1.448 -> 1.449) resulted in a bug where
...
the namespaced member accesses didn't work. This should hopefully
correct it.
2003-04-01 21:02:02 +00:00
Andrei Zmievski
62f9eb8006
Split ZEND_NAMESPACE into user and internal namespaces. Hope this is
...
okay with engine folks.
2003-04-01 19:37:04 +00:00
Stanislav Malyshev
438aaf720f
improve namespace name hanfling
2003-04-01 09:43:30 +00:00
Stanislav Malyshev
334702d69a
fix get_declared_classes()
2003-04-01 09:27:05 +00:00
Stanislav Malyshev
59af205988
Add __NAMESPACE__ auto-constant.
2003-04-01 09:22:41 +00:00
Stanislav Malyshev
f9fae74ab6
make get_declared_classes() work with namespaces (based on Tal Peer's patch)
2003-04-01 08:26:14 +00:00
6a0d4df691
ChangeLog update
2003-04-01 01:30:46 +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
Stanislav Malyshev
26c51b73f1
Use strncpy instead of sprintf
2003-03-31 07:34:05 +00:00
0367454d42
ChangeLog update
2003-03-31 01:30:45 +00:00
Andrei Zmievski
52372c31cd
Since zend_do_begin_class_member_function_call assumes the previous
...
opcode is FETCH_CONSTANT, swap the calls around.
2003-03-30 18:51:04 +00:00
Sebastian Bergmann
8c06829b11
ZTS fix.
2003-03-30 13:40:40 +00:00
Stanislav Malyshev
f008808c82
Try to report class name of the exception
2003-03-30 13:19:00 +00:00
Stanislav Malyshev
bd4cdab9cf
Fix namespace switch
2003-03-30 12:39:49 +00:00
46832dbcab
ChangeLog update
2003-03-30 01:30:49 +00:00
Zeev Suraski
96231c3ab5
Add missing initialization
2003-03-29 19:20:35 +00:00
Zeev Suraski
20860feef1
Fix crash
2003-03-29 11:27:17 +00:00
Zeev Suraski
5097be302e
Initial support for enforcing prototype of abstract/interface method implementations
2003-03-29 11:19:38 +00:00
Sterling Hughes
05dfd313fb
remove unused variable
2003-03-29 05:19:27 +00:00
c6e7dead32
ChangeLog update
2003-03-28 01:30:46 +00:00
Stanislav Malyshev
1972a656e7
fix fetch_class buglet
2003-03-27 17:57:47 +00:00
953d61e173
ChangeLog update
2003-03-27 01:30:59 +00:00
Stanislav Malyshev
43e87093c1
Un-nest namespaces - now namespace X { namespace Y {} } is a parse error
...
Also refine namespaced includes
2003-03-26 20:42:23 +00:00
Ilia Alshanetsky
018d851129
Fixed bug #22900 (declaration of namespaces with same name results in leaks).
2003-03-26 17:06:08 +00:00
Sebastian Bergmann
3fc852824f
Eliminate TSRMLS_FETCH() calls in destroy_op_array() and zend_get_class_entry().
2003-03-26 07:44:11 +00:00
Sebastian Bergmann
866332a4b8
Eliminate TSRMLS_FETCH() calls in zend_objects_new() and zend_objects_get_address().
2003-03-26 06:32:53 +00:00
7c86ea761d
ChangeLog update
2003-03-26 02:25:54 +00:00
Andi Gutmans
85d2c35bfa
- Temporarily fix problem with inheriting from an internal class. This might
...
- need some rework in the future (thanks to Marcus)
2003-03-25 20:36:26 +00:00
8712da0e39
ChangeLog update
2003-03-25 02:26:04 +00:00
Ilia Alshanetsky
d53b487633
MFHZE2
2003-03-24 14:53:30 +00:00
Stanislav Malyshev
268a14e049
Fix {include|require}_once error message - if open
...
fails, don't use tream, use original name.
2003-03-24 11:54:42 +00:00
91a9f27084
ChangeLog update
2003-03-24 01:34:32 +00:00
Andi Gutmans
eba65486ad
- Fix win32 build
2003-03-23 21:27:22 +00:00
Stanislav Malyshev
5f47d77b42
resore namespace on shutdown - since some functions use
...
EG() and CG() pointers
2003-03-23 18:13:49 +00:00
Sebastian Bergmann
2698a4bd05
ZTS fix.
2003-03-23 17:18:31 +00:00
Zeev Suraski
0aef71ff89
Another fix for implicit public, perhaps it was not such a good idea :I
2003-03-23 08:14:41 +00:00
Sebastian Bergmann
2dc388e73e
Add new files to ZendTS.dsp. Sync list of files in Zend.dsp with ZendTS.dsp. ZTS fixes.
2003-03-23 06:57:16 +00:00
Sterling Hughes
91a2475485
DEFAULT_CLASSES_H not DEFAULT_INTERFACES_H
2003-03-23 04:34:00 +00:00
Sterling Hughes
e6dfbc9565
add a standard Exception class.
2003-03-23 04:32:24 +00:00
6dd4cddb7f
ChangeLog update
2003-03-23 01:33:20 +00:00
Shane Caraveo
170de9b95c
export functions needed by cli
2003-03-22 23:26:00 +00:00
Shane Caraveo
0a3ca34e87
fix crash in win32 debug build
2003-03-22 21:22:40 +00:00
00920f5207
ChangeLog update
2003-03-21 01:37:46 +00:00
Stanislav Malyshev
70fff75187
Add stdlib.h too - it is needed fot strto{ld}
2003-03-20 17:41:40 +00:00
87a06aa8ea
ChangeLog update
2003-03-20 01:33:31 +00:00
Andrei Zmievski
39d5a63803
- Keep track of starting/ending line numbers for user functions.
...
- Store last parsed doc comment in a compiler global for future use.
2003-03-19 21:17:47 +00:00
Andrei Zmievski
3a297fac22
Lowercase the function name when used as key in the function name. The
...
original case is still preserved in zend_function structure.
2003-03-19 21:07:49 +00:00
801966d951
ChangeLog update
2003-03-19 01:33:04 +00:00
Zeev Suraski
40326f6adf
- Fix situation where a derived class declares a public (or implicit public)
...
with the same name as a private in the parent
- Optimize 'static binding' of private properties a bit
2003-03-18 16:30:23 +00:00
Stig Bakken
0e6fca4f22
* email address change
2003-03-18 12:06:09 +00:00
14e9434586
ChangeLog update
2003-03-18 01:35:05 +00:00
Stanislav Malyshev
eb5fe6944d
MFZE1
2003-03-17 14:41:04 +00:00
foobar
3a26859829
Added missing zend_mm.c file and renamed zend_object_API.c -> zend_objects_API.c
2003-03-17 11:23:42 +00:00
026bd025ec
ChangeLog update
2003-03-14 01:32:56 +00:00
Andrei Zmievski
dedfa808bb
Fix warning in va_start().
2003-03-13 20:41:58 +00:00
984ab6d412
ChangeLog update
2003-03-13 01:33:14 +00:00
Andrei Zmievski
0c571538a8
Initialize the namespace when registering functions.
...
# Correct me if I'm wrong..
2003-03-12 21:43:42 +00:00
Zeev Suraski
fa7dc03edb
Fix a crash bug in the implicit public declaration
2003-03-12 09:38:19 +00:00
b838618029
ChangeLog update
2003-03-12 01:33:33 +00:00
Zeev Suraski
d405373270
Fix handling of ::func()
2003-03-11 23:19:45 +00:00
0f949bbfa1
ChangeLog update
2003-03-11 01:33:44 +00:00
Zeev Suraski
3e7cf8e15e
Clean redundant code
2003-03-10 07:20:43 +00:00
foobar
f8fc50ed6d
Fixed some leaks. Patch by Moriyoshi
2003-03-10 03:04:02 +00:00
ebf4931bcf
ChangeLog update
2003-03-10 01:32:59 +00:00
Shane Caraveo
9539dddc49
fix isinf for win32
2003-03-10 01:12:22 +00:00
Zeev Suraski
12cbee7b05
Optimize
2003-03-09 22:23:27 +00:00
Zeev Suraski
0eae231254
Fix handling of ::foo
2003-03-09 22:17:15 +00:00
Zeev Suraski
3012bdc332
Cleanup
2003-03-09 22:02:37 +00:00
Andi Gutmans
b3ebb11549
- Nuke junk
2003-03-09 21:12:12 +00:00
Zeev Suraski
8bc88d8df4
Fix parsing rules of namespaces/classes
2003-03-09 20:53:57 +00:00
Zeev Suraski
a89abf9162
Add ability to use ::interface_name in implements
2003-03-09 17:07:15 +00:00
Zeev Suraski
8e1917bdbe
Fix :: handling
2003-03-09 17:06:52 +00:00
fcd1cbfbf7
ChangeLog update
2003-03-08 01:31:41 +00:00
Sebastian Bergmann
81a346e4fe
Dedicated to Greg Beaver <greg@chiaraquartet.net>.
2003-03-07 16:45:41 +00:00
Sebastian Bergmann
ba18cd1a45
Document 'final'.
2003-03-07 11:51:19 +00:00
Sebastian Bergmann
55826fbeb5
Fix class type hints example.
2003-03-07 06:29:07 +00:00
Sebastian Bergmann
63dfff02b1
Update 'abstract' section.
2003-03-07 05:19:19 +00:00
foobar
3c9155e0cb
Renamed OnUpdateInt -> OnUpdateLong to prevent further misunderstandings.
...
# Intentionally left out any 'alias' for it, this way 3rd party extension
# maintainers will really NOTICE the change.
2003-03-07 05:15:28 +00:00
f303054b9e
ChangeLog update
2003-03-07 01:32:35 +00:00
foobar
66052056c7
Better fix for the memleaks (bug 19943) by Moriyoshi
2003-03-07 00:28:25 +00:00
Zeev Suraski
805f98065d
Fix warnings
2003-03-06 23:45:50 +00:00
Zeev Suraski
ce4690685d
Fix error message
2003-03-06 23:09:57 +00:00
Zeev Suraski
0338111950
Require abstract classes to be explicitly declared 'abstract', in order to
...
avoid making developers traverse the entire class/interface hierarchy
before they can figure out whether a class is instantiable
(ok, so it makes sense :)
2003-03-06 22:53:23 +00:00
Sebastian Bergmann
44b6894361
-german+english+.
2003-03-06 16:39:45 +00:00
Sebastian Bergmann
8f8a534c7a
D some TBDs
2003-03-06 16:30:21 +00:00
foobar
4a8abb2f3d
Fixed bug #19943 (the memleaks)
2003-03-06 16:27:05 +00:00
Ilia Alshanetsky
2b13eb4f53
More cleanup of the zend_strip() function.
...
No longer strip __LINE__, since while it may become useless it could break
code where __LINE__ is passed as a function parameter.
2003-03-06 15:38:28 +00:00
Ilia Alshanetsky
2cb46d4479
Fixed in zend_strip() that corrupted heredoc.
...
Optimized the writing routine by moving from putchar() to fwrite().
Changed hardcoded opcode # to it's defined name.
2003-03-06 14:47:13 +00:00
Zeev Suraski
44347cf64b
Change opcode name
2003-03-06 14:42:36 +00:00
Zeev Suraski
ff76511a08
Add class type hints
2003-03-06 14:31:17 +00:00
3944d7d897
ChangeLog update
2003-03-06 01:33:18 +00:00
Zeev Suraski
812d91d08c
Fix auto globals
2003-03-05 21:36:30 +00:00
Zeev Suraski
6ad2420d2d
Implement $obj::static_func()
2003-03-05 13:25:33 +00:00
Zeev Suraski
26dd8492ed
Add support for interfaces
2003-03-05 11:14:44 +00:00
41a7bc4271
ChangeLog update
2003-03-05 01:33:51 +00:00
Zeev Suraski
d5ada68654
Remove legacy code
2003-03-04 13:52:03 +00:00
Zeev Suraski
e0c3e2cf93
Remove redundant code
2003-03-04 13:36:16 +00:00
4c0c7837a7
ChangeLog update
2003-03-04 01:33:08 +00:00
Harald Radi
3f8c08b5e1
add missing strtolower
2003-03-03 01:56:14 +00:00
e2a27a23a5
ChangeLog update
2003-03-03 01:32:58 +00:00
Harald Radi
a700180f5d
commiting zend_disable_class patch for George:
...
disabled classes will be replaced by dummy classes
that print a warning upon instanciation
2003-03-03 01:22:43 +00:00
Zeev Suraski
36eae0b771
Fix destructors some more
2003-03-02 15:24:04 +00:00
Zeev Suraski
98b990e336
Improve infrastructure
2003-03-02 13:33:31 +00:00
Zeev Suraski
f7b7800479
Add infrastructure for JIT initialization of auto globals
2003-03-02 10:04:53 +00:00
4128be7f8d
ChangeLog update
2003-03-02 01:32:28 +00:00
Zeev Suraski
805637b06d
Fix mem leak
2003-03-01 19:08:41 +00:00
Andi Gutmans
1a7c0d52dc
- Make __construct() have higher priority than class name functions
...
- for constructors.
- Fix problem with the engine allowing final/abstract for the same method.
- Both patches are by Marcus Börger.
2003-03-01 14:57:49 +00:00
7be8179520
ChangeLog update
2003-02-28 01:31:36 +00:00
10fb8dadd8
ChangeLog update
2003-02-27 01:42:36 +00:00
Rasmus Lerdorf
0b5ffc4f1c
MFB: We know ini file scanning will never be interactive, so speed it up a
...
bit. Need a dynamic check for the language scanner.
2003-02-27 00:11:43 +00:00
Sebastian Bergmann
189d29061e
Syntactic sugar is sweet.
2003-02-26 08:27:14 +00:00
fd40b6d3f5
ChangeLog update
2003-02-26 02:03:08 +00:00
Zeev Suraski
5793784c93
Get the bits right - final/private fix
2003-02-25 10:03:26 +00:00
foobar
5132f3cb54
Do not redefine zend_isnan if it is already defined.
2003-02-25 07:46:15 +00:00
foobar
e9b5e34005
- Fixed bug #14245 ('make install' fails on AIX when using --with-apxs).
2003-02-25 06:35:43 +00:00
96563ce34f
ChangeLog update
2003-02-25 01:33:26 +00:00
Stanislav Malyshev
3cf20f86db
fix exception handling
2003-02-24 13:35:47 +00:00
Zeev Suraski
535aa63293
Add 'final'
2003-02-24 12:05:58 +00:00
Sebastian Bergmann
37d529f100
Remove obsolete not on redeclaring protected members.
2003-02-24 10:38:43 +00:00
Sebastian Bergmann
99c358c7cb
Leftover.
2003-02-24 10:37:45 +00:00
Sebastian Bergmann
57ae4a5ac4
Initial documentation of namespace {}.
2003-02-24 10:35:39 +00:00
424636f0dc
ChangeLog update
2003-02-24 01:32:18 +00:00
Zeev Suraski
731a55ad52
Move abstract inheritance logic to the right spot
2003-02-23 13:58:48 +00:00
Zeev Suraski
bb956372a5
Fixed abstract handling in inheritence
2003-02-23 12:51:40 +00:00
7884793dcb
ChangeLog update
2003-02-21 01:32:23 +00:00
Wez Furlong
f8e414ef70
*cough*
...
Fix another stupid mistake.
2003-02-20 21:48:46 +00:00
Stanislav Malyshev
e645f20d07
Allow namespaces to have a number of parts. I.e., now you can do:
...
namespace foo {
function abc() {}
}
...
namespace foo {
functio def() {}
}
2003-02-20 19:01:53 +00:00
43b857b9b2
ChangeLog update
2003-02-20 01:33:00 +00:00
Wez Furlong
e88da9728f
Fix stupid mistake that only affected interactive mode.
2003-02-19 14:52:56 +00:00
b66dd24323
ChangeLog update
2003-02-19 01:32:10 +00:00
Rasmus Lerdorf
891835e7aa
fileno() needs a FILE * here, and at least on FreeBSD with gcc-2.95.3
...
it is unable to figure out that this is indeed a FILE * and hence it
won't compile without this cast.
2003-02-18 22:29:27 +00:00
Zeev Suraski
955636af69
Avoid using a C++ reserved word
2003-02-18 17:18:28 +00:00
Wez Furlong
a5860e6e28
Fixup build for win32
2003-02-18 09:51:21 +00:00
Wez Furlong
e52aac940f
Implement simple stream support in the ZE scanners.
2003-02-18 09:37:54 +00:00
abcd236386
ChangeLog update
2003-02-18 01:34:00 +00:00
Zeev Suraski
827434c2a3
Whitespace & minor renames
2003-02-17 15:07:57 +00:00
Zeev Suraski
76c6d7e721
whitespace
2003-02-17 15:04:29 +00:00
Zeev Suraski
d22cc2f329
Improve handling of static member variables
2003-02-17 14:06:39 +00:00
Zeev Suraski
566e41226f
Improve Win32 build performance
2003-02-17 13:20:41 +00:00
f303085465
ChangeLog update
2003-02-17 01:31:42 +00:00
Zeev Suraski
ac0f7d9ed0
Fix complex cases of self-assignments (bugs #21600 , #22231 )
2003-02-16 19:18:23 +00:00
Zeev Suraski
f079bb65ff
Make EG(This) and EG(scope) available to internal methods
2003-02-16 19:10:27 +00:00
Zeev Suraski
004947221e
Revert patches - they weren't ready yet!
2003-02-16 18:34:48 +00:00
Zeev Suraski
372e08772d
Fix initialization
2003-02-16 18:17:19 +00:00
Georg Richter
60d1b378ed
fixed compiler warning
2003-02-16 18:04:29 +00:00
Georg Richter
c08bfd2e3f
tested patch from Zeev (fixes oo-bug in ext/mysqli)
2003-02-16 17:47:23 +00:00