]>
granicus.if.org Git - php/log
Nikita Popov [Wed, 15 Apr 2020 08:41:19 +0000 (10:41 +0200)]
More precise ifunc resolver return type
Fixes -Wattribute-alias warning.
Nikita Popov [Wed, 15 Apr 2020 08:37:33 +0000 (10:37 +0200)]
Suppress SIG_ERR cast warnings
By casting to void*. I don't want to deal with this right now.
Nikita Popov [Wed, 15 Apr 2020 08:28:48 +0000 (10:28 +0200)]
Fix function signature mismatches in GMP
This is fairly annoying. Add adapter functions for cases where
we are discarding a return value.
Some of the issues are legitimate in that we were previously
truncating some unsigned long return values to int implicitly,
though I doubt it makes a difference in practice.
This fixes -Wcast-function-type warnings.
Nikita Popov [Wed, 15 Apr 2020 08:04:20 +0000 (10:04 +0200)]
Fix PHP_HAVALUpdate signature
Fixes a -Wcast-function-type warning.
Nikita Popov [Wed, 15 Apr 2020 07:58:19 +0000 (09:58 +0200)]
Fix function libxml free error signature
Fixes a -Wcast-function-type warning.
Remi Collet [Wed, 15 Apr 2020 07:26:55 +0000 (09:26 +0200)]
fix test using short_tag
Remi Collet [Wed, 15 Apr 2020 07:07:21 +0000 (09:07 +0200)]
workaround typo in system libgd 2.3.0
George Peter Banyard [Wed, 5 Feb 2020 16:36:41 +0000 (17:36 +0100)]
Add -Wextra compiler warnings and exclude the trigger happy ones
The compile warnings which are explicitly suppressed are:
* -Wno-implicit-fallthrough
* -Wno-unused-parameter
* -Wno-sign-compare
* -Wno-clobbered, only with GCC
Closes GH-5151
George Peter Banyard [Thu, 26 Mar 2020 20:17:23 +0000 (21:17 +0100)]
Add -Wno-type-limits compiler flag to Sodium extension
This may happen on 32bits
George Peter Banyard [Wed, 25 Mar 2020 18:13:59 +0000 (19:13 +0100)]
Add -Wno-ignored-qualifiers compiler flag to Tidy extension.
This is an issue in the provided library and needs to be fixed upstream.
Dmitry Stogov [Tue, 14 Apr 2020 17:38:42 +0000 (20:38 +0300)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix #79472: ext/ffi/tests/040.phpt TC fails on Big endian arch
Christoph M. Becker [Mon, 13 Apr 2020 21:24:40 +0000 (23:24 +0200)]
Fix #79472: ext/ffi/tests/040.phpt TC fails on Big endian arch
For now we are choosing the simplest solution, namely to skip the test
on big-endian architectures.
Christoph M. Becker [Tue, 14 Apr 2020 16:20:58 +0000 (18:20 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Add missing CVE
Christoph M. Becker [Tue, 14 Apr 2020 16:19:16 +0000 (18:19 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Add missing CVE
Christoph M. Becker [Tue, 14 Apr 2020 16:18:18 +0000 (18:18 +0200)]
Add missing CVE
Nikita Popov [Tue, 14 Apr 2020 15:55:04 +0000 (17:55 +0200)]
Make gen_stub.php compatible with PHP 7.1 again
Not worth bumping requirements over this...
Nikita Popov [Tue, 14 Apr 2020 15:50:54 +0000 (17:50 +0200)]
Fix test after callback name change
Alex Dowad [Tue, 14 Apr 2020 12:05:32 +0000 (14:05 +0200)]
Remove XFAIL from tests for 'bug' 48770
Bug 48770 was opened due to conflicting expectations about the behavior of:
call_user_func_array(array($this, 'parent::methodName'), array($arg1,$arg2))
The one reporting the 'bug' seemed to think that since the method name was prefixed with
`parent::`, it should call the method in the superclass of the *class where this code appears*.
However, `$this` might be an instance of a subclass. If so, then it is quite reasonable that
`call_user_func_array` will call the method as defined in the superclass of *the receiver*.
So the 'bug' is not really a bug. Therefore, there is no need for an XFAIL in the tests. They
should just pass.
Amend tests to reflect the actual expected behavior of `call_user_func_array`, not what the
person who reported bug 48770 thought it should be.
Closes GH-5386.
Nikita Popov [Tue, 14 Apr 2020 15:38:56 +0000 (17:38 +0200)]
Fix filter_(var|input)_array default
George Peter Banyard [Wed, 25 Mar 2020 20:30:54 +0000 (21:30 +0100)]
Remove XFAIL section of a passing COM test
Closes GH-5297
Nikita Popov [Tue, 14 Apr 2020 15:17:38 +0000 (17:17 +0200)]
Add zend_string_concat2 API
Sara Golemon [Tue, 14 Apr 2020 15:14:04 +0000 (11:14 -0400)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fixed bug #79468
NEWS
Guillaume Charifi [Tue, 14 Apr 2020 10:04:23 +0000 (12:04 +0200)]
Improve socket cmsg space handling.
This should also fix the null pointer arithmetic warning on MacOS as we don't depend on whack code written by Apple.
Closes GH-5387
Nikita Popov [Tue, 14 Apr 2020 15:02:47 +0000 (17:02 +0200)]
Always use __invoke callable name for objects
The callable name is provided also if it's not callable, in which
case it's basically "what it would be if it were callable", which
is ClassName::__invoke. The current behavior of casting the object
to string makes very little sense as this will just throw an
exception for most objects.
Nikita Popov [Tue, 14 Apr 2020 14:52:13 +0000 (16:52 +0200)]
Add zend_create_member_string() API
This is a recurring pattern.
Sara Golemon [Tue, 14 Apr 2020 14:32:21 +0000 (10:32 -0400)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed bug #79468
NEWS
Sara Golemon [Tue, 14 Apr 2020 14:31:35 +0000 (10:31 -0400)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fixed bug #79468
NEWS
dinosaur [Mon, 13 Apr 2020 23:46:34 +0000 (07:46 +0800)]
Fixed bug #79468
Close the stream filter resources when removing them from the stream.
Sara Golemon [Tue, 14 Apr 2020 14:25:37 +0000 (10:25 -0400)]
NEWS
Nikita Popov [Tue, 14 Apr 2020 13:16:28 +0000 (15:16 +0200)]
Use UNKNOWN default for socket_connect()
Specifying the port is mandatory for INET sockets.
Nikita Popov [Tue, 14 Apr 2020 13:14:40 +0000 (15:14 +0200)]
Fix socket_write() default value
Nikita Popov [Tue, 14 Apr 2020 14:08:43 +0000 (16:08 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Don't leak peername if accept fails
Nikita Popov [Tue, 14 Apr 2020 14:08:07 +0000 (16:08 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Don't leak peername if accept fails
Nikita Popov [Tue, 14 Apr 2020 14:05:57 +0000 (16:05 +0200)]
Don't leak peername if accept fails
Even if the accept fails, the peername may be populated.
George Peter Banyard [Tue, 14 Apr 2020 11:56:48 +0000 (13:56 +0200)]
Add Intl resource bundle files for big-endian architecture.
Little and Big endian files have their own designated folder.
Both use the ASCII charset family.
We may want to add a big-endian/EBCDIC charset family resource bundle in the future.
The build script is currently left untouched as it seems to mostly be for Windows.
Máté Kocsis [Mon, 13 Apr 2020 08:41:23 +0000 (10:41 +0200)]
Improve some TypeError and ValueError messages
Closes GH-5377
Dmitry Stogov [Tue, 14 Apr 2020 12:37:20 +0000 (15:37 +0300)]
Added missed '~'
Christoph M. Becker [Tue, 14 Apr 2020 12:01:00 +0000 (14:01 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix test cases
Christoph M. Becker [Tue, 14 Apr 2020 11:59:39 +0000 (13:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix test cases
Christoph M. Becker [Tue, 14 Apr 2020 11:55:56 +0000 (13:55 +0200)]
Fix test cases
Máté Kocsis [Sun, 12 Apr 2020 12:03:43 +0000 (14:03 +0200)]
Generate method entries for ext/intl
Closes GH-5370
Nikita Popov [Tue, 14 Apr 2020 10:52:24 +0000 (12:52 +0200)]
Increase timeout on ubsan/asan job
This one occasionally runs for more than 2:30 hours.
Nikita Popov [Tue, 14 Apr 2020 10:02:04 +0000 (12:02 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fixed bug #79468
Nikita Popov [Tue, 14 Apr 2020 10:00:02 +0000 (12:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed bug #79468
dinosaur [Mon, 13 Apr 2020 23:46:34 +0000 (07:46 +0800)]
Fixed bug #79468
Close the stream filter resources when removing them from the stream.
Máté Kocsis [Tue, 14 Apr 2020 09:32:33 +0000 (11:32 +0200)]
Remove PDO::dbh_constructor()
Máté Kocsis [Sun, 12 Apr 2020 16:50:41 +0000 (18:50 +0200)]
Generate method entries from stubs for curl, ffi, pdo, phar
Closes GH-5375
Máté Kocsis [Mon, 13 Apr 2020 14:28:55 +0000 (16:28 +0200)]
Generate function entries from stubs for a couple of extensions
Migrates ext/standard, ext/tidy, ext/tokenizer,
ext/xml, ext/xml_reader, and ext/xml_writer. Closes GH-5381.
Alex Dowad [Wed, 8 Apr 2020 11:19:39 +0000 (13:19 +0200)]
Syntax errors caused by unclosed {, [, ( mention specific location
Aside from a few very specific syntax errors for which detailed exceptions are
thrown, generally PHP just emits the default error messages generated by bison on syntax
error. These messages are very uninformative; they just say "Unexpected ... at line ...".
This is most problematic with constructs which can span an arbitrary number of lines, such
as blocks of code delimited by { }, 'if' conditions delimited by ( ), and so on. If a closing
delimiter is missed, the block will run for the entire remainder of the source file (which
could be thousands of lines), and then at the end, a parse error will be thrown with the
dreaded words: "Unexpected end of file".
Therefore, track the positions of opening and closing delimiters and ensure that they match
up correctly. If any mismatch or missing delimiter is detected, immediately throw a parse
error which points the user to the offending line. This is best done in the *lexer* and not
in the parser.
Thanks to Nikita Popov and George Peter Banyard for suggesting improvements.
Fixes bug #79368.
Closes GH-5364.
Nikita Popov [Tue, 14 Apr 2020 08:36:55 +0000 (10:36 +0200)]
Remove int6store()
The implementation is broken (syntactically). As it's not used
anyway, I'm just dropping it instead.
Christoph M. Becker [Tue, 14 Apr 2020 06:57:29 +0000 (08:57 +0200)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Add NEWS entries [ci skip]
Christoph M. Becker [Tue, 14 Apr 2020 06:55:48 +0000 (08:55 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Add NEWS entries [ci skip]
Christoph M. Becker [Tue, 14 Apr 2020 06:53:35 +0000 (08:53 +0200)]
Add NEWS entries [ci skip]
Stanislav Malyshev [Tue, 14 Apr 2020 04:09:23 +0000 (21:09 -0700)]
Merge branch 'PHP-7.4'
* PHP-7.4:
Fix bug #79465 - use unsigneds as indexes.
Fix bug #79330 - make all execution modes consistent in rejecting \0
Stanislav Malyshev [Tue, 14 Apr 2020 04:09:15 +0000 (21:09 -0700)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix bug #79465 - use unsigneds as indexes.
Fix bug #79330 - make all execution modes consistent in rejecting \0
Stanislav Malyshev [Tue, 14 Apr 2020 04:09:08 +0000 (21:09 -0700)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix bug #79465 - use unsigneds as indexes.
Fix bug #79330 - make all execution modes consistent in rejecting \0
Stanislav Malyshev [Tue, 14 Apr 2020 04:07:04 +0000 (21:07 -0700)]
Fix bug #79465 - use unsigneds as indexes.
Stanislav Malyshev [Tue, 14 Apr 2020 04:00:44 +0000 (21:00 -0700)]
Fix bug #79330 - make all execution modes consistent in rejecting \0
George Peter Banyard [Mon, 13 Apr 2020 18:25:22 +0000 (20:25 +0200)]
Fix [-Wchar-subscripts] in Hash extension
Use size_t type instead of char for string index.
Char may be unsigned on some platforms.
partial fix to bug 79431
George Peter Banyard [Sun, 12 Apr 2020 16:23:54 +0000 (18:23 +0200)]
Fix [-Werror=missing-braces] compiler warning
Partial fix to bug 79431
Máté Kocsis [Sun, 12 Apr 2020 17:53:32 +0000 (19:53 +0200)]
Generate method entries for ext/session and ext/reflection
Closes GH-5376
Máté Kocsis [Sat, 11 Apr 2020 20:01:51 +0000 (22:01 +0200)]
Generate method entries for ext/dom
Closes GH-5374
George Peter Banyard [Sun, 12 Apr 2020 19:10:03 +0000 (21:10 +0200)]
Fix [-Wempty-body] compiler warning in Phar extension
George Peter Banyard [Sun, 12 Apr 2020 17:34:05 +0000 (19:34 +0200)]
Adapt assertion as mbfl_strwidth returns a size_t
Máté Kocsis [Sat, 11 Apr 2020 23:49:13 +0000 (01:49 +0200)]
Generate method entries for ext/xsl
Closes GH-5372
Máté Kocsis [Sat, 11 Apr 2020 22:25:33 +0000 (00:25 +0200)]
Fix nullable types in PHPDoc
Tyson Andre [Sat, 11 Apr 2020 20:52:47 +0000 (16:52 -0400)]
Fix an undefined class error running gen_stub in php8
For whatever reason, php 8 would not have loaded the subsequent classes when
running `php build/gen_stub.php path/to/filename.php`.
I assume it didn't load the classes immediately because there's a possibility
the code before it would throw.
(Probably because __toString was added recently and prevents early binding)
Also, fix a typo
Closes GH-5369
Máté Kocsis [Sat, 11 Apr 2020 12:13:11 +0000 (14:13 +0200)]
Lowercase NULL to null in stubs
Máté Kocsis [Sat, 11 Apr 2020 11:27:04 +0000 (13:27 +0200)]
Generate method entries from stubs for a couple of extensions
Closes GH-5368
Máté Kocsis [Sat, 11 Apr 2020 08:23:51 +0000 (10:23 +0200)]
Add missing visibility modifiers in stubs
Máté Kocsis [Thu, 9 Apr 2020 09:27:20 +0000 (11:27 +0200)]
Add support for generating method entries from stubs
Closes GH-5363
Máté Kocsis [Thu, 9 Apr 2020 07:46:44 +0000 (09:46 +0200)]
Improve the default value format in incompatible signature error messages
Closes GH-5361
Máté Kocsis [Fri, 10 Apr 2020 16:04:17 +0000 (18:04 +0200)]
Fix the default value of the $length parameter of grapheme_substr()
Máté Kocsis [Fri, 10 Apr 2020 16:03:20 +0000 (18:03 +0200)]
Fix default value of the $class_name parameter of mysqli_fetch_object()
Máté Kocsis [Fri, 10 Apr 2020 15:39:21 +0000 (17:39 +0200)]
Fix the default value of the $flags parameter of mysqli_begin_transaction()
Máté Kocsis [Fri, 10 Apr 2020 15:30:30 +0000 (17:30 +0200)]
Add missing parameter to the stub of mysqli_real_connect
George Peter Banyard [Fri, 10 Apr 2020 15:54:59 +0000 (17:54 +0200)]
Refactor and remove dead code in mb_ereg(i)_replace
We do not support the 'e' option anymore.
Merged together code which would emit an error if this option is present.
This also makes it clearer that the whole branch in the replacement section supporting this option is never hit, thus removed.
Máté Kocsis [Fri, 10 Apr 2020 15:17:12 +0000 (17:17 +0200)]
Fix the default parameter values of stream_socket_client()
$timeout and $flags were mixed up
Máté Kocsis [Fri, 10 Apr 2020 15:06:15 +0000 (17:06 +0200)]
Fix the default parameter values of session_set_save_handler()
Co-Authored-By: Christoph M. Becker <cmbecker69@gmx.de>
Dmitry Stogov [Fri, 10 Apr 2020 13:10:19 +0000 (16:10 +0300)]
Separate zend_jit_dump_lifetime_interval() function
Dmitry Stogov [Fri, 10 Apr 2020 11:42:26 +0000 (14:42 +0300)]
Fixed overflow handling
Dmitry Stogov [Thu, 9 Apr 2020 16:31:18 +0000 (19:31 +0300)]
Register allocator refactoring
Nikita Popov [Thu, 9 Apr 2020 14:50:46 +0000 (16:50 +0200)]
Mark $time argument of touch() as UNKNOWN as well
For some reason I thought that passing 0 is same as current time,
but that's not the case.
Nikita Popov [Thu, 9 Apr 2020 14:47:39 +0000 (16:47 +0200)]
Mark spl_autoload_register function arg as UNKNOWN
Not passing any parameters to this function has magic behavior.
Nikita Popov [Thu, 9 Apr 2020 14:42:26 +0000 (16:42 +0200)]
Fix mysqli_get_client_info() stub
The dummy link argument is not nullable.
Nikita Popov [Thu, 9 Apr 2020 14:21:48 +0000 (16:21 +0200)]
Mark fgets() argument as UNKNOWN
If no value is passed, this reads as much as necessary, not 1024
bytes.
Christoph M. Becker [Thu, 9 Apr 2020 12:51:55 +0000 (14:51 +0200)]
Change parameter default to always available value
`SIGTERM` is only defined in ext/pcntl, and as such never available on
Windows. Moving the constant to ext/standard does not make much sense,
because that parameter is actually unused on Windows. Therefore, we
use the magic number `15` instead, what is also done in the PHP manual.
Nikita Popov [Thu, 9 Apr 2020 14:06:37 +0000 (16:06 +0200)]
Make touch() $atime parameter UNKNOWN
The actual default here is $time, not 0.
Nikita Popov [Thu, 9 Apr 2020 14:01:44 +0000 (16:01 +0200)]
Mark rand/mt_rand args as UNKNOWN
The second argument should be mt_getrandmax(), not PHP_INT_MAX.
Additionally this function only accepts either zero or two arguments,
so err on the side of being conservative and mark both UNKNOWN.
Nikita Popov [Thu, 9 Apr 2020 13:52:05 +0000 (15:52 +0200)]
Mark array_walk $userdata arg as UNKNOWN
It makes a difference whether this arg is not passed or is null.
Nikita Popov [Thu, 9 Apr 2020 13:46:33 +0000 (15:46 +0200)]
Make stream_socket_enable_crypto() session stream nullable
Nikita Popov [Thu, 9 Apr 2020 13:36:29 +0000 (15:36 +0200)]
Accept null context in stream_socket_(client|server)
Nikita Popov [Thu, 9 Apr 2020 13:39:11 +0000 (15:39 +0200)]
Add Z_PARAM_RESOURCE_OR_NULL()
As a more explicit alternative to Z_PARAM_RESOURCE_EX(, 1, 0).
Nikita Popov [Thu, 9 Apr 2020 13:06:53 +0000 (15:06 +0200)]
Export the zend_string_concat3() API
Nikita Popov [Thu, 9 Apr 2020 12:55:55 +0000 (14:55 +0200)]
Export API for fetching internal func default
Make this functionality available outside reflection.
Christoph M. Becker [Thu, 9 Apr 2020 12:06:11 +0000 (14:06 +0200)]
Fix typo (UNKOWN -> UNKNOWN)
George Peter Banyard [Wed, 8 Apr 2020 19:05:59 +0000 (21:05 +0200)]
Convert if blocks to assertions and adapt stubs accordingly
George Peter Banyard [Mon, 6 Apr 2020 13:22:59 +0000 (15:22 +0200)]
Cache MBFL encoding for Oniguruma regex functions.
Closes GH-5355
Dmitry Stogov [Thu, 9 Apr 2020 11:33:29 +0000 (14:33 +0300)]
cleanup
Dmitry Stogov [Thu, 9 Apr 2020 10:38:40 +0000 (13:38 +0300)]
Don't get number of passed arguments from "fake" INIT frames