php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #62357 compile failure: (S) Arguments missing for built-in function __memcmp.
Submitted: 2012-06-18 19:18 UTC Modified: 2012-06-26 10:57 UTC
From: mamfelt at gmail dot com Assigned: laruence (profile)
Status: Closed Package: Compile Failure
PHP Version: 5.4.4 OS: AIX
Private report: No CVE-ID: None
 [2012-06-18 19:18 UTC] mamfelt at gmail dot com
Description:
------------
./configure with minimal arguments completes, make fails

same error with CFLAGS='-O2 -qlanglvl=extc89 -qcpluscmt'

IBM compiler - vac.C version 11, AIX 6.1 TL6 and 7

See last lines of results for Syntax errors

Test script:
---------------
NAME: php
VERSION.RELEASE: 5.4.4.0
CFLAGS=-O2 -qlanglvl=extc99
./configure \ 
        --prefix=/opt \ 
        --sysconfdir=/etc \ 
        --mandir=/usr/share/man \ 
                > build/aix/configure.out

make

Expected result:
----------------
that make completes.

Actual result:
--------------
make > build/aix/make.out
    1500-030: (I) INFORMATION: scan: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
"/usr/include/math.h", line 122.9: 1506-236 (W) Macro name INFINITY has been redefined.
"/usr/include/math.h", line 122.9: 1506-358 (I) "INFINITY" is defined on line 8 of /data/prj/php-5.4.4/ext/ereg/regex/utils.h.
    1500-030: (I) INFORMATION: match: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: codeOneLoopStart: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: zm_startup_dom: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: RIPEMD128Transform: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: TigerFinalize: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
"/data/prj/php-5.4.4/ext/iconv/iconv.c", line 739.33: 1506-280 (W) Function argument assignment between types "unsigned int*" and "int*" is not allowed.
"/data/prj/php-5.4.4/ext/pdo/pdo_dbh.c", line 997.77: 1506-280 (W) Function argument assignment between types "unsigned int*" and "int*" is not allowed.
    1500-030: (I) INFORMATION: pdo_dbh_init: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: do_fetch: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: phar_parse_tarfile: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: phar_zip_changed_apply: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: phar_fancy_stat: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: phar_parse_pharfile: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: _class_string: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: zm_info_spl: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
"/data/prj/php-5.4.4/ext/spl/spl_functions.c", line 50.40: 1506-068 (W) Operation between types "struct _zend_object_value(*)(struct _zend_class_entry*)" and "void*" is not allowed.
"/data/prj/php-5.4.4/ext/spl/spl_functions.c", line 65.40: 1506-068 (W) Operation between types "struct _zend_object_value(*)(struct _zend_class_entry*)" and "void*" is not allowed.
"/data/prj/php-5.4.4/ext/standard/dir.c", line 571.21: 1506-280 (W) Function argument assignment between types "int(*)(const char**,const char**)" and "void*" is not allowed.
"/data/prj/php-5.4.4/ext/standard/dir.c", line 575.21: 1506-280 (W) Function argument assignment between types "int(*)(const char**,const char**)" and "void*" is not allowed.
    1500-030: (I) INFORMATION: php_stat: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: php_var_export_ex: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: xx_mainloop: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: php_stream_url_wrap_http_ex: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
    1500-030: (I) INFORMATION: php_var_unserialize: Additional optimization may be attained by recompiling and specifying MAXMEM option with a value greater than 8192.
