Are there any tools for debugging ZE? I've got a problem with huge script that
at some point behave like all variables were reference to single variable.
I suspect that there is something wrong with EG(uninitialized_zval).
Any hints how to fight it?
I've compiled it with ZEND_INTENSIVE_DEBUGGING and it found nothing. When I
debug it with simple debugger I can see that all ZEND_FETCH_W opcodes receives
the same zval address and ZEND_ASSIGN doesn't change it. I don't know how it
should work yet, but I'll learn it soon. Maybe someone could give me a piece of
advice?
Regards,
Wojtek
Hi,
First, maybe you want to see bug #22836 (http://bugs.php.net/22836), that appears to describe the very problem you have.
Secondly, you can use various custom gdb macros like printzv, printzn
which are defined in .gdbinit on top of the php source tree.
Moriyoshi
Wojtek Meler wmeler@wp-sa.pl wrote:
Are there any tools for debugging ZE? I've got a problem with huge script that
at some point behave like all variables were reference to single variable.
I suspect that there is something wrong with EG(uninitialized_zval).
Any hints how to fight it?
I've compiled it with ZEND_INTENSIVE_DEBUGGING and it found nothing. When I
debug it with simple debugger I can see that all ZEND_FETCH_W opcodes receives
the same zval address and ZEND_ASSIGN doesn't change it. I don't know how it
should work yet, but I'll learn it soon. Maybe someone could give me a piece of
advice?Regards,
Wojtek
Moriyoshi Koizumi wrote:
Hi,
First, maybe you want to see bug #22836 (http://bugs.php.net/22836), that appears to describe the very problem you have.
Probably yes. I assume that it won't be fixed in ZE1, will it?
Is there any way to fix it for own risk? I saw something in
zend_execute.c with comment "too dengerous for ZE1"
Secondly, you can use various custom gdb macros like printzv, printzn
which are defined in .gdbinit on top of the php source tree.
Cool!!! I used my own gdb script, but this one is great.
regards,
Wojtek