Commit Graph

108238 Commits

Author SHA1 Message Date
Peter Kokot
72551dd89e [ci skip] Document RETSIGTYPE 2018-07-29 21:32:35 +02:00
Gabriel Caruso
1461f8ef0d
Remove superfluous SKIPIF sections of always available functions 2018-07-29 15:42:19 -03:00
Gabriel Caruso
f2b5ac7963
[ci skip] Fix typo 2018-07-29 13:48:35 -03:00
Gabriel Caruso
a61756252a
Run tokenizer_data_gen.sh to reorganize tokens
This will help us in future PRs, reducing the numbers of changed lines
2018-07-29 13:21:33 -03:00
Peter Kokot
17de277a2f Remove obsolete AC_TYPE_SIGNAL
The AC_TYPE_SIGNAL macro defined the RETSIGTYPE based on the signal
type defined in the signal.h. On pre C89 sistems (K&R C) it could be
void or int. Since C89 it can be safely assumed that the signal and
therefore the RETSIGTYPE is always void, so the RETSIGTYPE can be
replaced with void in the code if it uses it. PHP doesn't use the
RETSIGTYPE in current code anyway.

Refs:
- https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html
2018-07-29 16:06:46 +02:00
Peter Kokot
daaf706df0 Upgrade deprecated AC_OUTPUT macro calls
Autoconf 2.50 made several changes to macro calls. These include also
arguments passed to AC_OUTPUT macro. The upgrading chapter in Autoconf
documentation include an example of using AC_OUTPUT with
AC_CONFIG_FILES and AC_CONFIG_COMMANDS:
- https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html

PHP 5.4 to 7.1 require Autoconf 2.59+, PHP 7.2+ require Autoconf 2.64+,
and PHP 7.2 phpize script requires Autoconf 2.59+ which are all greater
than above mentioned 2.50 version. Systems out there should well support
this by now.

This patch was created with the help of autoupdate script:
autoupdate <file>

More info on where exactly this got deprecated:
- ftp://ftp.gnu.org/old-gnu/Manuals/autoconf-2.13/html_mono/autoconf.html
- ftp://ftp.auckland.ac.nz/pub/gnu/Manuals/autoconf-2.52/html_chapter/autoconf_15.html
- http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS
2018-07-29 16:04:39 +02:00
Peter Kokot
7394879adf Upgrade AX_FUNC_WHICH_GETHOSTBYNAME_R to serial 8
The AX_FUNC_WHICH_GETHOSTBYNAME_R macro is from the Autoconf Archive.
Latest version of the file has few docs changes. File is also renamed
as is a pattern of other m4 Autoconf Archive files.

Refs:
- http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_func_which_gethostbyname_r.m4
2018-07-29 15:59:33 +02:00
Peter Kokot
ab702e4fde Trim trailing whitespaces in build files
Some editors utilizing .editorconfig automatically trim whitespaces. For
convenience this patch removes whitespaces in certain build files in
Zend and TSRM folders.
2018-07-29 15:46:43 +02:00
Peter Kokot
209f05a878 [ci skip] Note HAVE_ST_BLKSIZE and HAVE_ST_RDEV 2018-07-29 14:44:56 +02:00
Peter Kokot
d2184efb7b Replace obsolete AC_STRUCT_ST_BLKSIZE and AC_STRUCT_ST_RDEV
Autoconf 2.50 released in 2001 has made several macros obsolete. Instead
of the AC_STRUCT_ST_BLKSIZE and AC_STRUCT_ST_RDEV the new
AC_CHECK_MEMBERS should be used.

When checking for the presence of stat struct members st_blkzize and
st_rdev the new AC_CHECK_MEMBERS macro defines new constants
HAVE_STRUCT_STAT_ST_BLKSIZE and HAVE_STRUCT_STAT_ST_RDEV.

Old constants HAVE_ST_BLKSIZE and HAVE_ST_RDEV need to be replaced
respectively in PHP code (this patch) and in PHP extenstions if they use
them.

PHP 5.4 to 7.1 require Autoconf 2.59+ version, PHP 7.2 and above require
2.64+ version, and the PHP 7.2 phpize script requires 2.59+ version which
are all greater than above mentioned 2.50 version.
2018-07-29 13:59:40 +02:00
Peter Kokot
d7ad4babe0 [ci skip] Note removal of PHP_PROG_LEX 2018-07-29 13:37:48 +02:00
Peter Kokot
03b717d4cc Remove unused PHP_PROG_LEX macro
Since PHP 5.3 flex lexer has been replaced with re2c. Commit
0f9e2b1753 made PHP_PROG_LEX macro still
available for BC.

