Hello Pierre-Alain,

Tuesday, January 13, 2004, 12:10:14 AM, you wrote:

> On Tue, 13 Jan 2004 00:31:33 +0200
> Andi Gutmans <[EMAIL PROTECTED]> wrote:

>> I think the major issues are a few engine bugs which we are looking
>> at. If you have any others then feel free to bring them up, with
>> patches even better. However, it's not that we're going fast. We're
>> actually crawling it's just that very few people are making an effort
>> to fix the remaining critical bugs. No major PHP release has taken
>> this long, and the previous ones were complete rewrites.

> Note I send all I can provide to you (zeev and you) and/or the list as
> well as a deep description on irc with marcus.

> Two of them are well known, the static call of a method inside another
> method of an instantiated object, and the $a->a++; .= += and friends.

The problem here are virtual properties that are not stored via a hashtable
in the object. The problem (of course) is that the read (RW) handler creates
a temp container for the property value. As a consequence the changed value
needs to be written back using the write handler. To accomplish that we have
two options:
a) Chnage the signature of the read handler so it returns whether ot not the
   prop is a virtual prop and use write after the change if so.
b) Somehow identify the situation and print out a E_ERROR.

> One is more vicious, see ilia post and the mail I forward to you and
> Zeev. The problem is SHUTDOWN try to call the dtor and friends of an
> extension once this extension has been already unloaded => crash.

> The last (most important) point is about some inconsistencies in the
> get_properties internals call. The behiavors are either wrong or badly
> documented. Feel free to ask more details if my mail do not suffice to
> explain the problem. In summary:
> foreach & reflection APIs do not rely only on these functions but seems
> to access the propery hashtable directly (failed to see where sorry...).
> In my usage foreach loops over the 1st property, endless. And reflection
> does not work. For what I see:

> - this is the expected behiavors and make the properties callback kinda
>   useless or not flexible and the doc (headers at least) should be
>   updated asap (as ZE2 is features freezed, developers can start to rely
>   on expected behiavors, even with some bugs)

> - this is a bug, and we can wait before adding too much hacks in our ext
>   ;)

> I sent you a mail with all references to the cvs files to reproduce
> and/or see where this problem occurs. Feel free to ask more infos or
> blame me if I'm not clear enough.

> I apologize to do not be able to provide patches for ZE2, not I have not
> tried but I miss the time to enough clue about its internal function, at
> least for this part.

>> Just so you are aware, there has not been one PHP release (nor major
> ...
>> even released). It was actually worse off. Things are already running
>> pretty well.

> I'm aware about that, but thanks for the fish ;-). What I tried to say
> is RC1 means we have bugs but the behiavors are or will be as described.
> That's my main issue (for now ;-) ).

> hth

> pierre



-- 
Best regards,
 Marcus                            mailto:[EMAIL PROTECTED]

-- 
PHP Internals - PHP Runtime Development Mailing List
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to