Ahh... my favorite topic.  I think I covered all the cases
our company has hit in the following message to this list:

http://marc.theaimsgroup.com/?l=php-dev&m=109631219107237&w=2

I've never seen a response as to whether there is hope for fixes
of these problems.  I ended up hacking at an already very ugly
p*rl script (a language that shouldn't be mentioned on this list)
to look for attempts to use non-referencable things as references.
Unfortunately, not only is it in the language which must not be
named, but it also makes some assumptions about the code based on
company standards.  I keep my fingers crossed that someone with
appropriate skills will write a tool to do the check right.  The
problems can be painful to find.  e.g.

function g() {
   return NULL;
}
function h(&$x) {
   $x = 5;
}
h(g());

can cause php to crash.  (Don't bother trying to reproduce it
though.  It only causes a crash with a _lot_ of other php code
with it to make things interesting.)

Good luck!

- Todd

On Mon, 2005-02-21 at 21:21 -0500, Michael Walter wrote:
> I've as well experienced this problem several times (in a medium-size
> code base).
> 
> By returning-by-reference in the wrong places, do you mean something like
>   function foo() { return 10;}
>   $bar=&foo();
> I'm pretty convinced that even with "correct" (in that respect) code
> the crash still occurs.
> 
> Michael
> 
> 
> On Mon, 21 Feb 2005 15:56:34 -0300, Martin Sarsale
> <[EMAIL PROTECTED]> wrote:
> > Derick Rethans wrote:
> > 
> > > I've been noticing the same things, and still trying to figure out where
> > > it happens. It has most likely to do with returning-by-reference in the
> > > wrong places.
> > 
> > What do you mean with returning by reference in the wrong places? could
> > you give me an example?
> > 
> > 
> > --
> > No virus found in this outgoing message.
> > Checked by AVG Anti-Virus.
> > Version: 7.0.300 / Virus Database: 266.2.0 - Release Date: 2/21/2005
> > 
> > --
> > PHP Internals - PHP Runtime Development Mailing List
> > To unsubscribe, visit: http://www.php.net/unsub.php
> > 
> >
> 

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

Reply via email to