In commit df6bd506d4 it was updated. Since
this macro is entirely not used in PHP source code anymore from PHP 5.3
and up, this patch removes it together with some old traces of warnings
suppression and comments.
2018-07-29 10:53:21 +02:00
Peter Kokot
255e29f3bc Remove unused libmbfl build system related files
PHP build system already builds necessary files also from libmbfl
directory using the mbstring config.m4 file.
2018-07-29 10:07:32 +02:00
Peter Kokot
b12cece8d5 Replace obsolete AC_AIX with AC_USE_SYSTEM_EXTENSIONS
Since Autoconf 2.62 the AC_AIX macro has been made obsolete and should
be replaced with the AC_USE_SYSTEM_EXTENSIONS instead.

Both macro behaviors are the same since the old one is just a wrapper
around the new AC_USE_SYSTEM_EXTENSIONS:
http://git.savannah.gnu.org/cgit/autoconf.git/tree/lib/autoconf/specific.m4

PHP 7.2+ and the main configure.ac script require minimum Autoconf 2.64+.

Refs:
- http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS
- https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html
2018-07-29 08:00:15 +02:00
Peter Kokot
0a01eae039 Fix typo in config.m4
The AC_CHECK_FUNCS has the following synopsis:
AC_CHECK_FUNCS(function..., [action-if-found], [action-if-not-found]).

