Bug #16237: PHP 4.1.2 fails to compile with gmp support.

From: Date: Sat, 23 Mar 2002 19:40:19 +0000
Subject: Bug #16237: PHP 4.1.2 fails to compile with gmp support.
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-3209@lists.php.net to get a copy of this message
From: jkroll@mke.catalystwms.com Operating system: HP-UX 11.11 PHP version: 4.1.2 PHP Bug Type: Compile Failure Bug description: PHP 4.1.2 fails to compile with gmp support. Running configure with the command: CC="cc -D_REENTRANT -D_XOPEN_SOURCE_EXTENDED" \ CFLAGS="-Ae +O3 +DA2.0 +DS2.0 +Oprocelim +ESlit +z -DEAPI" \ ./configure --with-apxs=/home3/jkroll/HP11.11/apache/bin/apxs \ -prefix=/home3/jkroll/HP11.11/php \ --with-oracle --with-oci8 --enable-ftp \--with-gmp=/u/local/lib/gmp-4.0 \ --enable-mbstring --enable-sockets \ --enable-sysvshm --enable-sigchild \ --without-mysql --with-zlib=/home3/jkroll/HP11.11/zlib \ --with-mm=/home3/jkroll/HP11.11/mod_mm \ --with-openssl=/home3/jkroll/HP11.11/openssl The configuration works fine, however when compiling the gmp module with HP's ANSI C compiler the following error occurs: Making all in gmp /home3/jkroll/HP11.11/php-4.1.2/ext/gmp /bin/sh /home3/jkroll/HP11.11/php-4.1.2/libtool --silent --mode=compile cc -D_REENTRANT -D_XOPEN_SOURCE_EXTENDED -I. -I/home3/jkroll/HP11.11/php-4.1.2/ ext/gmp -I/home3/jkroll/HP11.11/php-4.1.2/main -I/home3/jkroll/HP11.11/php-4.1.2 -I/home3/jkroll/HP11.11/apache/include -I/home3/jkroll/HP11.11/php-4.1.2/Zend - I/home3/jkroll/HP11.11/openssl/include -I/home3/jkroll/HP11.11/zlib/include -I/u /local/lib/gmp-4.0/include -I/u01/app/oracle/product/8.1.7SE/rdbms/public -I/u01 /app/oracle/product/8.1.7SE/rdbms/demo -I/home3/jkroll/HP11.11/mod_mm/include -I /home3/jkroll/HP11.11/php-4.1.2/ext/xml/expat -DHPUX11 -DMOD_SSL=208107 -DUSE_H SREGEX -DEAPI -DEAPI_MM -DUSE_EXPAT -I/home3/jkroll/HP11.11/php-4.1.2/TSRM -Ae + O3 +DA2.0 +DS2.0 +Oprocelim +ESlit +z -DEAPI -prefer-pic -c gmp.c cc: "gmp.c", line 1087: error 1000: Unexpected symbol: ".". cc: "gmp.c", line 1088: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1088: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1088: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1092: error 1588: "a_arg" undefined. cc: "gmp.c", line 1092: warning 563: Argument #2 is not the correct type. cc: "gmp.c", line 1092: error 1588: "ind_arg" undefined. cc: "gmp.c", line 1092: warning 563: Argument #3 is not the correct type. cc: "gmp.c", line 1092: error 1588: "sc_ctxt" undefined. cc: "gmp.c", line 1092: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1092: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1092: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1092: error 1555: Address operator requires an lvalue. cc: "gmp.c", line 1092: warning 563: Argument #4 is not the correct type. cc: "gmp.c", line 1096: warning 563: Argument #1 is not the correct type. cc: "gmp.c", line 1096: warning 527: Integral value implicitly converted to poin ter in assignment. cc: "gmp.c", line 1096: warning 563: Argument #2 is not the correct type. cc: "gmp.c", line 1096: warning 526: Pointer implicitly converted to integral va lue in assignment. cc: "gmp.c", line 1096: warning 563: Argument #3 is not the correct type. cc: "gmp.c", line 1096: warning 527: Integral value implicitly converted to poin ter in assignment. cc: "gmp.c", line 1096: warning 563: Argument #5 is not the correct type. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1098: error 1563: Expression in if must be scalar. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1098: error 1558: The ! operator takes a scalar operand. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1563: Expression in if must be scalar. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: warning 563: Argument #1 is not the correct type. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1098: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1098: warning 563: Argument #1 is not the correct type. cc: "gmp.c", line 1099: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1099: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1099: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1099: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1103: error 1563: Expression in if must be scalar. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1103: error 1558: The ! operator takes a scalar operand. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1563: Expression in if must be scalar. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: warning 563: Argument #1 is not the correct type. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: error 1532: Reference through a non-pointer. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1103: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1103: warning 563: Argument #1 is not the correct type. cc: "gmp.c", line 1104: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1104: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1104: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1104: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1104: error 1554: Indirection must be through a pointer. cc: "gmp.c", line 1104: error 1529: Cannot select field of non-structure. cc: "gmp.c", line 1104: error 1529: Cannot select field of non-structure. *** Error exit code 1 Stop. *** Error exit code 1 Stop. *** Error exit code 1 Stop. *** Error exit code 1 Stop. +++ End make output +++ Note that changing the name of the variable from "sc_arg" to "tmp_sc_arg" within the function gmp_setbit resolves the compilation issue. This is probably a symbol clash as: /usr/include:> find . -type f -name \*.h -print | xargs grep sc_arg ./sys/signal.h:#define sc_arg sc_sl.sl_misc.sm_arg -- Edit bug report at http://bugs.php.net/?id=16237&edit=1 -- Fixed in CVS: http://bugs.php.net/fix.php?id=16237&r=fixedcvs Fixed in release: http://bugs.php.net/fix.php?id=16237&r=alreadyfixed Need backtrace: http://bugs.php.net/fix.php?id=16237&r=needtrace Try newer version: http://bugs.php.net/fix.php?id=16237&r=oldversion Not developer issue: http://bugs.php.net/fix.php?id=16237&r=support Expected behavior: http://bugs.php.net/fix.php?id=16237&r=notwrong Not enough info: http://bugs.php.net/fix.php?id=16237&r=notenoughinfo Submitted twice: http://bugs.php.net/fix.php?id=16237&r=submittedtwice

« previous php.bugs (#3209) next »