Segfault in do_inherit_parent_constructor
| From: | Klaus Reimer | Date: | Mon, 11 Mar 2002 15:30:51 +0000 |
| Subject: | Segfault in do_inherit_parent_constructor | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-81021@lists.php.net to get a copy of this message | ||
Hi,
I am not sure, if this is an error in my code or a PHP error. Whatever, I
need help on this.
I have created (and attached) a small demonstration extension module, named
ctest. This module creates three classes. class1 is the base class, class2 is
derived from class1 and class3 is derived from class2. class2 and class1 have
some dummy methods, class1 has a constructor.
I have used PHP 4.1.2 and compiled it in that way:
# ./buildconf
# ./configure --enable-ctest
# make
and if I now call the compiled php binary, I get a segfault. The module is
working if I modify one of the following stuff:
* Remove the constructor of class1
* Remove one of the dummy methods from class1 or class2.
* Remove class3
I tracked down the segfault (by using ddd) to the function
"do_inherit_parent_constructor". I think this function is called to copy the
constructor from the base class to the derived class. class2 is processed
correctly. The constructor from class1 is now the constructor of class2. But
in the second call to this function, where the constructor from class2 is
copied to class3, php crashes while trying to read some stuff from the
HashTable of class2.
Any idea what's going wrong here? Is there an error in my code or have I
encountered a bug in PHP?
--
Bye, K <http://www.ailis.de/~k/>
[A735 47EC D87B 1F15 C1E9 53D3 AA03 6173 A723 E391]
(Finger k@ailis.de to get public key)
Attachment: [application/x-gzip] ctest.tar.gz
Attachment: [application/x-gzip] ctest.tar.gz