]> granicus.if.org Git - php/log
php
5 years agoRemove leftover ZEND_CAST code for (unset) cast.
Tyson Andre [Mon, 30 Dec 2019 16:37:06 +0000 (11:37 -0500)]
Remove leftover ZEND_CAST code for (unset) cast.

Followup for d74d3922ce6f9ea07c1226b0cb2a94fc333f7a02

Attempting to require a file with (unset) casts results in an E_COMPILE_ERROR
that can't be caught or handled by set_exception_handler/set_error_handler.

Also remove the (bool) cast, because the ZEND_BOOL opcode handles that.

Remove inference that array -> object cast can throw.
It was added in 2a286ad5991 - I don't know how creating an stdClass would throw.
(numeric keys, references, etc. don't cause it to throw)

Closes GH-5042

5 years agoMake error messages more consistent by fixing capitalization
Máté Kocsis [Wed, 15 Jan 2020 10:27:29 +0000 (11:27 +0100)]
Make error messages more consistent by fixing capitalization

Closes GH-5066 As a first step, let's capitalize their initial letter when it is applicable.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 17 Jan 2020 10:38:18 +0000 (11:38 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #79115

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 17 Jan 2020 10:38:00 +0000 (11:38 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #79115

5 years agoFixed bug #79115
Nikita Popov [Fri, 17 Jan 2020 10:37:35 +0000 (11:37 +0100)]
Fixed bug #79115

5 years agoAdd support for deprecating constants
Nikita Popov [Fri, 10 Jan 2020 10:34:05 +0000 (11:34 +0100)]
Add support for deprecating constants

Internal constants can be marked as CONST_DEPRECATED, in which
case accessing them will throw a deprecation warning.

For now this is only supported on global constants, not class
constants. Complain to me if you need to deprecate a class
constant...

Closes GH-5072.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 17 Jan 2020 08:51:31 +0000 (09:51 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Update php.ini files to add missing FTP extension

5 years agoUpdate php.ini files to add missing FTP extension
aand18 [Tue, 14 Jan 2020 14:15:26 +0000 (15:15 +0100)]
Update php.ini files to add missing FTP extension

FTP functionality isn't enabled by default and not listed as a disabled
extension in the `php.ini` file either.

This should spare a few googles to anyone needing FTP functionality in PHP.

Closes GH-5084.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 17 Jan 2020 08:48:50 +0000 (09:48 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #71876

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 17 Jan 2020 08:48:42 +0000 (09:48 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #71876

5 years agoFixed bug #71876
Nikita Popov [Fri, 3 Jan 2020 10:14:45 +0000 (11:14 +0100)]
Fixed bug #71876

This is a backport of fcdc0a6db0ae63fbed9e3828137b899b844623ce
to the PHP-7.3 branch. We need to make sure that OnUpdateString
is also called for a NULL value, otherwise the reset of the encoding
at the end of the request will not work.

I believe I already tried to land this before once, but it didn't
actually end up on the PHP-7.3 branch due to a push conflict that
I only noticed just now.

5 years agoImprove SSA representation of FE_FETCH
Nikita Popov [Mon, 30 Dec 2019 13:42:19 +0000 (14:42 +0100)]
Improve SSA representation of FE_FETCH

The op2 of FE_FETCH is only written if the loop edge is taken.
Fix up the SSA form to use the pre-assignment value if the exit
edge is taken.

This allows us to properly infer the type of the loop variable,
without letting the pre-loop type leak in.

Closes GH-5040.

5 years agoUse zend_type inside type lists
Nikita Popov [Thu, 16 Jan 2020 16:04:11 +0000 (17:04 +0100)]
Use zend_type inside type lists

Instead of having a completely independent encoding for type list
entries. This is going to use more memory, but I'm not particularly
concerned about that, as type unions that contain multiple classes
should be uncommon. On the other hand, this allows us to treat
top-level types and types inside lists mostly the same.

A new ZEND_TYPE_FOREACH macros allows to transparently treat list
and non-list types the same way. I'm not using it everywhere it could be
used for now, just the places that seemed most obvious.

Of course, this will make any future type system changes much simpler,
as it will not be necessary to duplicate all logic two times.

5 years agoFix #78880: Final spelling fixes
Máté Kocsis [Thu, 16 Jan 2020 18:04:42 +0000 (19:04 +0100)]
Fix #78880: Final spelling fixes

5 years agoFix reflection leak if type inside type list is resolved
Nikita Popov [Thu, 16 Jan 2020 14:30:24 +0000 (15:30 +0100)]
Fix reflection leak if type inside type list is resolved

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 16 Jan 2020 12:58:28 +0000 (13:58 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Disable optimizations for ASan instrumented builds

5 years agoDisable optimizations for ASan instrumented builds
Christoph M. Becker [Fri, 27 Dec 2019 13:28:28 +0000 (14:28 +0100)]
Disable optimizations for ASan instrumented builds

ASan instrumentation does not support the MSVC debug runtime, but still
it does not make sense to enable optimizations for such builds, since
they are not meant for production usage anyway, and although memory
corruption issues are still found in optimized builds, the generated
diagnostics are close to being useless, and apparently sometimes even
outright wrong.  Therefore, we disable all optimizations for ASan
instrumented builds.

We also introduce and use `ZEND_WIN32_NEVER_INLINE` for ASan enabled
builds to avoid inlining of functions, so we get even better
diagnostics.

5 years agoFix #78880: Yet another batch of spelling errors
Máté Kocsis [Thu, 16 Jan 2020 11:04:00 +0000 (12:04 +0100)]
Fix #78880: Yet another batch of spelling errors

5 years agoFix #78880: Another bunch of spelling errors
Máté Kocsis [Thu, 16 Jan 2020 08:46:47 +0000 (09:46 +0100)]
Fix #78880: Another bunch of spelling errors

5 years agoRemove useless skip check
Christoph M. Becker [Wed, 15 Jan 2020 17:38:15 +0000 (18:38 +0100)]
Remove useless skip check

As of PHP 5.4.0, `detect_unicode` is always available, so this check
cannot fail.

5 years agoUse proper printf() specifiers
Christoph M. Becker [Wed, 15 Jan 2020 17:18:36 +0000 (18:18 +0100)]
Use proper printf() specifiers

5 years agoRemove va_copy from zend_portability as it's always available since C99
George Peter Banyard [Tue, 14 Jan 2020 21:56:03 +0000 (22:56 +0100)]
Remove va_copy from zend_portability as it's always available since C99

5 years agoRename run-test.php to run-tests.php in the test packs
Christoph M. Becker [Sun, 5 Jan 2020 16:14:17 +0000 (17:14 +0100)]
Rename run-test.php to run-tests.php in the test packs

In the php-src repository, the test runner is named run-tests.php, but
when it is copied to the tests packs, it is renamed to run-test.php.
This renaming does not make sense, and is actually somewhat confusing.
Although changing the name back to run-tests.php constitutes a BC
break, we think the benefit of having a single name outweights the
disadvantages in the long run.

5 years agoAdd imagegetinterpolation()
Christoph M. Becker [Mon, 6 Jan 2020 11:49:07 +0000 (12:49 +0100)]
Add imagegetinterpolation()

While `imagesetinterpolation()` is available as of PHP 5.5.0,
there is no according getter function, so users would have to track the
current interpolation method manually.

To remedy this, we introduce `imagegetinterpolation()` as thin wrapper
for `gdImageGetInterpolationMethod()` (which has been introduced with
libgd 2.1.1), and use `im->interpolation_id` as fallback for older
libgd.  Since our bundled libgd does not yet have this function, we add
it.

We also simplify the recently introduced bug79068.phpt, where it is
sufficient to check that the interpolation method has not been changed.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 14 Jan 2020 15:47:24 +0000 (16:47 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79096: FFI Struct Segfault

5 years agoFix #79096: FFI Struct Segfault
Christoph M. Becker [Sun, 12 Jan 2020 13:01:42 +0000 (14:01 +0100)]
Fix #79096: FFI Struct Segfault

We must not assume that the size of a function's return value is at
most `sizeof(ffi_arg)`, but rather have to use the size which already
has been determined for the return type if it is larger than
`sizeof(ffi_arg)`.

To be able to have a regression test, we export the required test
function from the zend-test extension, and make sure that the test
can be run on different platforms regardless of whether zend-tests was
built statically or dynamically.

5 years agoInline hot parts of bitwise instructions into hybrid VM
Dmitry Stogov [Tue, 14 Jan 2020 10:47:10 +0000 (13:47 +0300)]
Inline hot parts of bitwise instructions into hybrid VM

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 13 Jan 2020 17:49:38 +0000 (18:49 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 13 Jan 2020 17:48:30 +0000 (18:48 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH

5 years agoFix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 12:34:06 +0000 (13:34 +0100)]
Fix #79106: PDO may fetch wrong column indexes with PDO::FETCH_BOTH

Column names can be numeric strings, so we have to make sure to insert
the column values with the appropriate numeric keys, instead of adding
them.

5 years agotypo
Dmitry Stogov [Mon, 13 Jan 2020 13:25:42 +0000 (16:25 +0300)]
typo

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 13 Jan 2020 12:24:12 +0000 (13:24 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 13 Jan 2020 12:22:43 +0000 (13:22 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH

5 years agoFix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH
Christoph M. Becker [Mon, 13 Jan 2020 10:47:40 +0000 (11:47 +0100)]
Fix #79084: mysqlnd may fetch wrong column indexes with MYSQLI_BOTH

Column names can be numeric strings, so we have to make sure to insert
the column values with the appropriate numeric keys, instead of adding
them.

5 years agoTry to fix ZTS build
Nikita Popov [Mon, 13 Jan 2020 12:12:55 +0000 (13:12 +0100)]
Try to fix ZTS build

5 years agoUse helper in one more place
Nikita Popov [Mon, 13 Jan 2020 11:44:16 +0000 (12:44 +0100)]
Use helper in one more place

5 years agoFix build
Nikita Popov [Mon, 13 Jan 2020 11:42:51 +0000 (12:42 +0100)]
Fix build

5 years agoImprove access to zend_map_ptr data
Dmitry Stogov [Mon, 13 Jan 2020 11:27:35 +0000 (14:27 +0300)]
Improve access to zend_map_ptr data

5 years agoHandle one more case I missed
Nikita Popov [Mon, 13 Jan 2020 11:06:23 +0000 (12:06 +0100)]
Handle one more case I missed

5 years agoMake class name references use the class_name production
Nikita Popov [Mon, 13 Jan 2020 10:34:04 +0000 (11:34 +0100)]
Make class name references use the class_name production

Throw a compile error for "static" references instead, where it
isn't already the case.

Also extract the code that does that -- we have quite a few places
where we get a const class ref and require it to be default.

5 years agoDon't use yystrlen()
Nikita Popov [Mon, 13 Jan 2020 10:23:30 +0000 (11:23 +0100)]
Don't use yystrlen()

This is unnecessary and not available when GLR is used.

5 years agoFixed #78385: Distinguish absent/empty query/fragment
Islam Israfilov [Sat, 11 Jan 2020 10:34:05 +0000 (10:34 +0000)]
Fixed #78385: Distinguish absent/empty query/fragment

http://example.com/foo   => query = null, fragment = null
http://example.com/foo?  => query = "",   fragment = null
http://example.com/foo#  => query = null, fragment = ""
http://example.com/foo?# => query = "",   fragment = ""

Closes GH-5078.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 13 Jan 2020 09:10:16 +0000 (10:10 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix test

5 years agoFix test
Nikita Popov [Mon, 13 Jan 2020 09:09:58 +0000 (10:09 +0100)]
Fix test

Hopefully (32-bit)

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Sat, 11 Jan 2020 10:22:30 +0000 (11:22 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Bring back test case support for older MySQL versions

5 years agoBring back test case support for older MySQL versions
Christoph M. Becker [Sat, 11 Jan 2020 09:36:52 +0000 (10:36 +0100)]
Bring back test case support for older MySQL versions

These test cases have recently been adjusted to work with MySQL 8[1],
but some older, but still supported database versions, such as MySQL
5.6, still need the password to be sent hashed, so we fall back to
using `PASSWORD()`, if the `SET PASSWORD` query fails without it.

[1] <http://git.php.net/?p=php-src.git;a=commit;h=b0efd18f7844da29931737b8a1cf461c7493e168>.

5 years agoRemove dead code and unused DEFINEs
George Peter Banyard [Fri, 10 Jan 2020 14:33:03 +0000 (15:33 +0100)]
Remove dead code and unused DEFINEs

Closes GH-5073

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Fri, 10 Jan 2020 19:02:16 +0000 (20:02 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix test cases which fail on Windows debug builds

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Fri, 10 Jan 2020 19:01:28 +0000 (20:01 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test cases which fail on Windows debug builds

5 years agoFix test cases which fail on Windows debug builds
Christoph M. Becker [Mon, 11 Nov 2019 11:14:05 +0000 (12:14 +0100)]
Fix test cases which fail on Windows debug builds

We use the portable {TMP} instead of the hard-coded /tmp, and skip
mysqli_debug_append.phpt on Windows, because unlinking the trace file
while the connection is still open won't work there.

(cherry picked from commit 60081ca20d5701111de5f94ae64909b1cc265f1e)

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 10 Jan 2020 16:38:39 +0000 (17:38 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Remove unnecessary whitespace sensitivtiy from some tests

5 years agoRemove unnecessary whitespace sensitivtiy from some tests
Nikita Popov [Fri, 10 Jan 2020 16:36:46 +0000 (17:36 +0100)]
Remove unnecessary whitespace sensitivtiy from some tests

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Fri, 10 Jan 2020 16:17:37 +0000 (06:17 +1400)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix test for Windows ZTS builds

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Fri, 10 Jan 2020 16:16:03 +0000 (06:16 +1400)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix test for Windows ZTS builds

5 years agoFix test for Windows ZTS builds
Christoph M. Becker [Fri, 10 Jan 2020 16:11:24 +0000 (06:11 +1400)]
Fix test for Windows ZTS builds

Cf. <https://bugs.php.net/bug.php?id=61685#1578672905>.

5 years agoMake constant() error handling consistent with plain const lookup
Nikita Popov [Fri, 10 Jan 2020 11:01:42 +0000 (12:01 +0100)]
Make constant() error handling consistent with plain const lookup

This means we get an Error exception and a much better error
message indicating the root cause (e.g. accessing a private class
constant).

5 years agoMove undefined constant error into get_constant_ex
Nikita Popov [Fri, 10 Jan 2020 10:47:35 +0000 (11:47 +0100)]
Move undefined constant error into get_constant_ex

All the other error conditions are already handled in there, so
this one should be as well.

5 years agoRemove unused delimiter parameter in php_fgetcsv_lookup_trailing_spaces subroutine.
George Peter Banyard [Fri, 10 Jan 2020 01:53:05 +0000 (02:53 +0100)]
Remove unused delimiter parameter in php_fgetcsv_lookup_trailing_spaces subroutine.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 9 Jan 2020 18:03:43 +0000 (19:03 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Silence potential taskkill error messages

5 years agoSilence potential taskkill error messages
Christoph M. Becker [Thu, 9 Jan 2020 17:58:17 +0000 (18:58 +0100)]
Silence potential taskkill error messages

That test is still intermittently failing, because failure to kill the
child process is reported.  Therefore we silence these error messages.

5 years agoConvert infallible mysqli checks to asserts
Nikita Popov [Thu, 9 Jan 2020 17:55:31 +0000 (18:55 +0100)]
Convert infallible mysqli checks to asserts

5 years agoRemove unused MYSQLI_STATUS_CLEARED
Nikita Popov [Thu, 9 Jan 2020 16:16:29 +0000 (17:16 +0100)]
Remove unused MYSQLI_STATUS_CLEARED

5 years agoFix test
Christoph M. Becker [Thu, 9 Jan 2020 17:40:58 +0000 (18:40 +0100)]
Fix test

The typo in the echoed string had been fixed in master; fix the
expectation as well.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 9 Jan 2020 16:44:41 +0000 (17:44 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix useless tests

5 years agoFix useless tests
Christoph M. Becker [Thu, 9 Jan 2020 14:19:56 +0000 (15:19 +0100)]
Fix useless tests

These tests are certainly not supposed to fail due to a typo in the
class names, but expect this failure.  We fix the typos and the
expectations.

5 years agoAllows further tests to run on Windows
Christoph M. Becker [Sun, 5 Jan 2020 19:26:35 +0000 (20:26 +0100)]
Allows further tests to run on Windows

5 years agoUse IS_WINDOWS
Christoph M. Becker [Sun, 5 Jan 2020 18:28:34 +0000 (19:28 +0100)]
Use IS_WINDOWS

5 years agoReplace fakemail with minimal PHP script
Christoph M. Becker [Sun, 5 Jan 2020 18:26:39 +0000 (19:26 +0100)]
Replace fakemail with minimal PHP script

5 years agoUnify mail related tests for *nix and Windows
Christoph M. Becker [Sun, 5 Jan 2020 15:46:27 +0000 (16:46 +0100)]
Unify mail related tests for *nix and Windows

Currently mail related tests are split for *nix and Windows (if there
are even Windows versions).  The basic difference is that the *nix
variants set the INI directive sendmail_path to just write the email to
disk, while the Windows tests use ext/imap.  The latter tests are way
more verbose, and such duplicated tests are generally a pain point.
Furthermore, the Windows tests are much slower, and could not be run
without ext/imap being available.

We therefore introduce a small fakemail application, which basically
works like `tee <path> >/dev/null`, and which will be shipped with the
Windows tests packs.  fakemail.exe would also need to be added to the
PHP binary SDK, so these tests could be run during developments.

To cater to the remaining differences, we also introduce support for
`{MAIL:<path>}` placeholders in the INI sections to run-tests.php.  How
to use this can be seen in mail_basic.phpt, which is currently the only
modified test case, because these tests are yet supposed to fail on
Windows, due to the missing fakemail.exe in the PHP SDK.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 9 Jan 2020 09:20:28 +0000 (10:20 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Increase select timeout in FPM tester

5 years agoIncrease select timeout in FPM tester
Nikita Popov [Thu, 9 Jan 2020 09:19:02 +0000 (10:19 +0100)]
Increase select timeout in FPM tester

Let's see if that helps with the recent failure spree on Azure.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Thu, 9 Jan 2020 08:26:58 +0000 (09:26 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79086: Bump version not applied

5 years agoFix #79086: Bump version not applied
Christoph M. Becker [Thu, 9 Jan 2020 08:19:52 +0000 (09:19 +0100)]
Fix #79086: Bump version not applied

We must not forget to update the version in configure.ac as well.

5 years agoConvert some warnings to Errors in BZip2
George Peter Banyard [Sun, 8 Dec 2019 12:30:46 +0000 (13:30 +0100)]
Convert some warnings to Errors in BZip2

Closes GH-4984

5 years agoConvert some warnings to Error in zlib extension
George Peter Banyard [Sun, 8 Dec 2019 13:15:27 +0000 (14:15 +0100)]
Convert some warnings to Error in zlib extension

Closes GH-4985

5 years ago[ci skip] Update UPGRADING
George Peter Banyard [Wed, 8 Jan 2020 23:38:47 +0000 (00:38 +0100)]
[ci skip] Update UPGRADING

5 years agoAvoid superfluous assignments
Christoph M. Becker [Wed, 8 Jan 2020 23:17:14 +0000 (00:17 +0100)]
Avoid superfluous assignments

These values are already set via the initializers.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 8 Jan 2020 17:43:35 +0000 (18:43 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Wed, 8 Jan 2020 17:31:10 +0000 (18:31 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()

5 years agoFix #79078: Hypothetical use-after-free in curl_multi_add_handle()
Christoph M. Becker [Wed, 8 Jan 2020 10:52:24 +0000 (11:52 +0100)]
Fix #79078: Hypothetical use-after-free in curl_multi_add_handle()

To avoid this, we have to verify the handlers already in
`curl_multi_add_handle()`, not only in `curl_multi_exec()`.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 8 Jan 2020 17:27:53 +0000 (18:27 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Bump version

5 years agoBump version
Christoph M. Becker [Wed, 8 Jan 2020 17:26:14 +0000 (18:26 +0100)]
Bump version

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 8 Jan 2020 15:56:28 +0000 (16:56 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Extract function

5 years agoExtract function
Christoph M. Becker [Wed, 8 Jan 2020 15:54:31 +0000 (16:54 +0100)]
Extract function

As suggested by Nikita[1].

[1] <https://github.com/php/php-src/pull/5045#discussion_r364265013>

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 8 Jan 2020 15:32:00 +0000 (16:32 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Display a message if select in FPM test timeouts"

5 years agoRevert "Display a message if select in FPM test timeouts"
Nikita Popov [Wed, 8 Jan 2020 15:31:33 +0000 (16:31 +0100)]
Revert "Display a message if select in FPM test timeouts"

This reverts commit e2361498d519561e7eb5b73d138c1eaa80da2a20.

Ooops, this occurs normally during some tests, but I didn't notice
because I have slow tests disabled...

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 8 Jan 2020 14:57:21 +0000 (15:57 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Display a message if select in FPM test timeouts

5 years agoDisplay a message if select in FPM test timeouts
Nikita Popov [Wed, 8 Jan 2020 14:56:37 +0000 (15:56 +0100)]
Display a message if select in FPM test timeouts

5 years agoFix #49555: Improve "function must be a string" error message
Nikita Popov [Wed, 8 Jan 2020 13:32:11 +0000 (14:32 +0100)]
Fix #49555: Improve "function must be a string" error message

Be more specific for the individual cases and provide relevant
type information.

5 years agoRefer to method rather than function name in error message
Nikita Popov [Wed, 8 Jan 2020 13:26:27 +0000 (14:26 +0100)]
Refer to method rather than function name in error message

5 years agoFix #65274: Add class name to undef class constant error
Nikita Popov [Wed, 8 Jan 2020 13:18:14 +0000 (14:18 +0100)]
Fix #65274: Add class name to undef class constant error

5 years agoAdd warning and convert to exception in string offset assignment:
George Peter Banyard [Tue, 7 Jan 2020 21:55:43 +0000 (22:55 +0100)]
Add warning and convert to exception in string offset assignment:

Convert the empty string assignment to an Error as per RFC [1]
Add a warning that only the first byte will be assigned to the offset if provided
a needle that is longer than one byte.

[1] https://wiki.php.net/rfc/engine_warnings

Closes GH-5063

5 years agoAllow empty needles in mb_strpos and mb_strstr function family.
George Peter Banyard [Sat, 7 Dec 2019 01:44:34 +0000 (02:44 +0100)]
Allow empty needles in mb_strpos and mb_strstr function family.

MBstring analogous implementation to 6d578482a933be7597b686b59a935b316161d251

Closes GH-4977

5 years agoAdd warning and convert to exception in string offset assignment:
George Peter Banyard [Tue, 7 Jan 2020 20:51:34 +0000 (21:51 +0100)]
Add warning and convert to exception in string offset assignment:

Convert the empty string assignment to an Error as per RFC [1]
Add a warning that only the first byte will be assigned to the offset if provided
a needle that is longer than one byte.

[1] https://wiki.php.net/rfc/engine_warnings

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 7 Jan 2020 14:29:51 +0000 (15:29 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Make test more resilient

5 years agoMake test more resilient
Christoph M. Becker [Tue, 7 Jan 2020 14:28:48 +0000 (15:28 +0100)]
Make test more resilient

Depending on the libcurl version and perhaps configuration, it may show
additional info (due to `CURLOPT_VERBOSE` being activated), which we
have to ignore, to avoid spurious test failures.

5 years agoRenumber zval types, clarify allowed overlap
Nikita Popov [Tue, 7 Jan 2020 13:53:25 +0000 (14:53 +0100)]
Renumber zval types, clarify allowed overlap

Make it clear that types used for type declarations can overlap
with the rest, and can also overlap in MAY_BE space.

This makes things more robust against the addition of new primitive
types.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 7 Jan 2020 13:27:34 +0000 (14:27 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Increase sleep() time in test case

5 years agoIncrease sleep() time in test case
Christoph M. Becker [Tue, 7 Jan 2020 13:24:55 +0000 (14:24 +0100)]
Increase sleep() time in test case

Apparently, the former increase to `sleep(2)` helped somewhat, but
still the test fails occassionally.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 7 Jan 2020 10:13:24 +0000 (11:13 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Bump version