PHP 4.1.x Win32 Extension Compile Error with oject_init()
| From: | Joseph Lauer | Date: | Wed, 16 Jan 2002 19:44:09 +0000 |
| Subject: | PHP 4.1.x Win32 Extension Compile Error with oject_init() | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-77296@lists.php.net to get a copy of this message | ||
Hello,
I've developed a cross platform component that I'm trying to distribute.
The module compiles great under Solaris, Linux, and FreeBSD with PHP 4.0.4,
4.0.5, 4.0.6, 4.1.0, and 4.1.1. The extension also will compile fine under
Win32 for PHP 4.0.4, 4.0.5, an 4.0.6.
However, the extension will not compile under Visual C++ against the source
code for 4.1.0 and 4.1.1. The only line that causes the compile error is
the following one with the object_init() function. This is just a snippet
of code:
// the temp carrier
zval * cl;
// the temp carrier
zval * temp;
// try to init the carrier list array
if (SUCCESS != array_init(cl))
return;
// create the carrier object
MAKE_STD_ZVAL(temp);
// init the carrier object
if (SUCCESS != object_init(temp)) {
return;
}
The weird part is the the array_init() function causes no problem at all.
Its just the object_init() function call. Here is the specific Visual C++
error.
swsms.c(264) : error C2065: 'tsrm_ls' : undeclared identifier
swsms.c(264) : warning C4022: '_object_init' : pointer mismatch for actual
parameter 2
I hope someone can help me. I'm wondering if this is a bug with version
4.1.0? Notice that my code compiles great under all the other versions of
PHP, just not with 4.1.0 and 4.1.1.
-Joe