Fourth argument doesn't exist.
2018-07-29 06:10:16 +02:00
Peter Kokot
cf3b852109 Trim trailing whitespaces in build files
Some editors utilizing .editorconfig automatically trim whitespaces. For
convenience this patch removes whitespaces in certain build files:
- ext/*/config*.m4
- configure.ac
- acinclude.m4
2018-07-29 03:43:45 +02:00
Peter Kokot
b60d8ab2e2 Upgrade AX_CHECK_COMPILE_FLAG macro to serial 6
The AX_CHECK_COMPILE_FLAG macro is from the Autoconf Archive. Latest
version of the file has a new All-permissive license for even more
convenience for usage.

Refs:
- http://git.savannah.gnu.org/gitweb/?p=autoconf-archive.git;a=blob_plain;f=m4/ax_check_compile_flag.m4
- https://www.gnu.org/prep/maintain/html_node/License-Notices-for-Other-Files.html
2018-07-28 01:40:02 +02:00
Peter Kokot
cf8ef08e20 Fix typos in code 2018-07-27 16:27:41 +02:00
Peter Kokot
0eabd5231b Remove unused Git ident attributes from zip extension
$Id attributes were used with SVN. With Git most of the Git ident
attributes in source code files are not used anymore.
2018-07-27 15:49:34 +02:00
Gabriel Caruso
1359ff8052
Reverts some changes from 7ec64a83
Checking for the PHP_VERSION_ID here is actually part of the test
2018-07-27 08:01:43 -03:00
Dmitry Stogov
a588b825d6 Improved assignment to "next" element of array ($a[] = ...) 2018-07-27 13:15:22 +03:00
Xinchen Hui
a7746d10a5 Fixed bug #76667 (Segfault with divide-assign op and __get + __set) 2018-07-27 13:00:14 +08:00
Gabriel Caruso
7ec64a831d
Remove superfluous check for PHP 7+ tests 2018-07-27 00:48:30 -03:00
Christoph M. Becker
d035bc2bfe Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix #76665: SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle
2018-07-26 14:23:40 +02:00
Kalle Sommer Nielsen
ba8f0615e1 Fixed ZTS build 2018-07-26 14:01:49 +02:00
Anatol Belski
6059ecee3a Sync with ab8094c6 2018-07-26 13:58:08 +02:00
Christoph M. Becker
ce66492a13 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76665: SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle
2018-07-26 13:26:58 +02:00
Christoph M. Becker
ed7e3bc70a Fix #76665: SQLite3Stmt::bindValue() with SQLITE3_FLOAT doesn't juggle
We need to ensure that a zval IS_DOUBLE before we access it as such.
In this case we apply common type juggling to do so.
2018-07-26 13:15:19 +02:00
Dmitry Stogov
f374e93762 Use better check 2018-07-26 14:13:33 +03:00
Gabriel Caruso
562150906a Remove extra semicolons 2018-07-26 12:38:22 +02:00
Dmitry Stogov
ab8094c666 Pack zend_constant.flags and zend_constant.module_number into reserved space inside zend_constant.value. 2018-07-26 12:58:07 +03:00
Dmitry Stogov
7a41e4c0d0 Documented ZEND_ACC_* flags (values are kept unchanged, except for ZEND_ACC_IMMUTABLE, that was introduced in 7.3 anyway) 2018-07-26 10:42:57 +03:00
Gabriel Caruso
fb966b9825
Remove unused variables 2018-07-25 22:05:41 -03:00
Gabriel Caruso
9e4d590b19
Remove extra semicolons 2018-07-25 21:47:04 -03:00
Peter Kokot
8d18d631b6 Replace obsolete AC_TRY_CPP with AC_PREPROC_IFELSE
The AC_TRY_CPP macro is obsolete since Autoconf 2.50 in 2001:
- http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS
- https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html
2018-07-25 23:00:20 +02:00
Dmitry Stogov
57c4ae393c typo 2018-07-25 23:00:33 +03:00
Dmitry Stogov
f950128cd6 Encode parent class name as IS_CONST operand in DECLARE_INHERITED_CLASS and DECLARE_ANON_INHERITED_CLASS opcodes (eliminate FETCH_CLAS
S opcode).
2018-07-25 13:40:47 +03:00
Peter Kokot
a5e80b22e1 Fix typos in code comments 2018-07-25 11:57:11 +02:00
Dmitry Stogov
a29a800cb0 Regenerate scanners using re2c version >= 1.0.0 (newer version, at least, produce less code) 2018-07-25 12:49:03 +03:00
Dmitry Stogov
aed3de1bc5 Split add/sub_function(s) into fast and slow parts 2018-07-25 12:48:16 +03:00
Peter Kokot
df6bd506d4 Remove obsolete macro AC_DECL_YYTEXT
The macro AC_DECL_YYTEXT has been obsolete since Autoconf 2.50 released
in 2001. Now it is included in the AC_PROG_LEX macro.

Autoconf news info about obsoletion:
- http://git.savannah.gnu.org/cgit/autoconf.git/tree/NEWS

Docs:
https://www.gnu.org/software/autoconf/manual/autoconf-2.69/html_node/Obsolete-Macros.html

PHP 5.4 to 7.1 require Autoconf 2.59+ version, PHP 7.2 and above require
2.64+ version, and the PHP 7.2 phpize script requires 2.59+ version which
are all greater than above mentioned 2.50 version. Systems out there should
well support this by now.
2018-07-25 03:09:14 +02:00
Peter Kokot
8d3f8ca12a Remove unused Git attributes ident
The $Id$ keywords were used in Subversion where they can be substituted
with filename, last revision number change, last changed date, and last
user who changed it.

In Git this functionality is different and can be done with Git attribute
ident. These need to be defined manually for each file in the
.gitattributes file and are afterwards replaced with 40-character
hexadecimal blob object name which is based only on the particular file
contents.

This patch simplifies handling of $Id$ keywords by removing them since
they are not used anymore.
2018-07-25 00:53:25 +02:00
Christoph M. Becker
dcd6a6ff36 Merge branch 'PHP-7.2'
* PHP-7.2:
  Fix #76643: Segmentation fault when using `output_add_rewrite_var`
2018-07-24 12:41:35 +02:00
Christoph M. Becker
a96ca13963 Merge branch 'PHP-7.1' into PHP-7.2
* PHP-7.1:
  Fix #76643: Segmentation fault when using `output_add_rewrite_var`
2018-07-24 12:28:22 +02:00
Christoph M. Becker
40bd84d3e3 Fix #76643: Segmentation fault when using output_add_rewrite_var
We have to check whether _SERVER is actually an array before we're
going to use it as such.
2018-07-24 12:20:13 +02:00
Dmitry Stogov
d775fe33d1 Better name: ZEND_PROPERTY_HAS => ZEND_PROPERTY_NOT_EMPTY 2018-07-24 09:31:57 +03:00
Xinchen Hui
1638a6e118 Give a meaningful name 2018-07-24 12:51:36 +08:00
Xinchen Hui
4aada3993c Micro-optmization 2018-07-24 12:16:35 +08:00
Xinchen Hui
d31d4d1392 Update NEWs 2018-07-24 11:37:30 +08:00
Xinchen Hui
3ca9aaf24e Merge branch 'PHP-7.2'
* PHP-7.2:
  Update NEWs
  Fixed bug #68553 (array_column: null values in $index_key become incrementing keys in result)

Conflicts:
	ext/standard/array.c
2018-07-24 11:37:09 +08:00