php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #16237 PHP 4.1.2 fails to compile with gmp support.
Submitted: 2002-03-23 14:40 UTC Modified: 2002-03-27 18:58 UTC
From: jkroll at mke dot catalystwms dot com Assigned:
Status: Closed Package: Compile Failure
PHP Version: 4.1.2 OS: HP-UX 11.11
Private report: No CVE-ID: None
 [2002-03-23 14:40 UTC] jkroll at mke dot catalystwms dot com
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



Patches

Pull Requests

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2002-03-27 18:58 UTC] sniper@php.net
Fixed in CVS. Fix will be in PHP 4.2.0.
Thanks again for this excellent report.

--Jani

 
PHP Copyright © 2001-2026 The PHP Group
All rights reserved.
Last updated: Thu Jan 15 15:00:01 2026 UTC