Commit Graph

504 Commits

Author SHA1 Message Date
Marcus Boerger
15964bb35d Fix order of class_entry member initialization (needed for example for DOM)
# You need to completley rebuild PHP after this patch.
2003-12-28 15:18:05 +00:00
Marcus Boerger
50888a100c Preserve class name casing. 2003-12-22 22:34:28 +00:00
Dmitry Stogov
3c4cfd3ec8 Dynamic function call from object's property was fixed
(See "tests/lang/bug24926.phpt" and "tests/lang/bug25652.phpt")
2003-12-17 14:45:59 +00:00
Stanislav Malyshev
6d5eb809be export class initialization function 2003-12-16 10:51:51 +00:00
Zeev Suraski
3a42babad6 Fix behavior of return-by-reference functions. Remove erroneous warnings,
add E_STRICT warnings in case you return something by reference that you're
not supposed to (anything that's not a variable, or a return-value of a
function that returned by reference).
2003-12-14 16:09:07 +00:00
Marcus Boerger
8a8deee8a0 This test is against interfaces not abstract classes. 2003-12-06 19:02:12 +00:00
Andi Gutmans
f4d6a5c7cf - Remove two unneeded convert_to_string() (found by Marcus)
- Change illegal use of string offset to E_ERROR
2003-12-05 16:28:54 +00:00
Andi Gutmans
d7f839cce7 - Fix for bug #26182 2003-12-02 12:06:03 +00:00
Marcus Boerger
af5489d91b Revert accidential commit until decision 2003-11-29 17:05:17 +00:00
Marcus Boerger
9ffd44e94a Make exception code more robust:
- Fix error in calculation of trace-string length
- Allow to overload __strostring() and make it work for uncaught exceptions
- Show exception thrown while displaying exceptions
2003-11-29 17:03:45 +00:00
Andi Gutmans
d344648b07 - Fix __autoload() to preserve class case.
- Heads up, this patch might break stuff so please let me know if you
- bump into any problems.
2003-11-24 18:13:29 +00:00
Marcus Boerger
1eaf126a7a Backpatch the correct opcode for list(), property overloading needs more
opcodes (Bugfix #26257).
2003-11-18 07:19:55 +00:00
Andi Gutmans
db2a1f4590 - Make sure internal clasess are malloced 2003-11-13 06:40:34 +00:00
Marcus Boerger
296529b886 Split isset/isempty for object property and object dimension hooking. 2003-11-10 16:14:44 +00:00
Marcus Boerger
77923b0eb1 Add missing initialization. 2003-11-07 10:22:16 +00:00
Stanislav Malyshev
44c3f0066b make CATCH opcode use "class" T like other opcodes do - via IS_CONST 2003-10-30 11:11:48 +00:00
Shane Caraveo
4bde74c3be fix crash in do_implement_interface when compiling
pear/PHPUnit/Framework/TestCase.php line 63
while only interface_gets_implemented is the issue in this instance, both
these vars were unitialized, causing potential other issues
2003-10-28 05:24:46 +00:00
Marcus Boerger
3c62b3b5ac Expand Interface C API.
In short: zend_class_entry->interface_gets_implemented()  allows to modify
the class entry of a class when an interface gets implemented.
2003-10-22 19:59:58 +00:00
Marcus Boerger
b0b82541e8 Fix class/iterator relationship & handling 2003-10-18 18:43:31 +00:00
Zeev Suraski
2ab30d7133 Allow foo::$bar() 2003-10-09 13:44:44 +00:00
Moriyoshi Koizumi
ddd49b34c8 Remove redundant '\n' 2003-09-30 00:32:41 +00:00
Marcus Boerger
909bd62a43 Show name of missing function as typed 2003-09-17 11:06:11 +00:00
Marcus Boerger
46b8801b35 Go with studlyCaps in error messages/backtrace/reflection output 2003-09-17 10:14:12 +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
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
d1b74000ad Fix error messages 2003-09-02 23:12:37 +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
Zeev Suraski
aaa1cdca31 Fix a problem in implicit public properties and inheritance 2003-08-29 08:51:43 +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
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
Zeev Suraski
a9107e2be1 Use pemalloc() 2003-08-24 16:17:45 +00:00
Marcus Boerger
baaa4c903d Internal classes can now have default properties. 2003-08-23 19:37:39 +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
Zeev Suraski
b5786d4220 ws 2003-08-18 20:43:09 +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
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
Marcus Boerger
2bbf4ad261 Bugfix #24637 __destruct not called 2003-08-10 23:59:35 +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
Stanislav Malyshev
b6ff804cfe fix leaks: bug #24831 2003-08-04 10:40:05 +00:00
Zeev Suraski
1959133fb3 Simplify code using XOR 2003-08-04 07:53:09 +00:00