]> granicus.if.org Git - php/log
php
4 years agoRemove deprecated pgsql signatures
Nikita Popov [Wed, 9 Sep 2020 13:49:05 +0000 (15:49 +0200)]
Remove deprecated pgsql signatures

As the comment indicates, these are deprecated in PHP 4.2...

4 years agoEliminate unnecessary exception checks
Dmitry Stogov [Wed, 9 Sep 2020 13:15:37 +0000 (16:15 +0300)]
Eliminate unnecessary exception checks

4 years agoPromote some warnings in MBString Regexes
George Peter Banyard [Thu, 2 Apr 2020 15:05:43 +0000 (17:05 +0200)]
Promote some warnings in MBString Regexes

Closes GH-5341

4 years agoPromote pgsql no link to Error exception
Nikita Popov [Wed, 9 Sep 2020 10:44:28 +0000 (12:44 +0200)]
Promote pgsql no link to Error exception

4 years agoRemove deprecated multi-parameter form of pg_connect()
Nikita Popov [Wed, 9 Sep 2020 10:31:00 +0000 (12:31 +0200)]
Remove deprecated multi-parameter form of pg_connect()

4 years agoMake array_multisort() signature more variadic
Nikita Popov [Wed, 9 Sep 2020 09:36:38 +0000 (11:36 +0200)]
Make array_multisort() signature more variadic

The second and third arguments are not always the sort_order and
sort_flags -- they can also be in reverse order, or be arrays
altogether. Move them into the variadic parameter to avoid awkward
error messages.

4 years agoTest snmp on azure
Nikita Popov [Wed, 9 Sep 2020 08:04:16 +0000 (10:04 +0200)]
Test snmp on azure

Closes GH-6100.

4 years agoMark snmp tests as conflicting
Nikita Popov [Wed, 9 Sep 2020 09:23:55 +0000 (11:23 +0200)]
Mark snmp tests as conflicting

4 years agoSuppress uninitialized variable warning in snmp
Nikita Popov [Wed, 9 Sep 2020 08:23:06 +0000 (10:23 +0200)]
Suppress uninitialized variable warning in snmp

These are false positive warnings.

4 years agoAllow array_diff() and array_intersect() with single array argument
Nikita Popov [Tue, 8 Sep 2020 13:14:48 +0000 (15:14 +0200)]
Allow array_diff() and array_intersect() with single array argument

Both of these functions are well-defined when used with a single
array argument -- rejecting this case was an artificial limitation.
This is not useful when called with explicit arguments, but removes
edge-cases when used with argument unpacking:

    // OK even if $excludes is empty.
    array_diff($array, ...$excludes);

    // OK even if $arrays contains a single array only.
    array_intersect(...$arrays);

This matches the behavior of functions like array_merge() and
array_push(), which also allow calls with no array or a single
array respectively.

Closes GH-6097.

4 years agoImprove error messages mentioning parameters instead of arguments
Máté Kocsis [Sun, 16 Aug 2020 19:49:20 +0000 (21:49 +0200)]
Improve error messages mentioning parameters instead of arguments

Closes GH-5999

4 years agoFixed memory leak
Dmitry Stogov [Wed, 9 Sep 2020 08:09:20 +0000 (11:09 +0300)]
Fixed memory leak

4 years agoWildcard output differences in snmp tests
Nikita Popov [Wed, 9 Sep 2020 08:01:32 +0000 (10:01 +0200)]
Wildcard output differences in snmp tests

And point out that snmp-mibs-downloader is needed.

4 years agoTracin JIT support for FETCH_DIM_W/RW with IS_VAR + IS_INDIRECT first operand.
Dmitry Stogov [Wed, 9 Sep 2020 07:35:44 +0000 (10:35 +0300)]
Tracin JIT support for FETCH_DIM_W/RW with IS_VAR + IS_INDIRECT first operand.

