PHP 4.0 Bug #9703: missing alloca-prototype in AIX
| From: | andreas at erestor dot f2s dot com | Date: | Mon, 12 Mar 2001 13:29:42 +0000 |
| Subject: | PHP 4.0 Bug #9703: missing alloca-prototype in AIX | ||
| Groups: | php.dev | ||
| Request: | Send a blank email to php-dev+get-48730@lists.php.net to get a copy of this message | ||
From: andreas@erestor.f2s.com
Operating system: AIX 4.3
PHP version: 4.0.4pl1
PHP Bug Type: Compile Failure
Bug description: missing alloca-prototype in AIX
Hi, I got this symptom by compiling PHP:
xlc -I. -I/home/pistoor/php-4.0.4pl1/main -I/home/pistoor/php-4.0.4pl1/main
-I/home/pistoor/php-4.0.4pl1 -I/home/pistoor/php-4.0.4pl1/Zend
-I/home/pistoor/php-4.0.4pl1/ext/mysql/libmysql -I/home/pistoor/php-4.0.4pl1/ext/xml/expat/xmltok
-I/home/pistoor/php-4.0.4pl1/ext/xml/expat/xmlparse -I/home/pistoor/php-4.0.4pl1/TSRM
-DXML_BYTE_ORDER=21 -qsource -qshowinc -c main.c && touch main.lo
"main.c", line 1181.17: 1506-068 (S) Operation between types "char*" and
"int" is not allowed.
"main.c", line 1250.47: 1506-280 (E) Function argument assignment between types
"const unsigned char*" and "const char*" is not allowed.
"main.c", line 1250.22: 1506-068 (E) Operation between types "char*" and
"unsigned char*" is not allowed.
I use the xlc-version of the C Set ++ for AIX compiler, as it is more ANSI-C than the cc-version.
It also shows more errors.
My configuration of PHP (as a CGI-program to be used by Lynx):
CC=xlc ./configure --prefix=/home/pistoor/php \
--with-config-file-path=/home/pistoor/php --enable-debug \
--enable-sigchild --enable-calendar --enable-ftp \
--enable-trans-sid --enable-shmop --with-regex=php \
--enable-sysvsem --enable-sysvshm --enable-wddx \
--enable-yp
I found, that the prototype of alloca was missing. It is not in any file in /usr/include at my
computer. This causes the warning in line 1181. So I wrote the prototype myself into a headerfile
alloca.h, edited (again) config.cache and rerun configure.
The errors on line 1250 were caused by the mix of char and unsigned char at the call to
php_base64_decode. I inserted type casts there.
Regard
Andreas Pistoor
--
Edit Bug report at: http://bugs.php.net/?id=9703&edit=1