Re: Clone Operations

From: Date: Wed, 07 Jun 2006 18:52:56 +0000
Subject: Re: Clone Operations
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-23979@lists.php.net to get a copy of this message
Hello Ilia, hello should be printed. As in you cannot outsmart what some people might do in their code. For example in C++ such stuff gets optimized out but only as long as the compiler detects that doing so does not result in a different bahvior. This is something you need to know for particular stuff in c++ like the ability of some compilers that can optimized out implicit clone on function return - but only if the compiler would generate the clone....ok, now back to php, do we really want to make it that complex? I think if the programmer writes clone or it is a consequnce of something else then let the clone happen and the rule end there. best regards marcus Wednesday, June 7, 2006, 3:56:44 PM, you wrote: > When it comes to "empty" clone statements, should they be executed > and then free the result (current behavior) or avoid clone all together. > For example when class x { function __clone() { echo "hello"; } } > clone new x(); code is executed, should it print hello or not print > anything at all, treating the clone operation as a NOOP? > Current behavior calls clone and then frees the result, meaning that > "hello" is printed, but I am uncertain that this is the correct > behavior, any comments? > Ilia Alshanetsky Best regards, Marcus

« previous php.internals (#23979) next »