4 years agoAvoid use of remote_port in snmp
Nikita Popov [Tue, 8 Sep 2020 14:55:48 +0000 (16:55 +0200)]
Avoid use of remote_port in snmp

This field is not used (and has not been used for a long time --
I've seen some mailing list thread from 2003 about it!) and throws
a deprecation warning.  The port is part of peername instead (for
transports that support a port at all).

4 years agoPass correct op_info to zend_jit_fetch_dim()
Nikita Popov [Wed, 9 Sep 2020 07:29:18 +0000 (09:29 +0200)]
Pass correct op_info to zend_jit_fetch_dim()

4 years agoFlesh out ZEND_HASH_REVERSE_FOREACH_* macros
twosee [Fri, 4 Sep 2020 14:43:02 +0000 (22:43 +0800)]
Flesh out ZEND_HASH_REVERSE_FOREACH_* macros

Closes GH-6080.

4 years agoFix 3b0fecd and resulting test fail lob_012.phpt
Christopher Jones [Wed, 9 Sep 2020 01:28:00 +0000 (11:28 +1000)]
Fix 3b0fecd and resulting test fail lob_012.phpt

4 years agoJIT for FETCH_DIM_W/RW insructions
Dmitry Stogov [Tue, 8 Sep 2020 23:41:22 +0000 (02:41 +0300)]
JIT for FETCH_DIM_W/RW insructions

4 years agoFix Windows build for shared ext/sockets
Christoph M. Becker [Tue, 8 Sep 2020 20:51:46 +0000 (22:51 +0200)]
Fix Windows build for shared ext/sockets

We can't use `PHPAPI` for extensions which may be built shared.  Thus,
we introduce `PHP_SOCKETS_API`.

4 years agoDon't handle missing value in zend_verify_arg_error()
Nikita Popov [Tue, 8 Sep 2020 18:42:45 +0000 (20:42 +0200)]
Don't handle missing value in zend_verify_arg_error()

This error condition is handled separately, never reaches this
function.

4 years agomb_str_split is already documented on php.net
Alex Dowad [Tue, 8 Sep 2020 18:09:44 +0000 (20:09 +0200)]
mb_str_split is already documented on php.net

So remove TODO comment which implies that it's not.

4 years agoJIT for IN_ARRAY instruction.
Dmitry Stogov [Tue, 8 Sep 2020 18:03:51 +0000 (21:03 +0300)]
JIT for IN_ARRAY instruction.

4 years agoMerge branch 'PHP-7.4' into master
Christoph M. Becker [Tue, 8 Sep 2020 16:11:26 +0000 (18:11 +0200)]
Merge branch 'PHP-7.4' into master

* PHP-7.4:
  Fix #72941: Modifying bucket->data by-ref has no effect any longer

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Christoph M. Becker [Tue, 8 Sep 2020 16:07:57 +0000 (18:07 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fix #72941: Modifying bucket->data by-ref has no effect any longer

4 years agoFix #72941: Modifying bucket->data by-ref has no effect any longer
Christoph M. Becker [Tue, 8 Sep 2020 13:09:30 +0000 (15:09 +0200)]
Fix #72941: Modifying bucket->data by-ref has no effect any longer

To match the PHP 5 behavior, we have to explicitly cater to `buffer` or
`data` being references.

Closes GH-6096.

4 years agoTry to fix 32-bit setcookie tests, again
Nikita Popov [Tue, 8 Sep 2020 15:37:40 +0000 (17:37 +0200)]
Try to fix 32-bit setcookie tests, again

4 years agoadd socket_ce and socket_import_file_descriptor in public API
Remi Collet [Tue, 8 Sep 2020 12:46:23 +0000 (14:46 +0200)]
add socket_ce and socket_import_file_descriptor in public API

4 years agoFix some snmp stubs
Nikita Popov [Tue, 8 Sep 2020 15:01:08 +0000 (17:01 +0200)]
Fix some snmp stubs

As well as some basic mistakes in tests.

4 years agoSuppress unused variable in snmp
Nikita Popov [Tue, 8 Sep 2020 14:50:10 +0000 (16:50 +0200)]
Suppress unused variable in snmp

force_ipv6 may be unused if compiling without ipv6 support.

4 years agoRun the opcache-only configuration only for scheduled builds
Nikita Popov [Tue, 8 Sep 2020 14:29:01 +0000 (16:29 +0200)]
Run the opcache-only configuration only for scheduled builds

The opcache-only configuration has very little signal (i.e. it is
very rare that it fails while non-opcache and opcache+jit both
pass). Switch it to run only for nightly builds, so we get faster
results on normal builds.

4 years agoTry to fix setcookie() tests on 32-bit
Nikita Popov [Tue, 8 Sep 2020 14:18:45 +0000 (16:18 +0200)]
Try to fix setcookie() tests on 32-bit

4 years agomicro-optimization
Dmitry Stogov [Tue, 8 Sep 2020 13:47:30 +0000 (16:47 +0300)]
micro-optimization

4 years agoJIT for FETCH_LIST_R
Dmitry Stogov [Tue, 8 Sep 2020 13:47:15 +0000 (16:47 +0300)]
JIT for FETCH_LIST_R

4 years agoFix UNKNOWN default values in ext/oci8
Máté Kocsis [Mon, 7 Sep 2020 15:38:14 +0000 (17:38 +0200)]
Fix UNKNOWN default values in ext/oci8

Closes GH-6089

4 years agoMake null byte error a ValueError
Nikita Popov [Tue, 8 Sep 2020 10:12:26 +0000 (12:12 +0200)]
Make null byte error a ValueError

Currently we treat paths with null bytes as a TypeError, which is
incorrect, and rather inconsistent, as we treat empty paths as
ValueError. We do this because the error is generated by zpp and
it's easier to always throw TypeError there.

This changes the zpp implementation to throw a TypeError only if
the type is actually wrong and throw ValueError for null bytes.
The error message is also split accordingly, to be more precise.

Closes GH-6094.

4 years agoAlways use PCRE for mbstring.http_output_conv_mimetypes
Nikita Popov [Tue, 8 Sep 2020 13:01:17 +0000 (15:01 +0200)]
Always use PCRE for mbstring.http_output_conv_mimetypes

Instead of using either oniguruma or pcre depending on which is
available. We always have PCRE, so use it. This ensures consistent
behavior.

4 years agoPromote warnings to errors for set(raw)cookie()
George Peter Banyard [Tue, 7 Jul 2020 16:59:05 +0000 (18:59 +0200)]
Promote warnings to errors for set(raw)cookie()

Closes GH-5819

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 8 Sep 2020 12:22:32 +0000 (14:22 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Support more placeholders in bless_tests.php

4 years agoSupport more placeholders in bless_tests.php
Nikita Popov [Tue, 8 Sep 2020 10:16:31 +0000 (12:16 +0200)]
Support more placeholders in bless_tests.php

And don't replace trailing --CLEAN-- sections.

4 years agoRequire $method parameter in openssl_seal/openssl_open
Nikita Popov [Tue, 8 Sep 2020 09:06:49 +0000 (11:06 +0200)]
Require $method parameter in openssl_seal/openssl_open

RC4 is considered insecure, and it's not possible to change the
default of these functions. As such, require the method to be
passed explicitly.

Closes GH-6093.

4 years agoPromote warnings in exif
Nikita Popov [Tue, 8 Sep 2020 09:50:25 +0000 (11:50 +0200)]
Promote warnings in exif

The only thing that can promoted are the path-related checked.
Everything else is input dependent and error-suppressing these
functions is both the typical and the recommended usage.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 8 Sep 2020 08:28:07 +0000 (10:28 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Revert "Update libzip on macos"
  Revert "Manually build re2c on macos"

4 years agoRevert "Update libzip on macos"
Nikita Popov [Tue, 8 Sep 2020 07:51:55 +0000 (09:51 +0200)]
Revert "Update libzip on macos"

This reverts commit 090bddb93488b6bcf411e970afe77d96f86f4ac8.

4 years agoRevert "Manually build re2c on macos"
Nikita Popov [Tue, 8 Sep 2020 07:49:19 +0000 (09:49 +0200)]
Revert "Manually build re2c on macos"

This reverts commit 9bbe236f6adead060d83c87a581674f4917db3de.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Tue, 8 Sep 2020 08:01:27 +0000 (10:01 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #80077

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Tue, 8 Sep 2020 08:01:03 +0000 (10:01 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #80077

4 years agoFixed bug #80077
Nikita Popov [Tue, 8 Sep 2020 07:58:35 +0000 (09:58 +0200)]
Fixed bug #80077

Quoting from the bug report:

> The domain names passed to getmxrr() do not contain a trailing dot.
> DNS lookups which do not find records will (depending on the local
> resolver config) try again by adding the local domain to the end of
> the searched host/domain. In many environments there's an mx record
> for any subdomain of the local domain and the MX query will return
> a hit. But the test expects no hit. So the test fails when checking
> that "qa.php.net" does not have an MX record in DNS. In our local
> environment the resolver falls back to also check qa.php.net.kippdata.de
> which does have an MX record. Using "qa.php.net." instead of "qa.php.net"
> should fix this for everyone.

4 years agodecbin/decoct/dechex optimization.
Dmitry Stogov [Tue, 8 Sep 2020 07:34:29 +0000 (10:34 +0300)]
decbin/decoct/dechex optimization.

4 years agoCatch type errors so test completes and doesn't diff
Christopher Jones [Tue, 8 Sep 2020 06:49:54 +0000 (16:49 +1000)]
Catch type errors so test completes and doesn't diff

4 years agoAccept updated error number generated by the latest Oracle version
Christopher Jones [Tue, 8 Sep 2020 06:06:33 +0000 (16:06 +1000)]
Accept updated error number generated by the latest Oracle version

4 years agoYes, and mask the dir path too.
Christopher Jones [Tue, 8 Sep 2020 05:56:26 +0000 (15:56 +1000)]
Yes, and mask the dir path too.

4 years agoFix parsing regression from PHP 7
Christopher Jones [Tue, 8 Sep 2020 05:48:48 +0000 (15:48 +1000)]
Fix parsing regression from PHP 7

4 years agoAdjust assignment line number for match
Ilija Tovilo [Sat, 5 Sep 2020 14:33:22 +0000 (16:33 +0200)]
Adjust assignment line number for match

Otherwise the assignment will have the same number as the default arm
which will 1. mis-trigger a breakpoint and 2. mark the line as covered
even when it isn't.

Closes GH-6083

4 years agoReduce input size limit in execute fuzzer
Nikita Popov [Mon, 7 Sep 2020 20:57:09 +0000 (22:57 +0200)]
Reduce input size limit in execute fuzzer

We only have 4 Zend test cases > 8k. Large inputs tend to just
make things slower.

4 years agoAdd "const". Move constant strings to read-only memory.
Dmitry Stogov [Mon, 7 Sep 2020 18:35:48 +0000 (21:35 +0300)]
Add "const". Move constant strings to read-only memory.

4 years agoPromote warnings to exceptions in ext/intl
Máté Kocsis [Mon, 10 Aug 2020 21:23:35 +0000 (23:23 +0200)]
Promote warnings to exceptions in ext/intl

Closes GH-5972

4 years agoDon't allow dynamic properties on generators
Nikita Popov [Mon, 7 Sep 2020 17:06:53 +0000 (19:06 +0200)]
Don't allow dynamic properties on generators

Noticed this because we leak those properties in GC. This was
never intended to be allowed.

4 years agoFix UNKNOWN default values in various extensions
Máté Kocsis [Fri, 4 Sep 2020 12:01:09 +0000 (14:01 +0200)]
Fix UNKNOWN default values in various extensions

Closes GH-6075

4 years agoFix UNKNOWN default values in ext/standard
Máté Kocsis [Thu, 20 Aug 2020 22:42:44 +0000 (00:42 +0200)]
Fix UNKNOWN default values in ext/standard

Closes GH-6026

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Mon, 7 Sep 2020 14:16:25 +0000 (16:16 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Don't leave behind temporary file in bug70362.phpt

4 years agoDon't leave behind temporary file in bug70362.phpt
Nikita Popov [Mon, 7 Sep 2020 14:15:44 +0000 (16:15 +0200)]
Don't leave behind temporary file in bug70362.phpt

4 years agoDrop support for crypt() without explicit salt
Nikita Popov [Mon, 7 Sep 2020 13:43:26 +0000 (15:43 +0200)]
Drop support for crypt() without explicit salt

crypt() without salt generates a weak $1$ MD5 hash. It has been
throwing a notice since 2013 and we provide a much better alternative
in password_hash() (which can auto-generate salts for strong
password hashes), so keeping this is just a liability.

4 years agoAllocate temporary PCRE match data using ZMM
Nikita Popov [Mon, 7 Sep 2020 10:30:43 +0000 (12:30 +0200)]
Allocate temporary PCRE match data using ZMM

Create a separate general context that uses ZMM as allocator and
use it to allocate temporary PCRE match data (there is still one
global match data). There is no requirement that the match data
and the compiled regex / match context use the same general context.

This makes sure that we do not leak persistent memory on bailout
and fixes oss-fuzz #25296, on which half the libfuzzer runs
currently get stuck.

4 years agoAvoid large eval inputs in fuzzer
Nikita Popov [Mon, 7 Sep 2020 09:53:01 +0000 (11:53 +0200)]
Avoid large eval inputs in fuzzer

While we limit the size of the main compilation input, the size
of eval inputs was not limited. This could result in stack
overflows, e.g. oss-fuzz #25464.

4 years agoAccept zend_string instead of zval in zend_compile_string
Nikita Popov [Mon, 7 Sep 2020 09:42:21 +0000 (11:42 +0200)]
Accept zend_string instead of zval in zend_compile_string

4 years agoPrivate/public split curl header
Nikita Popov [Mon, 7 Sep 2020 09:12:41 +0000 (11:12 +0200)]
Private/public split curl header

To allow exporting the php_curl.h header containing curl class
entries, split off a separate curl_private.h header with all the
implementation details.

We may move or expose additional APIs in php_curl.h on an as-needed
basis.

4 years agoRemove some unnecessary HAVE_EXTNAME guards
Nikita Popov [Mon, 7 Sep 2020 09:05:07 +0000 (11:05 +0200)]
Remove some unnecessary HAVE_EXTNAME guards

A recurring pattern in old extension: Putting the whole source
code behind HAVE_EXTNAME. This is pointless, as the code is only
compiled if the extension is enabled.

This removes a couple of them, but not all.

4 years agoOpcache JIT, code simplification for Haiku.
David Carlier [Sat, 5 Sep 2020 14:04:01 +0000 (14:04 +0000)]
Opcache JIT, code simplification for Haiku.

More straightforward approach to get the path of the
 current PHP process.

Closes GH-6082.

4 years agoAdd phpunit to community project tests
Nikita Popov [Fri, 4 Sep 2020 13:31:32 +0000 (15:31 +0200)]
Add phpunit to community project tests

4 years agoThrow on invalid mb_http_input() type
Nikita Popov [Mon, 7 Sep 2020 07:59:51 +0000 (09:59 +0200)]
Throw on invalid mb_http_input() type

4 years agoFix incorrect/unused macro
Tyson Andre [Sun, 6 Sep 2020 16:29:32 +0000 (12:29 -0400)]
Fix incorrect/unused macro

zend_ts_hash_init accepts 4 arguments, not 5.
The pHashFunction parameter was removed in 5d2576264653c2faaca9cd7d64218d10ab612408

Closes GH-6087

4 years agoImprove handling of `#[` attributes in `php -a`
Tyson Andre [Sun, 6 Sep 2020 13:43:09 +0000 (09:43 -0400)]
Improve handling of `#[` attributes in `php -a`

`php -a` treats lines starting with `#` as comments when deciding if
the provided statement is valid.

So it passed `#[MyAttr]` to the parser after the user hits enter,
causing a syntax error for multi-line statements..

With this patch, the following snippet is parsed correctly

```
php > #[Attr]
php > function x() { }
php > var_export((new ReflectionFunction('x'))->getAttributes()[0]->getName());
'Attr'
```

Followup to GH-6085

Closes GH-6086

4 years agoImprove handling of `#[` in `php -a`
Tyson Andre [Sat, 5 Sep 2020 20:52:14 +0000 (16:52 -0400)]
Improve handling of `#[` in `php -a`

PHP treats `#ini_setting=value` as a call to
`ini_set('ini_setting', 'value')`,
and silently skips undeclared settings.

This is a problem due to `#[` becoming supported attribute syntax:

- `#[Attr] const X = 123;` (this is not a valid place to put an attribute)
  This does not create a constant.
- `#[Attr] function test($x=false){}` also contains `=`.
  This does not create a function.

Instead, only treat lines starting with `#` as a special case
when the next character isn't `[`

Closes GH-6085

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Sat, 5 Sep 2020 20:10:12 +0000 (22:10 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fix azure i386 build

4 years agoFix azure i386 build
Nikita Popov [Sat, 5 Sep 2020 19:39:39 +0000 (21:39 +0200)]
Fix azure i386 build

Looks like pgsql on i386 broke even more.

4 years agoHandle null encoding in mb_http_input()
Nikita Popov [Fri, 4 Sep 2020 15:15:35 +0000 (17:15 +0200)]
Handle null encoding in mb_http_input()

4 years agoReenable s390x on travis
Nikita Popov [Fri, 4 Sep 2020 13:22:11 +0000 (15:22 +0200)]
Reenable s390x on travis

Only enable it for cron builds. We don't need to run exotic
architectures on every commit and PR.

Closes GH-6076.

4 years agoFixed bug #80057 (DateTimeImmutable::createFromFormat() does not populate time)
Derick Rethans [Fri, 4 Sep 2020 14:55:08 +0000 (15:55 +0100)]
Fixed bug #80057 (DateTimeImmutable::createFromFormat() does not populate time)

4 years agoPromote warnings to exceptions in ext/ldap
Máté Kocsis [Thu, 3 Sep 2020 14:21:36 +0000 (16:21 +0200)]
Promote warnings to exceptions in ext/ldap

Closes GH-6065

4 years agoUse ZPP instead of custom type checks
Máté Kocsis [Fri, 4 Sep 2020 12:23:43 +0000 (14:23 +0200)]
Use ZPP instead of custom type checks

We can add these types as a native type declaration to stubs as a side-effect. Closes GH-6068

4 years agoUse the canonical order of types in array|string ZPP error messages
Máté Kocsis [Fri, 4 Sep 2020 12:20:15 +0000 (14:20 +0200)]
Use the canonical order of types in array|string ZPP error messages

4 years agoAdd the Z_PARAM_ARRAY_HT_OR_NULL and Z_PARAM_OBJ macros
Máté Kocsis [Fri, 4 Sep 2020 12:15:17 +0000 (14:15 +0200)]
Add the Z_PARAM_ARRAY_HT_OR_NULL and Z_PARAM_OBJ macros

4 years agoExtract common flock code
George Peter Banyard [Thu, 3 Sep 2020 13:49:28 +0000 (15:49 +0200)]
Extract common flock code

As SPL is currently a copie of the code in file.c

Closes GH-6069

4 years agoRelease call trampolines in zpp fcc
Nikita Popov [Fri, 4 Sep 2020 07:41:27 +0000 (09:41 +0200)]
Release call trampolines in zpp fcc

When using zpp 'f' or Z_PARAM_FUNC, if the fcc points to a call
trampoline release it immediately and force zend_call_function
to refetch it. This may require additional callability checks
if __call is used, but avoids the need to carefully free fcc
values in all internal functions -- in some cases this is not
simple, as a type error might be triggered by a later argument
in the same zpp call.

This fixes oss-fuzz #25390.

Closes GH-6073.

4 years agoUpdate travis to bionic
Nikita Popov [Fri, 4 Sep 2020 10:34:47 +0000 (12:34 +0200)]
Update travis to bionic

4 years agoMake gethostbyname() test more liberal
Nikita Popov [Fri, 4 Sep 2020 10:59:42 +0000 (12:59 +0200)]
Make gethostbyname() test more liberal

This returns 127.0.1.1 on travis bionic.

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Fri, 4 Sep 2020 09:00:09 +0000 (11:00 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Avoid duplicate octal warning during heredoc scan ahead

4 years agoDisable InfiniteIterator class while fuzzing
Nikita Popov [Fri, 4 Sep 2020 08:15:55 +0000 (10:15 +0200)]
Disable InfiniteIterator class while fuzzing

The combination of LimitIterator and InfiniteIterator can cause
effectively infinite loops that bypass the executor step limit.

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Fri, 4 Sep 2020 08:59:41 +0000 (10:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Avoid duplicate octal warning during heredoc scan ahead

4 years agoAvoid duplicate octal warning during heredoc scan ahead
Nikita Popov [Fri, 4 Sep 2020 08:58:51 +0000 (10:58 +0200)]
Avoid duplicate octal warning during heredoc scan ahead

4 years agoAvoid unnecessary IP initiliaization on trace linking
Dmitry Stogov [Fri, 4 Sep 2020 08:42:13 +0000 (11:42 +0300)]
Avoid unnecessary IP initiliaization on trace linking

4 years agoCleanup macro/function names
Dmitry Stogov [Thu, 3 Sep 2020 23:10:48 +0000 (02:10 +0300)]
Cleanup macro/function names

4 years agoLoad EX(opline) in one instuction if possible
Dmitry Stogov [Thu, 3 Sep 2020 20:53:02 +0000 (23:53 +0300)]
Load EX(opline) in one instuction if possible

4 years agoReorder DynAsm macros (no other changes)
Dmitry Stogov [Thu, 3 Sep 2020 20:52:24 +0000 (23:52 +0300)]
Reorder DynAsm macros (no other changes)

4 years agoError promotions in SPL
George Peter Banyard [Thu, 3 Sep 2020 15:17:46 +0000 (17:17 +0200)]
Error promotions in SPL

Warning to Error promotion and a Notice to Warning promotion to align
with the behaviour specified in the Reclassify Engine Warnings RFC.

Closes GH-6072

4 years agoWarning to Error promotion in ext/standard
George Peter Banyard [Thu, 3 Sep 2020 15:43:57 +0000 (17:43 +0200)]
Warning to Error promotion in ext/standard

Those should be the last ones other than set(raw)cookie()

Closes GH-5814

4 years agoMerge branch 'PHP-7.4'
Nikita Popov [Thu, 3 Sep 2020 15:13:47 +0000 (17:13 +0200)]
Merge branch 'PHP-7.4'

* PHP-7.4:
  Fixed bug #80049

4 years agoMerge branch 'PHP-7.3' into PHP-7.4
Nikita Popov [Thu, 3 Sep 2020 15:12:50 +0000 (17:12 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4

* PHP-7.3:
  Fixed bug #80049

4 years agoFixed bug #80049
Nikita Popov [Thu, 3 Sep 2020 15:10:34 +0000 (17:10 +0200)]
Fixed bug #80049

Type checking may convert to refcounted values, so force freeing
of extra args.