]> granicus.if.org Git - php/log
php
5 years agoReturn empty string instead of NULL in serialize().
George Peter Banyard [Wed, 11 Dec 2019 22:59:13 +0000 (23:59 +0100)]
Return empty string instead of NULL in serialize().

Modifiy its return type accordingly and arginfo.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 11 Dec 2019 22:45:03 +0000 (23:45 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  uint/ulong removal may affect other platforms as well

5 years agouint/ulong removal may affect other platforms as well
Christoph M. Becker [Wed, 11 Dec 2019 22:44:46 +0000 (23:44 +0100)]
uint/ulong removal may affect other platforms as well

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Wed, 11 Dec 2019 22:16:05 +0000 (23:16 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Typo fix in php.ini-production

5 years agoTypo fix in php.ini-production
Adrian Verde [Wed, 11 Dec 2019 20:51:05 +0000 (21:51 +0100)]
Typo fix in php.ini-production

Possibe -> Possible

5 years agoAdd stubs for standard library
Máté Kocsis [Tue, 10 Dec 2019 22:57:04 +0000 (23:57 +0100)]
Add stubs for standard library

5 years agoPromote warnings to exceptions in sapi_windows_* functions
Máté Kocsis [Wed, 11 Dec 2019 13:38:37 +0000 (14:38 +0100)]
Promote warnings to exceptions in sapi_windows_* functions

5 years agoPromote warning to exception in unserialize()
Máté Kocsis [Tue, 10 Dec 2019 22:55:07 +0000 (23:55 +0100)]
Promote warning to exception in unserialize()

5 years agoPromote warning to exception in parse_url()
Máté Kocsis [Tue, 10 Dec 2019 22:54:26 +0000 (23:54 +0100)]
Promote warning to exception in parse_url()

5 years agoPromote warnings to exceptions for some filter functions
Máté Kocsis [Tue, 10 Dec 2019 22:50:10 +0000 (23:50 +0100)]
Promote warnings to exceptions for some filter functions

5 years agoMerge branch 'array_filter-optimize' into HEAD
Tyson Andre [Wed, 11 Dec 2019 14:40:13 +0000 (09:40 -0500)]
Merge branch 'array_filter-optimize' into HEAD

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 11 Dec 2019 13:40:02 +0000 (14:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Fixed bug #78903: Conflict in RTD key for closures results in crash"

5 years agoRevert "Fixed bug #78903: Conflict in RTD key for closures results in crash"
Nikita Popov [Wed, 11 Dec 2019 13:38:48 +0000 (14:38 +0100)]
Revert "Fixed bug #78903: Conflict in RTD key for closures results in crash"

This reverts commit b55033fa18afd9bb60fc4537270266d808ec0868.

This breaks ext/opcache/tests/bug65915.phpt.

5 years agoConvert warnings to TypeError in php_spl.c
George Peter Banyard [Sun, 8 Dec 2019 20:42:01 +0000 (21:42 +0100)]
Convert warnings to TypeError in php_spl.c

Closes GH-4991

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 11 Dec 2019 12:08:12 +0000 (13:08 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78903: Conflict in RTD key for closures results in crash

5 years agoFixed bug #78903: Conflict in RTD key for closures results in crash
Nikita Popov [Wed, 11 Dec 2019 12:06:10 +0000 (13:06 +0100)]
Fixed bug #78903: Conflict in RTD key for closures results in crash

I wasn't able to create a simple reproducer for this. General approach
is the same as for anonymous classes: If the key is already used, reuse
the old definition.

5 years agoRemove ZEND_PARSE_PARAMS_QUIET from spl_autoload_register()
Nikita Popov [Wed, 11 Dec 2019 10:15:02 +0000 (11:15 +0100)]
Remove ZEND_PARSE_PARAMS_QUIET from spl_autoload_register()

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Wed, 11 Dec 2019 09:32:06 +0000 (10:32 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Free RSA public key in mysqlnd sha256 auth

5 years agoFree RSA public key in mysqlnd sha256 auth
Nikita Popov [Wed, 11 Dec 2019 09:30:19 +0000 (10:30 +0100)]
Free RSA public key in mysqlnd sha256 auth

Not sure why this only started showing up as a leak now.

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Wed, 11 Dec 2019 09:29:10 +0000 (12:29 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Addirional fix for bug #78918

5 years agoAddirional fix for bug #78918
Dmitry Stogov [Wed, 11 Dec 2019 09:21:49 +0000 (12:21 +0300)]
Addirional fix for bug #78918

5 years agoSpeed up array_intersect/array_diff/array_filter
Tyson Andre [Sat, 7 Dec 2019 15:09:32 +0000 (10:09 -0500)]
Speed up array_intersect/array_diff/array_filter

Use zend_hash_update instead of zend_hash_add.

These are taking a subset of keys from an array with unique keys,
so the result should also have unique keys.
(this is already done for array_map())

Also, speed up array_intersect and array_diff slightly by
using ZEND_HASH_FOREACH macros.
This way, it doesn't need to load the same buckets and array counts
from memory every time (compiler previously couldn't infer they won't change)

```php
<?php
// $n=10000 now takes 0.095 seconds instead of 0.102
function test_bench(int $n) {
    $values = range(0,1000);
    $other = range(0,1000);
    unset($other[500]);
    unset($values[400]);

    $total = 0;
    for ($i = 0; $i < $n; $i++) {
        $total += count(array_intersect_key($values, $other));
    }
    return $total;
}
```

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Tue, 10 Dec 2019 21:47:15 +0000 (00:47 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78937 (Preloading unlinkable anonymous class can segfault)

5 years agoFixed bug #78937 (Preloading unlinkable anonymous class can segfault)
Dmitry Stogov [Tue, 10 Dec 2019 21:46:30 +0000 (00:46 +0300)]
Fixed bug #78937 (Preloading unlinkable anonymous class can segfault)

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Tue, 10 Dec 2019 19:17:42 +0000 (22:17 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix error message

5 years agoFix error message
Dmitry Stogov [Tue, 10 Dec 2019 19:17:10 +0000 (22:17 +0300)]
Fix error message

5 years agoMerge branch 'PHP-7.4'
Derick Rethans [Tue, 10 Dec 2019 16:59:09 +0000 (16:59 +0000)]
Merge branch 'PHP-7.4'

5 years agoPHP-7.4 is now 7.4.2-dev
Derick Rethans [Tue, 10 Dec 2019 16:55:36 +0000 (16:55 +0000)]
PHP-7.4 is now 7.4.2-dev

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 15:16:03 +0000 (16:16 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Set zend.exception_ignore_args=0 in run-tests.php

5 years agoSet zend.exception_ignore_args=0 in run-tests.php
Nikita Popov [Tue, 10 Dec 2019 15:15:26 +0000 (16:15 +0100)]
Set zend.exception_ignore_args=0 in run-tests.php

Any existing tests are going to be written under this assumption...

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 14:22:46 +0000 (15:22 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix incorrect zend_try usage

5 years agoFix incorrect zend_try usage
Nikita Popov [Tue, 10 Dec 2019 14:22:31 +0000 (15:22 +0100)]
Fix incorrect zend_try usage

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 12:52:36 +0000 (13:52 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix release build failure

5 years agoFix release build failure
Nikita Popov [Tue, 10 Dec 2019 12:49:40 +0000 (13:49 +0100)]
Fix release build failure

GCC complained about potentially uninitialized __orig_bailout,
even though the variable has an initializer. This warning was
quite persistent, I was only able to avoid it by using a separate
function.

Am I missing something?

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Tue, 10 Dec 2019 12:20:55 +0000 (13:20 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Improve error message

5 years agoImprove error message
Christoph M. Becker [Tue, 10 Dec 2019 11:46:45 +0000 (12:46 +0100)]
Improve error message

Formerly, the error message was like:

| Can't preload unlinked class MyException: Internal parent (Windows
| only limitation)Exception

Now it's like:

| Can't preload unlinked class MyException: Windows can't link to
| internal parent Exception

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 12:07:04 +0000 (13:07 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Add support for class_alias to preloading
  Fixed bug #78935: Check that all linked classes can be preloaded

5 years agoAdd support for class_alias to preloading
Nikita Popov [Tue, 10 Dec 2019 10:55:14 +0000 (11:55 +0100)]
Add support for class_alias to preloading

Related to bug #78918.

5 years agoFixed bug #78935: Check that all linked classes can be preloaded
Nikita Popov [Mon, 9 Dec 2019 14:14:39 +0000 (15:14 +0100)]
Fixed bug #78935: Check that all linked classes can be preloaded

During preloading, check that all classes that have been included
as part of the preload script itself (rather than through opcache_compile_file)
can actually be preloaded, i.e. satisfy Windows restrictions, have
resolved initializers and resolved property types. When resolving
initializers and property types, also autoload additional classes.
Because of this, the resolution runs in a loop.

5 years agoPromote warnings to exceptions in *scanf() functions
Máté Kocsis [Mon, 9 Dec 2019 19:29:01 +0000 (20:29 +0100)]
Promote warnings to exceptions in *scanf() functions

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 08:04:01 +0000 (09:04 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix merge mistake

5 years agoFix merge mistake
Nikita Popov [Tue, 10 Dec 2019 08:03:44 +0000 (09:03 +0100)]
Fix merge mistake

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 10 Dec 2019 08:01:55 +0000 (09:01 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix DCE with FE_FETCH

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 10 Dec 2019 08:01:18 +0000 (09:01 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix DCE with FE_FETCH

5 years agoFix DCE with FE_FETCH
Nikita Popov [Tue, 10 Dec 2019 08:00:09 +0000 (09:00 +0100)]
Fix DCE with FE_FETCH

For now, don't treat FE_FETCH op2 as no-val use. See GH-4982.

5 years agoAdd stubs for another batch of standard functions
Máté Kocsis [Mon, 11 Nov 2019 17:22:52 +0000 (18:22 +0100)]
Add stubs for another batch of standard functions

5 years agoReturn false when "Unable to fork"
Máté Kocsis [Fri, 15 Nov 2019 19:50:33 +0000 (20:50 +0100)]
Return false when "Unable to fork"

5 years agoThrow an exception when an invalid comparison operator is passed to version_compare()
Máté Kocsis [Fri, 15 Nov 2019 19:44:23 +0000 (20:44 +0100)]
Throw an exception when an invalid comparison operator is passed to version_compare()

5 years agoOnly accept string as the format parameter of *printf() functions
Máté Kocsis [Fri, 15 Nov 2019 19:31:19 +0000 (20:31 +0100)]
Only accept string as the format parameter of *printf() functions

5 years agoRemove phpdbg README
ekinhbayar [Sun, 8 Dec 2019 22:08:11 +0000 (01:08 +0300)]
Remove phpdbg README

phpdbg documentation has been moved to PHP manual and the link at the
bottom of this README is dead, so the file can be removed.

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 9 Dec 2019 15:35:45 +0000 (16:35 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #78912: INTL Support for accounting format

5 years agoFix #78912: INTL Support for accounting format
Christoph M. Becker [Fri, 6 Dec 2019 11:41:41 +0000 (12:41 +0100)]
Fix #78912: INTL Support for accounting format

We provide `NumberFormatter::CURRENCY_ACCOUNTING` to wrap
`UNUM_CURRENCY_ACCOUNTING `[1].

[1] <https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/unum_8h.html#a4eb4d3ff13bd506e7078b2be4052266dae97cdd7ed612d07d251021c076efb1c5>

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 15:06:37 +0000 (16:06 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix build

5 years agoFix build
Nikita Popov [Mon, 9 Dec 2019 15:06:26 +0000 (16:06 +0100)]
Fix build

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 12:58:19 +0000 (15:58 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Export zend_init_func_run_time_cache()

5 years agoExport zend_init_func_run_time_cache()
Dmitry Stogov [Mon, 9 Dec 2019 12:58:00 +0000 (15:58 +0300)]
Export zend_init_func_run_time_cache()

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 12:07:39 +0000 (15:07 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Call zend_unregister_ini_entries() when unload extension loaded through dl() without MSHUTDOWN callback. Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().

5 years agoCall zend_unregister_ini_entries() when unload extension loaded through dl() without...
Dmitry Stogov [Mon, 9 Dec 2019 12:05:24 +0000 (15:05 +0300)]
Call zend_unregister_ini_entries() when unload extension loaded through dl() without MSHUTDOWN callback.
Extensions with MSHUTDOWN should use UNREGISTER_INI_ENTRIES().

5 years agoMerge branch 'PHP-7.4'
Dmitry Stogov [Mon, 9 Dec 2019 10:50:43 +0000 (13:50 +0300)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78895 (Reflection detects abstract non-static class as abstract static. IS_IMPLICIT_ABSTRACT is not longer used)

5 years agoFixed bug #78895 (Reflection detects abstract non-static class as abstract static...
Dmitry Stogov [Mon, 9 Dec 2019 10:49:12 +0000 (13:49 +0300)]
Fixed bug #78895 (Reflection detects abstract non-static class as abstract static. IS_IMPLICIT_ABSTRACT is not longer used)

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Mon, 9 Dec 2019 09:32:53 +0000 (10:32 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Extend CURLFile to support streams
  Use curl_mime_*() functions if available

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Mon, 9 Dec 2019 09:32:03 +0000 (10:32 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Extend CURLFile to support streams
  Use curl_mime_*() functions if available

5 years agoExtend CURLFile to support streams
Christoph M. Becker [Mon, 29 Apr 2019 08:21:07 +0000 (10:21 +0200)]
Extend CURLFile to support streams

Due to former restrictions of the libcurl API, curl multipart/formdata
file uploads supported only proper files.  However, as of curl 7.56.0
the new `curl_mime_*()` API is available (and already supported by
PHP[1]), which allows us to support arbitrary *seekable* streams, which
is generally desirable, and particularly resolves issues with the
transparent Unicode and long part support on Windows (see bug #77711).

Note that older curl versions are still supported, but CURLFile is
still restricted to proper files in this case.

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

(cherry picked from commit c68dc6b5e37e74d89e0a387079139c054c8faa81)

5 years agoUse curl_mime_*() functions if available
Christoph M. Becker [Mon, 15 Apr 2019 16:24:59 +0000 (18:24 +0200)]
Use curl_mime_*() functions if available

As of curl 7.56.0, `curl_formadd()` is deprecated in favor of
`curl_mime_*()`, so we use the latter if available.

(cherry picked from commit a83b68ba56714bfa06737a61af795460caa4a105)

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 08:16:48 +0000 (09:16 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78926: Handle class table reallocation on failed link

5 years agoFixed bug #78926: Handle class table reallocation on failed link
Nikita Popov [Mon, 9 Dec 2019 08:15:27 +0000 (09:15 +0100)]
Fixed bug #78926: Handle class table reallocation on failed link

When we change back the bucket key on a class linking failure,
make sure to reload the bucket pointer, as the class table may
have been reallocated in the meantime.

Also remove a bogus bucket key change in anon class registration:
We don't actually rename the class in this case anymore, the RTD
key is already the final name.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:58:37 +0000 (08:58 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix bug #78887: Add upgrading note about get_declared_classes() order

[ci skip]

5 years agoFix bug #78887: Add upgrading note about get_declared_classes() order
Nikita Popov [Mon, 9 Dec 2019 07:58:11 +0000 (08:58 +0100)]
Fix bug #78887: Add upgrading note about get_declared_classes() order

[ci skip]

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:49:42 +0000 (08:49 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Use unmangled named in property type inheritance error

5 years agoUse unmangled named in property type inheritance error
Nikita Popov [Mon, 9 Dec 2019 07:48:33 +0000 (08:48 +0100)]
Use unmangled named in property type inheritance error

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 9 Dec 2019 07:41:43 +0000 (08:41 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #78904: Don't call any magic for uninitialized typed properties

5 years agoFixed bug #78904: Don't call any magic for uninitialized typed properties
Nikita Popov [Mon, 28 Oct 2019 12:34:33 +0000 (13:34 +0100)]
Fixed bug #78904: Don't call any magic for uninitialized typed properties

We already changed the behavior for __set() in f1848a4. However, it
seems that this is also a problem for all the other property magic,
see bug #78904.

This commit makes the behavior of all the property magic consistent:
Magic will not be triggered for uninitialized typed properties, only
explicitly unset() ones. This brings behavior more in line how
non-typed properties behave and avoids WTF.

Closes GH-4974.

5 years agoConvert warnings to ValueError
George Peter Banyard [Sun, 8 Dec 2019 20:03:14 +0000 (21:03 +0100)]
Convert warnings to ValueError

5 years agoRemove dead commented code and dead code in-between KALLE_0 ifdefs.
George Peter Banyard [Sun, 8 Dec 2019 13:32:01 +0000 (14:32 +0100)]
Remove dead commented code and dead code in-between KALLE_0 ifdefs.

Closes GH-4986

5 years agoAdd type error on filename which contain null bytes in bzopen
George Peter Banyard [Sun, 8 Dec 2019 19:19:32 +0000 (20:19 +0100)]
Add type error on filename which contain null bytes in bzopen

5 years agoMerge branch 'PHP-7.4'
Jakub Zelenka [Sun, 8 Dec 2019 17:58:59 +0000 (17:58 +0000)]
Merge branch 'PHP-7.4'

5 years agoFix bug #78916 (php-fpm 7.4.0 don't send mail via mail())
Jakub Zelenka [Sun, 8 Dec 2019 17:57:17 +0000 (17:57 +0000)]
Fix bug #78916 (php-fpm 7.4.0 don't send mail via mail())

5 years agoAdd type error on filename which contain null bytes in bzopen
George Peter Banyard [Sun, 8 Dec 2019 14:06:59 +0000 (15:06 +0100)]
Add type error on filename which contain null bytes in bzopen

5 years agoDrop duplicate definitions of zend_isnan and friends
Christoph M. Becker [Sat, 7 Dec 2019 17:05:44 +0000 (18:05 +0100)]
Drop duplicate definitions of zend_isnan and friends

Following up on commit 1c4ad17[1], we remove these definitions from
zend_config.w32.h, since they would be overridden by those in
zend_portability.h anyway.

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

5 years agoMerge branch 'PHP-7.4'
Christoph M. Becker [Sat, 7 Dec 2019 11:09:16 +0000 (12:09 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix #78923: Artifacts when convoluting image with transparency

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Sat, 7 Dec 2019 11:07:51 +0000 (12:07 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #78923: Artifacts when convoluting image with transparency

5 years agoFix #78923: Artifacts when convoluting image with transparency
willson-chen [Sat, 7 Dec 2019 02:56:37 +0000 (10:56 +0800)]
Fix #78923: Artifacts when convoluting image with transparency

We have to properly initialize `pxl` before using it.

Fix ported from <https://github.com/libgd/libgd/pull/559>.

5 years agoFix compiler warning
Christoph M. Becker [Fri, 6 Dec 2019 15:48:18 +0000 (16:48 +0100)]
Fix compiler warning

This cast is already done for all other _aliases, but this one has
apparently been missed so far.

5 years agoFixed operation with result in CPU register
Dmitry Stogov [Fri, 6 Dec 2019 14:16:46 +0000 (17:16 +0300)]
Fixed operation with result in CPU register

5 years agoRemove unused function
Nikita Popov [Fri, 6 Dec 2019 13:18:52 +0000 (14:18 +0100)]
Remove unused function

5 years agoOptimize return type checking
Nikita Popov [Fri, 6 Dec 2019 13:15:58 +0000 (14:15 +0100)]
Optimize return type checking

Split off the fast-path case and avoid redundant checks.

5 years agoUse cheaper code for overflow +/-1
Dmitry Stogov [Fri, 6 Dec 2019 11:04:58 +0000 (14:04 +0300)]
Use cheaper code for overflow +/-1

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 6 Dec 2019 10:11:12 +0000 (11:11 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix constant evaluation of && and ||

5 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 6 Dec 2019 10:10:31 +0000 (11:10 +0100)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix constant evaluation of && and ||

5 years agoFix constant evaluation of && and ||
Nikita Popov [Fri, 6 Dec 2019 10:07:57 +0000 (11:07 +0100)]
Fix constant evaluation of && and ||

The "return" in the for loop should have been a break on the switch,
otherwise the result is just ignored... but because it prevents
evaluation of the other operand, it also violates the invariant that
everything has been constant evaluated, resulting in an assertion
failure.

The for loop isn't correct in any case though, because it's not legal
to determine the result based on just the second operand, as the
first one may have a side-effect that cannot be optimized away.

5 years agoTry to restore laravel & symfony community jobs
Nikita Popov [Fri, 6 Dec 2019 06:56:39 +0000 (07:56 +0100)]
Try to restore laravel & symfony community jobs

Patch Doctrine to fix the PDOConnection::query() signature.

5 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 6 Dec 2019 06:40:01 +0000 (07:40 +0100)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix intermittent error in pdo_mysql___construct_options.phpt

5 years agoFix intermittent error in pdo_mysql___construct_options.phpt
Nikita Popov [Fri, 6 Dec 2019 06:38:56 +0000 (07:38 +0100)]
Fix intermittent error in pdo_mysql___construct_options.phpt

For the love of god, don't write tests based on mt_rand!

5 years agoRestore PDOStatement::setFetchMode() signature
Nikita Popov [Fri, 6 Dec 2019 06:18:11 +0000 (07:18 +0100)]
Restore PDOStatement::setFetchMode() signature

I don't think this is worth the BC break, and getting variadic
signature changes compatible across PHP versions is somewhat tricky.

5 years agoRemove CV limitation when determining value from type in SCCP
Nikita Popov [Thu, 5 Dec 2019 14:01:51 +0000 (15:01 +0100)]
Remove CV limitation when determining value from type in SCCP

As far as I can determine, this is no longer a problem: We will
not try to remove the defining instructions (this is only done if
the value is known by SCCP itself) and we also only determine
non-refcounted values in this way, so it is not a problem if the
FREE is omitted.

5 years agoAdd DCE support for ARRAY_KEY_EXISTS
Nikita Popov [Thu, 5 Dec 2019 13:51:36 +0000 (14:51 +0100)]
Add DCE support for ARRAY_KEY_EXISTS

5 years agoMove isinf, isnan, and isfinite to zend_portability.h
George Peter Banyard [Wed, 4 Dec 2019 15:37:42 +0000 (16:37 +0100)]
Move isinf, isnan, and isfinite to zend_portability.h

Closes GH-4966

5 years agoCapitalize first character of error message.
George Peter Banyard [Tue, 19 Nov 2019 21:56:48 +0000 (22:56 +0100)]
Capitalize first character of error message.

5 years agoConvert Errors to ValueErrors
George Peter Banyard [Mon, 18 Nov 2019 22:40:02 +0000 (23:40 +0100)]
Convert Errors to ValueErrors

Closes GH-4930

5 years agoAdd upgrading notes about removed functionality that were deprecated in PHP 7.4
Máté Kocsis [Thu, 5 Dec 2019 12:15:11 +0000 (13:15 +0100)]
Add upgrading notes about removed functionality that were deprecated in PHP 7.4