"/data/prj/php-5.4.4/ext/standard/filters.c", line 1310.51: 1506-280 (W) Function argument assignment between types "unsigned long*" and "long*" is not allowed.
"/data/prj/php-5.4.4/ext/xml/xml.c", line 1385.57: 1506-280 (W) Function argument assignment between types "int(*)(void*,const unsigned char*,const unsigned char*,const unsigned char*,const unsigned char*)" and "void*" is not allowed.
"/data/prj/php-5.4.4/main/snprintf.c", line 1229.21: 1506-280 (W) Function argument assignment between types "int*" and "unsigned int*" is not allowed.
"/data/prj/php-5.4.4/main/snprintf.c", line 1243.21: 1506-280 (W) Function argument assignment between types "int*" and "unsigned int*" is not allowed.
"/data/prj/php-5.4.4/main/output.c", line 461.49: 1506-280 (W) Function argument assignment between types "void*" and "void(*)(char*,unsigned int,char**,unsigned int*,int)" is not allowed.
"/data/prj/php-5.4.4/Zend/zend_language_parser.c", line 6044.75: 1506-041 (E) The invocation of macro memcmp contains fewer arguments than are required by the macro definition.
"/data/prj/php-5.4.4/Zend/zend_language_parser.c", line 6044.33: 1506-046 (S) Syntax error.
"/data/prj/php-5.4.4/Zend/zend_language_parser.c", line 6044.33: 1506-182 (S) Arguments missing for built-in function __memcmp.
make: 1254-004 The error code from the last command is 1.



Patches

bug62357.patch (last revision 2012-06-25 05:53 UTC by laruence@php.net)

Add a Patch

Pull Requests

Add a Pull Request

History

AllCommentsChangesGit/SVN commitsRelated reports
 [2012-06-25 05:52 UTC] laruence@php.net
Hi:

could you please try with this patch?

--- zend_language_parser.c	2012-06-25 13:52:20.000000000 +0800
+++ zend_language_parser.c.new	2012-06-25 13:52:08.000000000 +0800
@@ -6041,7 +6041,7 @@
 
 			if (LANG_SCNG(yy_text)[0] == 0 &&
 				LANG_SCNG(yy_leng) == 1 &&
-				memcmp(yystr, ZEND_STRL("\"end of file\"")) == 
0) {
+				memcmp(yystr, "\"end of file\"", sizeof("\"end 
of file\"") - 1) == 0) {
 				yystpcpy(yyres, "end of file");
 				return sizeof("end of file")-1;
 			}
 [2012-06-25 05:52 UTC] laruence@php.net
-Status: Open +Status: Feedback
 [2012-06-25 05:53 UTC] laruence@php.net
The following patch has been added/updated:

Patch Name: bug62357.patch
Revision:   1340603615
URL:        https://bugs.php.net/patch-display.php?bug=62357&patch=bug62357.patch&revision=1340603615
 [2012-06-25 05:54 UTC] laruence@php.net
sorry, the line was broken, I attached the patch, please try with the attachment..
thanks
 [2012-06-25 05:54 UTC] laruence@php.net
-Assigned To: +Assigned To: laruence
 [2012-06-26 10:45 UTC] laruence@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src.git;a=commit;h=a44a1dc194e60c51a4b7716f78f34a7dc334744b
Log: Fixed bug #62357 (compile failure: (S) Arguments missing for built-in function __memcmp).
 [2012-06-26 10:51 UTC] laruence@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src.git;a=commit;h=a44a1dc194e60c51a4b7716f78f34a7dc334744b
Log: Fixed bug #62357 (compile failure: (S) Arguments missing for built-in function __memcmp).
 [2012-06-26 10:57 UTC] laruence@php.net
This bug has been fixed in SVN.

Snapshots of the sources are packaged every three hours; this change
will be in the next snapshot. You can grab the snapshot at
http://snaps.php.net/.

 For Windows:

http://windows.php.net/snapshots/
 
Thank you for the report, and for helping us make PHP better.


 [2012-06-26 10:57 UTC] laruence@php.net
-Status: Feedback +Status: Closed
 [2014-10-07 23:24 UTC] stas@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src-security.git;a=commit;h=a44a1dc194e60c51a4b7716f78f34a7dc334744b
Log: Fixed bug #62357 (compile failure: (S) Arguments missing for built-in function __memcmp).
 [2014-10-07 23:35 UTC] stas@php.net
Automatic comment on behalf of laruence
Revision: http://git.php.net/?p=php-src-security.git;a=commit;h=a44a1dc194e60c51a4b7716f78f34a7dc334744b
Log: Fixed bug #62357 (compile failure: (S) Arguments missing for built-in function __memcmp).
 
PHP Copyright © 2001-2024 The PHP Group
All rights reserved.
Last updated: Tue Mar 19 09:01:30 2024 UTC