Gabriel Caruso
94d96b3c97
Update versions for PHP 8.0.1
2021-01-05 13:50:36 +00:00
Gabriel Caruso
701e423288
Update NEWS for PHP 8.0.1
2021-01-05 13:50:31 +00:00
Christoph M. Becker
b7f837381e
Fix #77423 : parse_url() will deliver a wrong host to user
...
To avoid that `parse_url()` returns an erroneous host, which would be
valid for `FILTER_VALIDATE_URL`, we make sure that only userinfo which
is valid according to RFC 3986 is treated as such.
For consistency with the existing url parsing code, we use ctype
functions, although that is not necessarily correct.
(cherry picked from commit b132da7f9d )
2021-01-05 10:30:56 -03:00
Gabriel Caruso
b4b4a75afc
Update NEWS for 8.0.2RC1
2020-12-15 13:01:18 +00:00
Gabriel Caruso
83e42955a3
Update NEWS for PHP 8.0.1RC1
2020-12-15 12:51:06 +00:00
Dmitry Stogov
de78786566
Optimize out result value of ASSIGN, ASSIGN_OP and INC/DEC opcodes, if possible.
2020-12-15 14:30:58 +03:00
Christoph M. Becker
c2fbab392c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #77322 : PharData::addEmptyDir('/') Possible integer overflow
2020-12-15 11:46:28 +01:00
Christoph M. Becker
305500a3b1
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
7.3.27 is next
2020-12-15 11:32:10 +01:00
Ayesh Karunaratne
724e241c9d
JIT: Update invalid opcache.jit INI value message to include "tracing" and "function" values
...
`opcache.jit` accepts `tracing` and `function` as aliases, but they were not mentioned in the start-up INI warning message.
This updates the error message to include all possible values.
Closes GH-6490.
2020-12-15 10:18:33 +01:00
Nikita Popov
b6d043aae2
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
IBM i PASE doesn't support ITIMER_PROF
2020-12-15 10:15:47 +01:00
David Carlier
1e6c7e776c
JIT disabled build fix.
...
Closes GH-6514.
2020-12-15 09:51:16 +01:00
Christoph M. Becker
2e974c8c81
Add Windows support for OCI 19
...
As requested by Christopher Jones.
2020-12-14 23:11:04 +01:00
Christoph M. Becker
15d9c42070
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Drop pdo_mysql_prepare_load_data.phpt
2020-12-14 18:27:53 +01:00
Dmitry Stogov
b3377028dc
Remove unused flag
2020-12-14 15:29:21 +03:00
Dmitry Stogov
66e390707c
Fixed bug #80506 (Immediate SIGSEGV upon ini_set("opcache.jit_debug", 1))
2020-12-14 15:28:03 +03:00
Dmitry Stogov
a12e7affd7
Fixed bug #80506 (Immediate SIGSEGV upon ini_set("opcache.jit_debug", 1))
2020-12-14 15:26:11 +03:00
Jakub Zelenka
d254078020
Merge branch 'PHP-7.4' into PHP-8.0
2020-12-13 18:42:11 +00:00
ekinhbayar
b0e858da8b
Remove bug41347.phpt as the error cases are already tested
...
Closes GH-6506.
2020-12-11 16:47:40 +01:00
Nikita Popov
ccb7f1c7d8
Fixed bug #79132
...
Following cmb's suggestion and replacing the counter with a check
against the bound_params HT, which ensures that both cannot go
out of sync.
2020-12-11 16:35:03 +01:00
Nikita Popov
7a89157f8c
PDO MySQL: Fix nextRowset() on libmysqlclient with native PS
...
The logic after next_result should match the one after execute.
This was the case for mysqlnd but not libmysqlclient, which used
the non-PS logic.
2020-12-11 14:48:44 +01:00
Nikita Popov
81f012a164
PDO MySQL: Don't skip two LOCAL_INFILE tests with libmysqlclient
2020-12-11 14:48:43 +01:00
Nikita Popov
e4e88bd7e3
PDO MySQL: Unskip bug_41125.phpt
...
This test was always skipped (leftover debug statement?)
Contrary to the comments in the test and the test expectation,
this actually works fine.
2020-12-11 13:04:20 +01:00
Nikita Popov
ad8eb116d8
Fixed bug #67004
...
Repeated execute() with native PS failed to release the previous
result set on libmysqlclient.
Move freeing the result set into a common location.
2020-12-11 12:52:59 +01:00
Nikita Popov
d6b4b82a38
PDO MySQL: Use stmt_next_result with libmysqlclient as well
...
libmysqlclient added this function in version 5.5, which happens
to be the minimum we support. If we have a prepared statement,
we should use it on both mysqlnd and libmysqlclient, even if the
handling afterwards is different.
This fixes error handling with native prepared statements.
2020-12-11 12:20:04 +01:00
Nikita Popov
4e51059d52
PDO MySQL: Fix libmysql option test
...
The fact that getAttribute() fails for various libmysqlclient-only
options is a known issue, and the test was taking that into account.
However, the change of the default error mode broke the handling.
We need to handle the exceptions now.
2020-12-11 12:20:02 +01:00
Nikita Popov
43741a3f26
Fixed bug #62889
...
Our minimum libmysqlclient version requirement is high enough
that we don't need to check for MYSQL_OPT_LOCAL_INFILE support.
However, the mysql_get_option() function seems to only be available
since 5.7 (though it's really hard to find any definitie information
on when MySQL introduced certain functions or changes...) so we
need to store the value of the flag locally to make it available
through getAttribute().
2020-12-11 11:25:36 +01:00
Nikita Popov
c927c831e6
PDO MySQL: Fix leak with libmysqlclient and multiple rowsets
...
stmt->column_count gets reset before the next_rowset handler is
invoked, so we need to fetch the value from the result set instead.
Arguably PDO should be separating the destruction of the previous
result set and the switch to the next result set more cleanly...
2020-12-11 10:51:14 +01:00
Dharman
54a63d91b8
Fix test cases for MariaDB
...
And remove unnecessary try-catch.
Closes GH-6505.
2020-12-11 09:53:20 +01:00
Nikita Popov
9e3ba775b7
Fixed bug #72368
...
Generate a param count mismatch error even if the query contains
no placeholders.
Additionally we shouldn't HANDLE errors from pdo_parse_params,
which are always reported via raise_impl_error. Doing so results
in duplicate error messages.
2020-12-10 16:53:08 +01:00
Nikita Popov
a5527577e7
Allow drivers to omit error code
...
And thus generate error messages that match what PDO emulation
would generate.
This fixes the error message regression from the previous commit.
2020-12-10 16:04:33 +01:00
Nikita Popov
15b51a215a
Fixed bug #79131
...
When a driver reports an error during EVT_ALLOC (and some over EVTs),
make sure we handle it as usual, i.e. warn or throw.
This requires some adjustments in PDO PgSQL to stop manually doing
this through an impl error.
Unfortunately the PDO PgSQL error messages regress because of this,
as they now include a completely arbitrary error code. There doesn't
seem to be an ability to skip it right now.
2020-12-10 15:53:23 +01:00
Dmitry Stogov
dde5572937
Eliminate some repeatable IS_REFERENCE checks
2020-12-10 14:45:54 +03:00
Nikita Popov
288581fade
Fixed bug #79872 by improving error message
...
The actual behavior here is correct, but the previous error
message was misleading, as neither fetchAll() nor buffered queries
would help in this situation. Instead it is necessary to consume
all rowsets, which can be done by either unsetting the statement
or calling closeCursor().
2020-12-10 11:46:29 +01:00
Nikita Popov
d63aedd173
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #76815
2020-12-10 11:24:19 +01:00
Nikita Popov
9b678bc4d5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #71145
2020-12-10 10:31:36 +01:00
twosee
26c7b9402d
EXTERN_C wrapping for GC buffer APIs
...
Closes GH-6502.
2020-12-10 17:15:19 +08:00
Nikita Popov
c95680d4b7
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Backport fix for bug #70066
2020-12-10 10:05:38 +01:00
Dmitry Stogov
e9f9e9f863
Perform early guard type check for result of FETCH_CONSTANT
2020-12-09 22:24:03 +03:00
Nikita Popov
106e7e4bca
Fixed bug #70066
...
If we fall back to emulated prepared statements, destroy S->stmt,
so the code doesn't get confused about which mode we're in.
2020-12-09 17:24:30 +01:00
Nikita Popov
fcfa7fd06b
Fixed bug #66878
...
Keep track of whether we have fully consumed all result sets,
either using nextRowset() calls or closeCursor() and skip the
attempt to consume remaining results sets during destruction in
that case.
Especiall if closeCursor() has been used, we really shouldn't
have this sort of cross-statement inference.
2020-12-09 16:38:22 +01:00
Nikita Popov
ef342b0730
Remove unnecessary more_results() checks
...
Just calling next_result() is sufficient.
2020-12-09 16:16:17 +01:00
Nikita Popov
a073b0218c
Add ifdef for mysqlnd only function
2020-12-09 16:16:17 +01:00
Nikita Popov
b9ea8d6b96
PDO MySQL: Extract common code for handling PS results
2020-12-09 15:28:16 +01:00
Nikita Popov
fb69c7752d
PDO MySQL: Use set_row_count() helper
2020-12-09 15:21:12 +01:00
Dmitry Stogov
8d268e8443
Fixed IS_32BIT/IS_SIGNED_32BIT mess
2020-12-09 17:16:54 +03:00
Nikita Popov
186b766368
PDO MySQL: Make sure nextRowset() works with partially consumed result
...
This was already working in all cases apart from native prepared
statements with unbuffered queries. In that case invoking
stmt_free_result() addresses the issue.
2020-12-09 14:46:49 +01:00
Nikita Popov
23193e89e4
PDO MySQL: Handle error during closeCursor()
2020-12-09 14:04:30 +01:00
Nikita Popov
71b5f1446e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #78154
2020-12-09 12:47:34 +01:00
Nikita Popov
18517e7a63
Fix stmt_free_result implementation and usage
...
Two bugs both affecting the bug_pecl_7976.phpt test ("works with
mysqlnd" haha):
* We should not change the connection state in stmt_free_result.
This makes mysql_stmt_free_result usable under mysqlnd and
not just libmysqlclient.
* If we call mysql_stmt_free_result, we still need to consume
any outstanding result sets.
2020-12-09 11:13:48 +01:00
Nikita Popov
9c0712d2cd
Make XFAILED test less broken
...
At least allow it to print some output rather than throw right
away...
2020-12-09 10:42:44 +01:00
Nikita Popov
311a77d08e
Handle changing column count in mysqlnd result binding
...
If the count changes from prepare to execute and result_bind is
alreadly allocated, reallocate it there.
This is something of a hack. It would be cleaner to require that
result bindings are registered only after execute, when the final
result set fields are known. But mysqli at least directly exposes
this to the user, so we have no guarantee.
2020-12-09 10:30:23 +01:00
Nikita Popov
2df09b9b64
PDO MySQL: Normalize handling of empty stored procedure result set
...
MySQL always returns a trailing empty result set for stored
procedure calls, which is used to convey status information.
The PDO MySQL implementation is presently confused about what to
do with it: If mysqlnd is used and native prepared statements are
used, this result set is skipped. In all other cases it is not
skipped. We also have quite a few XFAILed tests relating to this.
This patch normalizes (for PHP-8.0 only) the behavior towards
always retaining the empty result set. This is simply how MySQL
stored procedures work (some expletives omitted here) and we can't
distinguish this "useless" result set from an empty result of a
multi query. Multi queries are not a concern for native prepared
statements, as PDO does not allow them in that case, but they are
a concern for emulated prepared statements.
Closes GH-6497.
2020-12-08 17:01:56 +01:00
Nikita Popov
bfa69d27bc
Handle column count change in PDO MySQL
...
This has been fixed for PDO SQlite by GH-4313, however the same
issue also applied to PDO MySQL.
Move the column count setting function into the main PDO layer
(and export it) and then use it in both PDO SQLite and PDO MySQL.
2020-12-08 16:41:35 +01:00
Nikita Popov
713ef8511b
Enable XFAILed test
...
This one had a rather scary XFAIL message, but seems to work just
fine...
2020-12-08 16:03:50 +01:00
Christoph M. Becker
fb4bc0f9e5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #48725 : Support for flushing in zlib stream
2020-12-08 12:24:49 +01:00
Christoph M. Becker
d6ae0f010e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #77069 : stream filter loses final block of data
2020-12-08 11:49:28 +01:00
Christoph M. Becker
c3734f9ae1
ldap_exop_whoami() does not return TRUE
...
Closes GH-6496.
2020-12-08 11:44:04 +01:00
Nikita Popov
bd72e4aa44
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #63185
2020-12-08 11:35:57 +01:00
Dmitry Stogov
db34491a62
Avoid unnecessary checks
2020-12-08 13:10:35 +03:00
Nikita Popov
2d467abc46
Fix another typed resource issue in unserialization
...
We also need to discard old entries in the ref_props HT when values
are overwritten.
We should really forbid these kinds of overwrites. I believe they
can only occur in manually crafted serialization strings, and
cause so many problems...
Fixes oss-fuzz #28257 .
2020-12-07 12:36:09 +01:00
Dmitry Stogov
7971602574
Fixed bug #80480 (Segmentation fault with JIT enabled)
2020-12-07 13:28:37 +03:00
Nikita Popov
9dc42b4114
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80458
2020-12-04 17:00:51 +01:00
Christoph M. Becker
b52db133df
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #75102 : `PharData` says invalid checksum for valid tar
2020-12-04 13:04:33 +01:00
Nikita Popov
77325c4448
Fix removal of type source during unserialization
...
Missed a check for info in this code. Add it, and add an assertion
in type source removal to make it easier to catch this issue.
Fixes oss-fuzz #28208 and #28257 .
2020-12-04 12:56:05 +01:00
George Peter Banyard
426fe2f20c
Standardize behaviour for int message number between functions
2020-12-03 17:43:08 +00:00
George Peter Banyard
e45cc31c41
Add tests for passing a UID instead of a message number
2020-12-03 16:38:22 +00:00
Nikita Popov
724ee93ce6
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Upload coverage data to codecov.io
2020-12-03 12:05:14 +01:00
Nikita Popov
1a1eeee716
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix mysqli_expire_password test for mariadb
2020-12-03 11:02:11 +01:00
Nikita Popov
98cccd304a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
fix mysqli_stmt_get_result_metadata_fetch_field test for mariadb
2020-12-03 10:45:27 +01:00
Dharman
261faa62da
Remove PHP 5 mysqli tests
...
These tests all require functions that no longer exist.
2020-12-03 10:42:46 +01:00
Dharman
53f7bddbeb
Fix typos in mysql tests
...
%d because of line endings on Windows
2020-12-03 10:42:39 +01:00
Nikita Popov
8d2a1c8966
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Backport fix for bug #78750
2020-12-03 10:22:21 +01:00
Christian Schneider
7bc7a80445
Make is_file() and friends return false when path contains 0-byte
...
These functions now return false silently:
is_writable, is_readable, is_executable, is_file, is_dir, is_link,
file_exists
These functions now throw a warning an return false (rather than
throwing a ValueError):
fileperms, fileinode, filesize, fileowner, filegroup, filetype,
fileatime, filemtime, filectime, lstat, stat
See also https://externals.io/message/112333 .
Closes GH-6478.
2020-12-03 09:43:15 +01:00
Christoph M. Becker
72cd5793be
Fix failing VirtualProtect() calls
...
Whenever JIT is disabled due to incompatibilities, we also need to set
`JIT_G(on)` to zero.
Closes GH-6470.
2020-12-02 16:51:50 +01:00
Nikita Popov
9dda22bd1e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80457
2020-12-02 11:29:41 +01:00
Nikita Popov
a89aaf6c38
Don't throw from imagecreatefromstring() with too short string
...
If the string is too short, we should treat this the same way as
an unrecognized image type. This function should be usable to
determine whether something is a valid image without doing any
checks beforehand.
2020-12-02 10:51:55 +01:00
Nikita Popov
7a61984a2b
Fixed bug #80462
2020-12-02 10:19:32 +01:00
George Peter Banyard
5aaffc8095
Backport IMAP test modernization to PHP-8.0 branch
...
Closes GH-6476
2020-12-01 16:38:08 +00:00
Christoph M. Becker
83cf4aa13a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #73809 : Phar Zip parse crash - mmap fail
2020-12-01 17:00:27 +01:00
Dmitry Stogov
44475e70e2
Fixed bug #80447 (Strange out of memory error when running with JIT)
2020-12-01 16:46:41 +03:00
Dmitry Stogov
1674c96c0b
Bug #80447 (Strange out of memory error when running with JIT)
2020-12-01 16:43:05 +03:00
Dmitry Stogov
8ad2b59e12
Disable stack reuse optimization for x86 PIC code. It may clobber local variable used for Global Offset Table.
2020-12-01 15:20:06 +03:00
Nikita Popov
f06afc434a
Don't use scope when validating Attribute
...
This is not safe to do at this point. Even if we made it safe,
we'd see inconsistencies due to a partially compiled class.
Fixes oss-fuzz #28129 .
2020-12-01 11:49:27 +01:00
Nikita Popov
5dfec886d6
Fix use after free with file cache and arena allocated strings
2020-12-01 11:31:23 +01:00
Nikita Popov
648cda6c9f
Don't mark cpu_supports functions as always inline
...
The use of no-sanitize may result in an inlining failure, which
will be promoted into a compile error by always-inline. Use a
normal inlining hint without enforcing it.
2020-12-01 10:22:36 +01:00
Dmitry Stogov
4959c60524
Fixed incorrect "skipif.inc" include
2020-12-01 11:34:09 +03:00
Dmitry Stogov
31eafedf2e
Skip test if JIT is not available
2020-12-01 09:58:33 +03:00
Christoph M. Becker
f1d11c118d
Fix #62004 : SplFileObject: fgets after seek returns wrong line
...
As it is, `::seek(0)` sets the file pointer to the beginning of the
file, but `::seek($n)` where `$n > 0` sets the file pointer to the
beginning of the following line, having line `$n` already read into the
line buffer. This is pretty inconsistent; we fix it by always seeking
to the beginning of the line.
We also add a test case for the duplicate bug #46569 .
Closes GH-6434.
2020-11-30 16:03:37 +01:00
Dmitry Stogov
841b00f641
Preallocate stack space for JIT in execute_ex() to eliminate JIT prologue/epilogue.
2020-11-30 17:56:08 +03:00
Dmitry Stogov
5f36d0497f
Fixed "may be used uninitialized" compilation warnings
2020-11-30 17:46:43 +03:00
Christoph M. Becker
57463cf78b
Drop all JIT related XFAILS from phpdbg test suite
...
phpdbg now disables JIT, so these cause XFAIL warnings.
2020-11-30 15:24:15 +01:00
Nikita Popov
32cd5a1bc8
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Next attempt to fix bug #80368
2020-11-30 15:17:27 +01:00
George Peter Banyard
0076b47326
Fix Bug #80438 : imap_msgno() incorrectly warns and return false on valid UIDs in PHP 8.0.0
...
Checking for a valid Unique ID (UID) cannot use the convenience macro as they might
be larger than the message number which has for maximum value the total number of
current messages available in the mailbox.
2020-11-30 14:08:31 +00:00
George Peter Banyard
a55402d07c
Rename XmlParser to XMLParser for consistency with XMLWriter/XMLReader
2020-11-30 14:08:31 +00:00
Nikita Popov
24a19cc232
Suppress stream errors in mysqlnd
...
mysqlnd currently sets error_reporting=0 to suppress errors while
writing to streams. Unfortunately these errors are still visible
to userland error handlers, which is a source of confusion.
See for example https://bugs.php.net/bug.php?id=80412 .
Instead add a stream flag that suppresses the emission of
read/write errors in the first place, and set it in mysqlnd.
I think it might be useful to have this option for userland as
well in the future, but for now this is just an internal
mechanism.
Closes GH-6458.
2020-11-30 15:06:28 +01:00
Dmitry Stogov
a0baa09b99
Hide phpdbg/JIT incompatibility macro (JIT is disabled for phpdbg)
2020-11-30 16:42:17 +03:00
Nikita Popov
4643c0aac5
Add additional entries to unserialize corpus
...
These are useful to seed typed property fuzzing.
2020-11-30 14:32:07 +01:00
Nikita Popov
ed9532cff0
Fix another ref source management bug in unserialize
...
When we overwrite an existing property during unserialization,
we also have to drop the ref source from it.
2020-11-30 14:23:54 +01:00
Christoph M. Becker
666833b238
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #76813 : Access violation near NULL on source operand
2020-11-30 12:33:13 +01:00
Dmitry Stogov
d5a82e2c4e
Disable JIT with incompatible third-party extensions
2020-11-30 13:58:34 +03:00
Nikita Popov
15073d8e1d
Fixed bug #80437
...
Only chmod if the file has been created.
2020-11-30 11:40:46 +01:00
Nikita Popov
fdb05b92bf
Only replace IN_ARRAY result type for JMPZ/JMPNZ
...
Replacing the result type in the general case is dangerous,
because not all opcodes support both VAR and TMP. One common case
is the in_array() result being passed to SEND_VAR, which would
have to be changed to SEND_VAL.
Rather than complicating this logic, reduce the scope to only
doing the type replacement for JMPZ and JMPNZ. The only reason
we're doing this in the first place is to enable the smart branch
optimization, so we can limit it to the relevant opcodes. Replacing
the result type may be marginally useful in other cases as well
(as it may avoid reference checks), but not worth the bother.
2020-11-30 11:18:21 +01:00
Nikita Popov
e77ac88a44
Use ephemeral ports in mcast_ipv*_recv.phpt
2020-11-30 09:49:39 +01:00
Christoph M. Becker
44ccccdfb8
tidy::repairFile() and ::repairString() return string|false
2020-11-30 00:29:10 +01:00
Nikita Popov
5b3809e942
Respect strict_types during sccp function call evaluation
...
Similar to what we do with attributes, add a dummy call frame
on which we can set the strict_types flag.
2020-11-27 20:24:00 +01:00
Nikita Popov
0ce9b5f755
Don't check for throwing calls in sccp function evaluation
...
We only need to reject functions that could warn (or have runtime
dependent behavior). If a function can throw in some cases, just
let it and discard the result.
2020-11-27 17:49:51 +01:00
Nikita Popov
a505fc627e
Fix handling of sccp exceptions
...
We should clear the exception *before* we destroy the execute_data.
Add a variation of the test that indirects through another file,
and would crash otherwise.
2020-11-27 17:44:30 +01:00
Jakub Zelenka
a87d620543
Merge branch 'PHP-7.4' into PHP-8.0
2020-11-27 16:35:16 +00:00
Nikita Popov
08919578ca
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix build for non-x86
2020-11-27 17:04:50 +01:00
Nikita Popov
e5aae35855
Handle exceptions during SCCP function evaluation
...
Easier to handle them than to ensure they can't happen in the
first place.
2020-11-27 17:00:12 +01:00
Nikita Popov
4f3cf983dc
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix AVX detection
2020-11-27 14:49:45 +01:00
Nikita Popov
8b281e5b6b
Only use travis for cron jobs
...
Our primary CI has been Azure Pipelines for a while now already.
Travis was primarily retained as a) a fast feedback builder and
b) to test architectures not available elsewhere.
Due to Travis CI open source policy changes, Travis is no longer
useful as a fast feedback builder. As such, only use it for cron
job builds.
2020-11-27 14:15:34 +01:00
Nikita Popov
8e25cf26af
Make sure zend_cpu_supports_pclmul() is always defined
...
If __builtin_cpu_supports() is available, but doesn't have support
for pclmul, the function would end up not being defined at all.
2020-11-27 12:22:03 +01:00
Christoph M. Becker
bcefbf8602
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix mysqli_get_client_stats test
2020-11-27 11:51:30 +01:00
Nikita Popov
2772f7c3ad
Avoid direct calls to zend_cpu_supports()
...
While the use of zend_cpu_supports_*() is only strictly necessary
inside ifunc resolvers, where the cpu state has not been initialized
yet, we should prefer the compiler builtins in all cases.
2020-11-27 11:18:10 +01:00
Nikita Popov
f35b194029
Assert that cpuinfo is initialized before use
...
And fix some incorrect indentation.
2020-11-27 11:14:07 +01:00
Nikita Popov
4a7ebb6d83
Move avx check into a macro
2020-11-27 11:06:05 +01:00
Nikita Popov
f4e1768e21
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80368
2020-11-27 10:58:34 +01:00
Nikita Popov
48ff654fb9
Fixed bug #80433
...
Use ZEND_STRTOL to allow leading zeros in opcache.jit option.
2020-11-27 10:51:57 +01:00
Nikita Popov
c61390cfb4
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80425
2020-11-27 10:03:21 +01:00
Christopher Jones
a9c44d1b5a
Update PECL package release date
2020-11-27 10:17:37 +11:00
Christoph M. Becker
49e1ed1941
Fix bug number
2020-11-26 23:34:35 +01:00
Dmitry Stogov
3697648be5
Eliminate deafd stores
2020-11-26 21:05:07 +03:00
Nikita Popov
6132389d1c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug #80402 : Don't strip -lpthread
2020-11-26 11:56:00 +01:00
Sara Golemon
c65f0c7aca
Remove -dev from ZEND_VERSION
2020-11-26 02:19:51 +00:00
Nikita Popov
306555e11d
Add UPGRADING note for PDO::inTransaction()
...
[ci skip]
2020-11-25 17:28:23 +01:00
Nikita Popov
217f247bb5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80411
2020-11-25 17:24:49 +01:00
Nikita Popov
f5b93626a6
Fix unserialization ref source management, again
...
Handle one case the previous patch did not account for: If
unserialization of data fails, we should still register a ref
source.
Also add an extra test for a reference between two typed properties,
as this used to be handled incorrectly earlier.
2020-11-25 17:04:07 +01:00
Nikita Popov
518eb0ca2b
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed error reporting in mysqli_stmt::__construct
2020-11-25 16:29:00 +01:00
Nikita Popov
e3e6e1e59b
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Reindent more mysqli tests
2020-11-25 16:08:28 +01:00
Nikita Popov
367f8452c4
Fix phpt reindentation in tidy script
...
This was missing adjacent SKIPIF/FILE/CLEAN sections.
2020-11-25 16:07:56 +01:00
Nikita Popov
308050e94b
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Reindent ext/mysqli tests
2020-11-25 15:58:21 +01:00
Nikita Popov
373fd61a51
Allow running tidy.php on specific directory
2020-11-25 15:54:26 +01:00
Nikita Popov
7a3f25e370
Fix ref source management during unserialization
...
Only register the slot for adding ref sources later if we didn't
immediately register one. Also avoids leaking a ref source if
it is added early and the assignment fails.
Fixes oss-fuzz #27628 .
2020-11-25 12:25:07 +01:00
Calvin Buckley
e074e029ee
sockets: Fix variable/macro name collision on AIX
...
The name "rem_size" is used by a macro in a system header on AIX,
specifically `sys/xmem.h`. Without changing the name, you get the
name mangled like so:
```
In file included from /usr/include/sys/uio.h:92:0,
from /QOpenSys/pkgs/lib/gcc/powerpc-ibm-aix6.1.0.0/6.3.0/include-fixed-7.1/sys/socket.h:83,
from /usr/include/sys/syslog.h:151,
from /usr/include/syslog.h:29,
from /home/calvin/rpmbuild/BUILD/php-8.0.0RC5/main/php_syslog.h:27,
from /home/calvin/rpmbuild/BUILD/php-8.0.0RC5/main/php.h:318,
from /home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c:17:
/home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c: In function 'zif_socket_cmsg_space':
/home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c:298:10: error: expected '=', ',', ';', 'asm' or '__attribute__' before '.' token
size_t rem_size = ZEND_LONG_MAX - entry->size;
^
/home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c:298:10: error: expected expression before '.' token
/home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c:299:18: error: 'u2' undeclared (first use in this function)
size_t n_max = rem_size / entry->var_el_size;
^
/home/calvin/rpmbuild/BUILD/php-8.0.0RC5/ext/sockets/sendrecvmsg.c:299:18: note: each undeclared identifier is reported only once for each function it appears in
```
...because of the declaration in `sys/xmem.h`:
```
```
This just renames the variable so that it won't trip on this
definition. Tested to fix the build on IBM i PASE.
Closes GH-6453.
2020-11-25 11:54:40 +01:00
Nikita Popov
4633e70ab1
Fixed bug #80377
...
Make sure the $PHP_THREAD_SAFETY variable is always available
when configuring extensions. It was previously available for
phpized extensions, but for in-tree builds it was being set
too late.
Then, use $PHP_THREAD_SAFETY instead of $enable_zts to check for
ZTS in bundled extensions, which makes sure these checks also
work for phpize builds.
2020-11-25 11:47:05 +01:00
Christopher Jones
37f96d990c
Fix test diff
2020-11-25 16:42:12 +11:00
Dmitry Stogov
cb399d0410
Use diferent temporary register (%r0 may keep a method address)
2020-11-25 03:49:42 +03:00
Dmitry Stogov
7fc2a3e15e
Revert "Fixed bug #80377 "
...
This reverts commit fc26ad9b12 .
2020-11-25 01:10:26 +03:00
Florian Engelhardt
cdd5ec7a3c
[ci skip] Fix misspelled method names
...
Closes GH-6452.
2020-11-24 18:18:40 +01:00
Nikita Popov
70f59b3416
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix usage of casted string in ReflectionParameter ctor
2020-11-24 16:42:52 +01:00
Nikita Popov
fc26ad9b12
Fixed bug #80377
...
Use $PHP_THREAD_SAFETY instead of $enable_zts to check for ZTS.
This variable is also available for phpize builds, while enable_zts
is only present for in-tree builds.
2020-11-24 15:52:41 +01:00
Nikita Popov
ae6e56fb98
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80393
2020-11-24 15:27:43 +01:00
Christoph M. Becker
bf244757ee
Allow PHP_CURL_APIs to be imported by DLLs
...
Closes GH-6438.
2020-11-24 14:12:39 +01:00
Christoph M. Becker
e589609b4c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #77961 : finfo_open crafted magic parsing SIGABRT
2020-11-24 14:06:53 +01:00
Christoph M. Becker
337031abbd
[ci skip] Update generate_patch.sh
...
This has apparently been forgotten when updating to libmagic 5.39.
2020-11-24 13:38:31 +01:00
Christoph M. Becker
deb8b8190e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80366 : Return Value of zend_fstat() not Checked
2020-11-24 13:10:35 +01:00
Nikita Popov
b91bf22333
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80362 : Running dtrace scripts can cause php to crash
2020-11-24 13:02:08 +01:00
Nikita Popov
03f8bccaf5
Fixed bug #80404
...
For a division like [1..1]/[2..2] produce [0..1] as a result, which
would be the integer envelope of the floating-point result.
The implementation is pretty ugly (we're now taking min/max across
eight values...) but I couldn't come up with a more elegant way
to handle this that doesn't make things a lot more complex (the
division sign handling is the annoying issue here).
2020-11-24 11:35:44 +01:00
Nikita Popov
912cb8b8b5
Fixed bug #80391
...
Iterable was not considered a subtype of array|object, and thus
also not a subtype of mixed.
2020-11-24 10:09:28 +01:00
Benjamin Morel
4bbb98c24f
Fix PDOStatement::fetchObject() stub
...
Closes GH-6449.
2020-11-24 09:49:30 +01:00
Christopher Jones
68d5878097
Sync README with package.xml
2020-11-24 10:45:48 +11:00
Christoph M. Becker
807775b641
Fix COMPersistHelper::__construct() stub
...
`$variant` is optional.
2020-11-24 00:23:29 +01:00
Remi Collet
ce18899b44
zip extension is 1.19.2
2020-11-23 15:59:15 +01:00
Dmitry Stogov
337d2af6ca
zend_jit_trace_stack_frame.stack can't be NULL
2020-11-23 16:19:22 +03:00
Dmitry Stogov
586ccfdfd5
Fixed use-after-free in PHPUnit tests
2020-11-23 14:42:38 +03:00
Dmitry Stogov
4cf3da7383
Keep value of register before possible side exit
2020-11-23 12:07:05 +03:00
Christoph M. Becker
9b1c02c2df
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #77594 : ob_tidyhandler is never reset
2020-11-22 14:04:59 +01:00
Máté Kocsis
40ebfd6730
Remove some incorrect mixed parameter types
2020-11-21 23:17:35 +01:00
Nikita Popov
0dac69c059
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix typos in php.ini files
2020-11-20 16:50:52 +01:00
jrfnl
860f46e2f5
UPGRADING: (real) cast has been removed
...
.. but the removal wasn't mentioned in the `UPGRADING` docs yet.
Ref:
* https://github.com/php/php-src/pull/5220
* https://github.com/php/php-src/commit/c9db32271a8083721582c5ec1dd09c4d4f562c74
Closes GH-6440.
[ci-skip]
2020-11-20 16:48:32 +01:00
Nikita Popov
fa67864c13
Use MIN/MAX when dumping RANGE[]
...
It's very common that one of the bounds is LONG_MIN or LONG_MAX.
Dump them as MIN/MAX instead of the int representation in that
case, as it makes the dump less noisy.
2020-11-20 16:47:46 +01:00
Dmitry Stogov
c0d1dbcb43
Fixed incorrect TRACE_FRAME_MASK_NESTED flag setting
2020-11-20 18:22:21 +03:00
Dmitry Stogov
c8df28d276
Fixed 32-bit JIT
2020-11-20 15:12:30 +03:00
Christoph M. Becker
c7343510e4
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #72964 : White space not unfolded for CC/Bcc headers
2020-11-19 19:26:56 +01:00
Christoph M. Becker
2e27bb8682
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80345 : PHPIZE configuration has outdated PHP_RELEASE_VERSION
2020-11-19 16:26:45 +01:00
Sara Golemon
3c44e9c080
8.0 branch should be prepping for 8.0.1
2020-11-19 14:37:44 +00:00
Sara Golemon
85c6e9b469
Prepare NEWS file for GA
2020-11-19 14:33:56 +00:00
Dmitry Stogov
069f9cbaa5
Added missing deoptimization code for trampoline handling
2020-11-19 12:32:36 +03:00
Nikita Popov
46b9e0c874
Export zend_is_callable_at_frame
...
Export the zend_is_callable_impl() function as
zend_is_callable_at_frame() for use by extension. As twose pointed
out, an extension may want to retrieve fcc for a private method.
2020-11-19 10:29:32 +01:00
Nikita Popov
06c4a501fd
Fix curl_multi_getcontent() parameter name
...
While the function name starts with curl_multi_*, the function
actually accepts a CurlHandle. As such, it should also use just
$handle as the parameter name.
Closes GH-6435.
2020-11-19 10:17:17 +01:00
Nikita Popov
bbc0dd402a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Short-circuit get_gc for currently running generator
2020-11-18 12:46:12 +01:00
Dmitry Stogov
feed041fc8
Fixed register clobbering
2020-11-18 10:22:25 +03:00
Dmitry Stogov
9841e8e411
Fixed trampoline handling
2020-11-17 23:56:05 +03:00
Gabriel Caruso
fd75589b1f
Update NEWS for 8.0.0
2020-11-17 16:34:55 +00:00
Gabriel Caruso
0a9b688bee
Update NEWS for PHP 8.0.0RC5
2020-11-17 16:23:11 +00:00
Dmitry Stogov
e364af91b5
Fixed allocated register clobbering
2020-11-17 18:31:14 +03:00
Dmitry Stogov
1523733bc4
Fixed false pasitive ASAN NULL pointer dereference warning
2020-11-17 16:23:30 +03:00
Nikita Popov
f4a600be04
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80312 : change default engine from MyISAM to InnoDB in tests
2020-11-17 13:16:17 +01:00
Benjamin Eberlei
1727d96d0e
Fixed bug #80370 : Segmentation fault reflecting attributes of dynamic property
...
Closes GH-6428.
2020-11-17 10:54:27 +01:00
Sammy Kaye Powers
58d41b8c4f
Provide unused retvals to observers
...
Make sure that the return value is available to observers, even if
it is not used by the caller.
Closes GH-6422.
2020-11-17 10:28:47 +01:00
Nikita Popov
9cfb5261e4
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix incorrectly optimized out live range
2020-11-17 10:20:23 +01:00
Sammy Kaye Powers
0425a6697a
Fire open observer end handlers after a zend_bailout
...
Closes GH-6377
2020-11-16 15:12:57 -08:00
Dmitry Stogov
3fb1b0862c
Fixed MAY_BE_INDIRECT inference
2020-11-16 18:17:05 +03:00
Christoph M. Becker
c351768e4f
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #74558 : Can't rebind closure returned by Closure::fromCallable()
2020-11-16 14:34:28 +01:00
Dmitry Stogov
e3c63de05b
Fixed alias handling
2020-11-16 16:11:25 +03:00
Dmitry Stogov
eb6d496a93
Fixed reference-counting
2020-11-16 14:51:55 +03:00
Dmitry Stogov
edf5c1901f
Fixed incorrect FETCH_THIS optimization
2020-11-16 14:51:39 +03:00
Dmitry Stogov
bd321df479
Fixed inconsistent VM stack state
2020-11-16 13:19:44 +03:00
Dmitry Stogov
64dc79f906
Trampoline cleanup
2020-11-16 12:05:45 +03:00
Pavel Djundik
7bbed18086
[ci skip] Add note that imagedestroy() no longer has an effect
...
Closes GH-6427.
2020-11-14 15:18:20 +01:00
Nikita Popov
f5be0e5110
Inline pair production in json parser
...
Having this as a separate production has a noticeable performance
impact, and doesn't really make things clearer either.
2020-11-13 14:56:29 +01:00
Christoph M. Becker
a08a2b48b4
Strip trailing line breaks and periods from Windows error messages
...
PHP error messages should not contain line breaks, so we remove these
from the Windows specific error messages. We also remove trailing
periods for the same reason.
Closes GH-6423.
2020-11-12 16:42:28 +01:00
Nikita Popov
34dd032e4e
Don't assume libmysqlclient library name
...
By simply dropping the additional checks, in line with the general
guideline of trusting the output of config scripts (this should
be migrated to pkg-config though).
Also drop the code for manually adding -z if mysql_config does not
-- that's not our problem.
2020-11-12 15:11:56 +01:00
Nikita Popov
2875d0f920
Fix memory leak when user filter onCreate returns false
2020-11-12 12:18:33 +01:00
Nikita Popov
3d2819e491
Fix memory leak with bcsqrt on number 0<X<1
2020-11-12 11:37:54 +01:00
Nikita Popov
d033d5c07a
Fix reflection getDefaultValue() with user arg info
...
The default value is part of the op_array in that case, but we have
no way to access it. Fail gracefully.
2020-11-12 11:02:04 +01:00
Dmitry Stogov
9acebe14df
Fixed incorrectly eliminated type store
2020-11-11 20:13:58 +03:00
Dmitry Stogov
03e7854381
Remove assertion
2020-11-11 18:34:16 +03:00
Nikita Popov
d776c31a34
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Handle errors during next_result()
2020-11-11 16:03:10 +01:00
Dmitry Stogov
2d2d42b268
Fixed incorrect invariant guard motion
2020-11-11 17:34:46 +03:00
Dmitry Stogov
de359c00b4
Stop on fake frame
2020-11-11 14:54:54 +03:00
Dmitry Stogov
a0de82ad75
Fixed reference-counting propagation
2020-11-11 14:54:00 +03:00
Nikita Popov
800cf5a20f
Fix double free when socket_accept fails
2020-11-11 12:48:25 +01:00
Nikita Popov
b4a2a9662b
Retain reference to share handle from curl handle
...
Not keeping a reference will not result in use after free, because
curl protects against it, but it will result in a memory leak,
because curl_share_cleanup() will fail. We should make sure that
the share handle object stays alive as long as the curl handles
use it.
2020-11-11 11:56:03 +01:00
Dmitry Stogov
11c4821ba9
[Observer+JIT] Save opline before calling begin/end handlers
2020-11-11 13:50:53 +03:00
Dmitry Stogov
855d8fa68f
[Observer] Save opline before calling begin/end handlers
2020-11-11 13:06:55 +03:00
Nikita Popov
1aff51d421
Fix community job
...
Made a mistake while merging...
2020-11-11 09:28:20 +01:00
Derick Rethans
9b627c6c27
Merge branch 'PHP-7.4' into PHP-8.0
2020-11-10 17:58:38 +00:00
Gabriel Caruso
822e1660c7
Update NEWS for 8.0.0
2020-11-10 11:02:35 +00:00
Gabriel Caruso
343b53ad1c
Update NEWS for PHP 8.0.0RC4
2020-11-10 10:52:13 +00:00
Nikita Popov
9f1dba8b71
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Add integration test for symfony preloading
2020-11-10 11:45:59 +01:00
Christoph M. Becker
25e3d7bbe0
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
7.3.26 is next
2020-11-10 11:11:06 +01:00
Nikita Popov
523dd9a2d9
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix phi use chain management when renaming variable
2020-11-09 17:08:38 +01:00
Nikita Popov
975735c027
Use true/false instead of TRUE/FALSE in intl
...
And drop the U_DEFINE_TRUE_AND_FALSE flag.
2020-11-09 14:44:11 +01:00
Nikita Popov
4cd393453a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80310 : Support for icu4c 68.1.
2020-11-09 14:35:40 +01:00
Dharman
114613dc5f
Remove embedded property from mysqli_driver
...
All other leftovers of this feature have been dropped in PHP 8,
so we should remove the property as well.
Closes GH-6407.
2020-11-09 11:00:16 +01:00
Nikita Popov
6fb3d92525
Fixed bug #80334
...
If assert() was called with named args, add description as named
arg as well.
2020-11-09 10:19:32 +01:00
Dmitry Stogov
4bbe55b250
Fixed missaligned access
2020-11-09 11:50:26 +03:00
Nikita Popov
5df461bc91
Skip preload test under asan
...
Just like the other preload tests with startup failures, this may
cause leaks.
2020-11-09 09:46:48 +01:00
Nikita Popov
b1019f46ed
Rename PhpToken::getAll() to PhpToken::tokenize()
...
See https://externals.io/message/112189 .
Fixes bug #80328 .
2020-11-09 09:40:31 +01:00
Derick Rethans
fe2cbcac70
Merge branch 'PHP-7.4' into PHP-8.0
2020-11-07 18:49:00 +00:00
Christoph M. Becker
49ca191667
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Split tests for compatibility with ICU 68.1
2020-11-06 17:44:51 +01:00
Christoph M. Becker
d65a520b1d
Raise E_WARNING on PHP related errors
...
If Zip operations fails due to PHP error conditions before libzip even
has been called, there is no meaningful indication what failed; the
functions just return false, and the Zip status indicated that no error
did occur. Therefore we raise `E_WARNING` in these cases.
Closes GH-6356.
2020-11-06 11:00:43 +01:00
Dmitry Stogov
98e4f9466d
Move stack overflow checks out of the loops
2020-11-06 12:09:56 +03:00
Remi Collet
e2509cf98a
report about ZSTD compression availability
2020-11-06 09:58:08 +01:00
Remi Collet
8d7ca472e5
only display libzip both headers/library versions if they differ
2020-11-06 09:58:05 +01:00
Nikita Popov
2d894916c5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Backport preloading trait fixup fixes
2020-11-05 16:37:45 +01:00
Dmitry Stogov
ff91800602
Fixed incorrect invariant guard motion
2020-11-05 18:32:00 +03:00
Nikita Popov
2effbfd871
Fixup trait methods even if no traits are used
...
Trait methods might be non-trivially inherited, in which case we
may have to perform fixup in classes that do not directly use any
traits.
2020-11-05 13:15:32 +01:00
Nikita Popov
33969c2252
Fix multiple trait fixup
...
If a trait method is inherited, preloading trait fixup might be
performed on it multiple times. Usually this is fine, because
the opcodes pointer will have already been updated, and will thus
not be found in the xlat table.
However, it can happen that the new opcodes pointer is the same
as one of the old opcodes pointers, if the pointer has been reused
by the allocator. In this case we will look up the wrong op array
and overwrite the trait method with an unrelated trait method.
We fix this by indexing the xlat table not by the opcodes pointer,
but by the refcount pointer. The refcount pointer is not changed
during optimization, and accurately represents which op arrays
should use the same opcodes.
Fixes bug #80307 . The test case does not reproduce the bug, because
this depends on a lot of "luck" with the allocator. The test case
merely illustrates a case where orig_op_array would have been NULL
in the original code.
2020-11-05 12:04:39 +01:00
Nikita Popov
7c7c6b0d73
End output handlers in preload shutdown
...
Same as in php_request_shutdown(), we need to end any active
output handlers, as these may no longer be safe to execute
lateron.
2020-11-04 16:05:24 +01:00
Nikita Popov
73321bc300
getlastmod() can return false
...
At least this can happen during preloading.
2020-11-04 15:53:08 +01:00
Nikita Popov
670fe594b9
Fix static variable in methods inheritance during preloading
...
This is now "bug compatible" with the normal behavior, and more
imporantly, does not crash :)
2020-11-04 15:42:52 +01:00
Christoph M. Becker
b8f2531ff0
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80266 : parse_url silently drops port number 0
2020-11-04 14:57:17 +01:00
Nikita Popov
7794925ba4
Assert that references are not persisted
...
There should not be any need to persist references, and it's unlikely
that persisting a reference will behave correctly at runtime, because
we don't have a concept of an immutable reference.
2020-11-04 14:51:44 +01:00
Nikita Popov
57b0e5a045
Don't xfail method_static_var.phpt
...
Let's test the current behavior here. It might not be right, but
it's long-standing behavior.
Nearly missed an assertion failure here because the test was
XFAILed...
2020-11-04 12:30:41 +01:00
Nikita Popov
9ed2f4898b
Don't disable opcache for generic tests
...
Even if the original issue only reproduces without opcache, we
should still allow running them with and without opcache.
2020-11-04 11:12:12 +01:00
Nikita Popov
c6563dddac
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix dynamic function definition in preload script
2020-11-04 10:55:59 +01:00
Nikita Popov
54668a449e
Don't disable early binding during preloading script
...
We should only disable early binding during the opcache_compile_file()
calls, not inside the preloading script or anything it includes.
The right condition to check for is whether we compile the file
without execution, as declaring classes is "execution".
2020-11-03 16:45:13 +01:00
Nikita Popov
b009573f4e
Report parse errors during preloading
2020-11-03 16:24:54 +01:00
Nikita Popov
9fd8e00f1a
Fix use of type copy ctor when importing trait properties
...
We shouldn't call the copy constructor inside the original type,
duh.
2020-11-03 15:29:18 +01:00
Nikita Popov
7e55317558
Allow unlinked classes when performing in_compilation variance check
...
As preloading runs in in_compilation mode, we also need to allow
use of unlinked classes in lookup_class().
2020-11-03 14:49:10 +01:00
Nikita Popov
ee934f8245
Fix variance checks on resolved union types
...
This is a bit annoying: When preloading is used, types might be
resolved during inheritance checks, so we need to deal with CE
types rather than just NAME types everywhere.
2020-11-03 14:19:15 +01:00
Nikita Popov
51b5f7d67d
Don't ignore internal classes during preloading
...
When preloading, it's fine to make use of internal class information,
as we do not support Windows. It is also necessary to allow proper
variance checks against internal classes.
2020-11-03 11:50:14 +01:00
Nikita Popov
14c42c6961
Fix persisting property info table with internal parent
...
If the property info comes from an internal parent, we won't have
an xlat entry for it. Leave it alone in that case.
2020-11-03 11:30:44 +01:00
Nikita Popov
6f2431860b
Preserve trait method alias name during preloading
2020-11-03 10:55:59 +01:00
Nikita Popov
53c417d81c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix another implicit function declaration in configure
2020-11-03 10:39:26 +01:00
Chris Brown
4d16d3cc38
Fix typo in UPGRADING
...
Closes GH-6395.
2020-11-03 09:35:02 +01:00
Bogdan Ungureanu
6d6fadeb0d
Improved error message for typed class properties with null as default value
...
Closes GH-6396.
2020-11-03 09:28:53 +01:00
Chris Brown
94938e4ee7
[ci skip] Fix small typo
...
`as` -> `was`
Closes GH-6394.
2020-11-02 18:11:13 +01:00
Nikita Popov
0571f09424
Rename opcache.jit_max_loops_unroll to opcache.jit_max_loop_unrolls
2020-11-02 12:25:21 +01:00
Christoph M. Becker
6fc2cab254
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #70461 : disable md5 code when it is not supported in net-snmp
2020-11-02 11:41:37 +01:00
Dharman
cf38a6f51f
Fix tests for MariaDB
...
Closes GH-6390.
2020-11-02 09:58:46 +01:00
Alex Dowad
526c624dc4
Fix test added in d44235acae
2020-10-30 22:11:27 +02:00
Alex Dowad
d44235acae
Convert numeric string array keys to integers correctly in JITted code
...
While fixing bugs in mbstring, one of my new test cases failed with a strange
error message stating: 'Warning: Undefined array key 1...', when clearly the
array key had been set properly.
GDB'd that sucker and found that JIT'd PHP code was calling directly into
`zend_hash_add_new` (which was not converting the numeric string key to an
integer properly). But where was that code coming from? I examined the disasm,
looked up symbols to figure out where call instructions were going, then grepped
the codebase for those function names. It soon became clear that the disasm I
was looking at was compiled from `zend_jit_fetch_dim_w_helper`.
2020-10-30 22:07:08 +02:00
Nikita Popov
904c1b6589
FIxed bug #80299
...
The must_wrap was leaking across iterations.
2020-10-30 17:23:18 +01:00
Nikita Popov
5958137dc5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix SSA integrity violation for type inference in dead code
2020-10-30 15:52:46 +01:00
Christoph M. Becker
72d9d9b88f
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug79177.phpt wrt. JIT
2020-10-30 15:49:48 +01:00
Nikita Popov
085e16c301
Fix signed integer overflow
...
Fixes oss-fuzz #26763 .
2020-10-30 12:38:27 +01:00
Nikita Popov
3bd3651bcc
Fixed bug #80290
...
Dropping the dtor arg args[3] rather than using STR_COPY: Since
PHP 8, we no longer support separation in call_user_function(),
so we also don't need to worry about things like arguments being
replaced with references.
2020-10-30 11:13:35 +01:00
Dmitry Stogov
b133183e35
Create TSSA loops for recursive call/return traces and move invariant type guards out of loops.
2020-10-30 13:08:31 +03:00
Nikita Popov
8957260094
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug #72413 : Segfault with get_result and PS cursors
2020-10-29 16:41:09 +01:00
Nikita Popov
1a7bcd9892
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Handle errors during PDO row fetch
2020-10-29 14:18:04 +01:00
Christoph M. Becker
489b5328c0
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix format specifier
2020-10-29 13:10:32 +01:00
Nikita Popov
ce7c2cc05d
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Report gone away error in one more place
2020-10-29 12:47:22 +01:00
Christoph M. Becker
9fdbc2a14a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
[ci skip] Fix NEWS order
2020-10-29 12:16:20 +01:00
Christoph M. Becker
9838eff68b
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #44618 : Fetching may rely on uninitialized data
2020-10-29 12:03:11 +01:00
Nikita Popov
d784c65cca
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Retain QUIT_SEND connection state
2020-10-29 10:39:58 +01:00
Nikita Popov
246b8b20b2
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #65825
2020-10-28 17:15:42 +01:00
Christoph M. Becker
d07f6753a0
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #79177 : FFI doesn't handle well PHP exceptions within callback
2020-10-28 13:49:23 +01:00
Nikita Popov
39be0df2ed
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #66528
2020-10-28 12:18:17 +01:00
Dmitry Stogov
6beb080a01
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed run-time binding of preloaded dynamically declared function
2020-10-28 13:51:17 +03:00
Nikita Popov
d928c58281
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Handle mysqli errors in more cases
Sync test with master
2020-10-28 11:37:37 +01:00
Nikita Popov
793bf12f8c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug #79375
2020-10-28 11:04:32 +01:00
Dmitry Stogov
2693f799be
Don't force rebuild of symbol table, when populating $http_response_header variable by the HTTP stream wrapper
2020-10-28 12:59:00 +03:00
Dmitry Stogov
47a56208f0
Fixed memory leak in Zend/tests/bug78999.phpt
2020-10-28 10:47:23 +03:00
Dmitry Stogov
e6b51ccc58
Fixed tracing JIT support for aliasses (Zend/tests/bug75420.13.phpt and ext/standard/tests/streams/bug60106.phpt)
2020-10-27 23:44:29 +03:00
Dmitry Stogov
43e493884c
Fixed support for named parameters (Zend/tests/named_params/references.phpt)
2020-10-27 16:35:24 +03:00
Gabriel Caruso
e86b2b9b17
Update NEWS for 8.0.0RC4
2020-10-27 12:25:17 +00:00
Gabriel Caruso
d68334c15b
Update NEWS for PHP 8.0.0RC3
2020-10-27 12:07:36 +00:00
Nikita Popov
d776d25a8e
Don't throw for out of bounds offsets in strspn()
...
Make strspn($str1, $str2, $offset, $length) behaviorally
equivalent to strspn(substr($str1, $offset, $length), $str2)
by not throwing for out of bounds offset.
There have been two reports that this change cause issues,
including bug #80285 .
2020-10-27 11:42:01 +01:00
Máté Kocsis
76e4bf3068
Parameter type and name fixes in ext/standard
...
Closes GH-6382
2020-10-27 11:27:25 +01:00
Dmitry Stogov
45e2b9a7dd
Fixed support for typed references
2020-10-27 12:59:35 +03:00
Nikita Popov
682357c5b4
Skip bug46024.phpt under asan
...
There is a legitimate leak here, but I don't think it's worthwhile
to fix it. It involves a process terminated while printing phpinfo.
2020-10-27 10:35:12 +01:00
Dmitry Stogov
b8a6717da6
Fixed tracing JIT for tests/classes/unset_properties.phpt
2020-10-27 10:30:38 +03:00
Dmitry Stogov
a17cec446a
Fixed memory leak
2020-10-27 01:20:22 +03:00
Sammy Kaye Powers
4a6932c076
Add missing observer tests
...
Closes GH-6378
2020-10-26 15:15:17 -07:00
Dmitry Stogov
ba525a68d9
Fixed register allocation
2020-10-26 21:48:47 +03:00
Dmitry Stogov
b7df636589
Fixed MAY_BE_INDIRECT inference.
2020-10-26 21:48:13 +03:00
Dmitry Stogov
9d3cc223b2
Better JIT support for aliases
2020-10-26 19:05:08 +03:00
Nikita Popov
7b9519a792
Fix inconsistency in PDO transaction state
...
This addresses an issue introduced by #4996 and reported in
https://bugs.php.net/bug.php?id=80260 .
Now that PDO::inTransaction() reports the real transaction state
of the connection, there may be a mismatch with PDOs internal
transaction state (in_tcx). This is compounded by the fact that
MySQL performs implicit commits for DDL queries.
This patch fixes the issue by making beginTransaction/commit/rollBack
work on the real transaction state provided by the driver as well
(or falling back to in_tcx if the driver does not support it).
This does mean that writing something like
$pdo->beginTransaction();
$pdo->exec('CREATE DATABASE ...');
$pdo->rollBack(); // <- illegal
will now result in an error, because the CREATE DATABASE already
committed the transaction. I believe this behavior is both correct
and desired -- otherwise, there is no indication that the code did
not behave correctly and the rollBack() was effectively ignored.
However, this is also a BC break.
Closes GH-6355.
2020-10-26 17:01:18 +01:00
Nikita Popov
6d3695a217
Deny serialization of finfo objects
...
The resulting objects were already unusable, make it error out
earlier.
2020-10-26 16:54:30 +01:00
Nikita Popov
70388cc0ed
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Deny cloning of fileinfo objects
2020-10-26 16:52:14 +01:00
Dharman
7e6b840778
Consistent error handling in mysqli_poll
...
This error condition should not actually be reachable, but change
it to be consistent with the other ones.
Also fix a memory leak.
Closes GH-6340.
2020-10-26 16:25:25 +01:00
Christoph M. Becker
c6784ca75e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Revert "Fix out-of-bounds write"
2020-10-26 15:42:08 +01:00
Nikita Popov
8aead9e2bc
Re-enable laravel tests
...
Laravel is now sufficiently PHP 8 compatible.
Closes GH-6353.
2020-10-26 14:31:48 +01:00
Dmitry Stogov
0fa154ad8d
Fixed incorrect register allocation in ext/gd/tests/imagecopyresampled_variation1.phpt
2020-10-26 15:56:37 +03:00
Christoph M. Becker
e71036ce03
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80268 : loadHTML() truncates at NUL bytes
2020-10-26 13:15:03 +01:00
bashkarev
f17b2a75a5
Don't set xdebug.default_enable in run-tests
...
This throws a deprecation warning in XDebug 3.
Closes GH-6324.
2020-10-26 13:10:26 +01:00
Nikita Popov
26bd857999
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Declare may_retry_reparse_point on windows only
2020-10-26 12:41:12 +01:00
Christoph M. Becker
2da00fadc8
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #62474 : com_event_sink crashes on certain arguments
2020-10-26 11:55:29 +01:00
Christoph M. Becker
0abcb9fb69
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80258 : Windows Deduplication Enabled, randon permission errors
2020-10-26 11:22:39 +01:00
Christoph M. Becker
b678df5dc8
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80280 : ADD_EXTENSION_DEP() fails for ext/standard and ext/date
2020-10-26 11:06:10 +01:00
Christoph M. Becker
50d75ae055
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug 76618
Fix bug 76618
2020-10-26 10:59:46 +01:00
Nikita Popov
0535872b7c
Use separate directory in dit_004.phpt
...
Make sure the directory is not modified while we're iterating it,
which may give unstable results.
2020-10-26 09:26:18 +01:00
Nikita Popov
1c868b186e
Fix parameter stats generation
...
[ci skip]
2020-10-26 09:05:25 +01:00
Thiemo Kreuz
9c28dc0ce9
Document breaking change in strspn/strcspn
...
See https://phabricator.wikimedia.org/T264502 .
[ci skip]
2020-10-26 08:58:51 +01:00
Nikita Popov
7f462c97f9
Revert "Make ReflectionUnionType final"
...
This reverts commit ef6adb4e27 .
Per Ondrej's comment, this is already being used by BetterReflection
adaptors, ugh.
2020-10-26 08:51:06 +01:00
Máté Kocsis
ef6adb4e27
Make ReflectionUnionType final
...
Closes GH-6384
2020-10-25 20:14:07 +01:00
Christoph M. Becker
fab76e3a11
[ci skip] Fix typos in UPGRADING
2020-10-25 16:27:20 +01:00
Christoph M. Becker
5609701389
Define config var PHP_JSON
...
Otherwise, `ADD_EXTENSION_DEP('foo', 'json')` fails, even though the
JSON extension is available.
2020-10-24 15:36:05 +02:00
George Peter Banyard
158d308197
Throw Value/TypeError for invalid $bodies in imap_mail_compose()
...
Small drive by refactoring to use HashTables
Closes GH-6371
2020-10-23 20:47:35 +01:00
Máté Kocsis
47bbfe1fc0
Require stubs to declare return types for magic methods when possible
...
Closes GH-6376
2020-10-23 16:33:16 +02:00
Nikita Popov
0fb2374e06
Make GC default threshold handling consistent
...
While the initial threshold is set to 10001 roots, the threshold
adjustment logic may then set it to 10000. The exact value really
doesn't matter, but we should make it consistent.
2020-10-23 10:30:07 +02:00
Nikita Popov
078df4d144
Don't allow passing unknown named params to class without ctor
...
See also https://externals.io/message/112083 .
Closes GH-6364.
2020-10-23 09:46:55 +02:00
Javier Eguiluz
c64dcda5e5
Fixed some typos
...
Closes GH-6373.
[ci skip]
2020-10-23 09:34:09 +02:00
Dmitry Stogov
0f8518f875
Fixed register allocation
2020-10-22 23:16:41 +03:00
Dmitry Stogov
838d8d0ba0
Fixed reference-counter inference
2020-10-22 23:15:39 +03:00
Dmitry Stogov
5626dcdb9d
Missed warning
2020-10-22 23:15:15 +03:00
Máté Kocsis
a8e92e361f
Run arginfo/ZPP verification tests in strict mode as well
...
Closes GH-6370
2020-10-22 19:01:40 +02:00
George Peter Banyard
ba27866aec
Fix bug 76618
...
Apply patch which was attached to the bug in July 2018
2020-10-22 17:05:29 +01:00
Dmitry Stogov
20cbb233c4
Checj type guards before loading values into CPU registers
2020-10-22 18:23:49 +03:00
Dmitry Stogov
30cf0a04bf
Avoid register allocation for ASSIGN into aliased variable (it might be indirectly changed into IS_REFERENCE)
2020-10-22 18:22:36 +03:00
George Peter Banyard
8b265fb602
Fix segfaults after conversion from zval to zend_string params
2020-10-22 15:50:01 +01:00
Nikita Popov
6de6f2a4e9
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Don't crash on uninitialized tidy object
2020-10-22 16:05:57 +02:00
Nikita Popov
bfe7a1168a
Properly validate ArrayObject::asort() argument
2020-10-22 15:20:43 +02:00
Máté Kocsis
4fb5ccf00c
Fix parameter name of pspell_config_save_repl()
...
Closes GH-6369.
2020-10-22 14:54:43 +02:00
Nikita Popov
97dd0eb98d
Fix stub for dba_key_split()
...
This is an extremely weird function, but the behavior seems to be
intentional, and is quite clearly documented.
So we adjust the stub to also accept false|null as arguments. I
believe the implementation already correctly matches union type
semantics.
2020-10-22 14:50:52 +02:00
Nikita Popov
db5979dfe2
Make highlight_string() accept string in zpp
...
To satisfy the type declaration.
2020-10-22 14:31:42 +02:00
Nikita Popov
c23eefb1ad
Don't leak pcntl last_error across requests
2020-10-22 14:21:22 +02:00
Nikita Popov
aa0d886cbc
Don't leak json error_code across requests
2020-10-22 12:42:09 +02:00
Nikita Popov
41b8cdd2e0
Don't leak pcre error_code across requests
2020-10-22 11:20:02 +02:00
Derick Rethans
5eb6f593ee
Updated to version 2020.4 (2020d)
2020-10-22 10:12:27 +01:00
Derick Rethans
55e5966c32
Empty merge
2020-10-22 10:12:27 +01:00
Nikita Popov
dd3639341d
Don't allow properties on GdImage
...
Just like all the other former resources... we missed this case.
2020-10-22 10:34:14 +02:00
Nikita Popov
dd4a080133
Simplify and fix generator tree management
...
This makes a number of related changes to the generator tree
management, that should hopefully make it easier to understand,
more robust and faster for the common linear-chain case. Fixes
https://bugs.php.net/bug.php?id=80240 , which was the original
motivation here.
* Generators now only add a ref to their direct parent.
* Nodes only store their children, not their leafs, which avoids
any need for leaf updating. This means it's no longer possible
to fetch the child for a certain leaf, which is something we
only needed in one place (update_current). If multi-children
nodes are involved, this will require doing a walk in the other
direction (from leaf to root). It does not affect the common
case of single-child nodes.
* The root/leaf pointers are now seen as a pair. One leaf generator
can point to the current root. If a different leaf generator is
used, we'll move the root pointer over to that one. Again, this
is a cache to make the common linear chain case fast, trees may
need to scan up the parent link.
Closes GH-6344.
2020-10-22 10:25:25 +02:00
Nikita Popov
ac87880add
Update bcmath.scale when calling bcscale()
...
We should keep the value of bcmath.scale and the internal
bc_precision global synchronized.
Probably more important than the ability to retrieve bcmath.scale
via ini_get(), this also makes sure that the set scale does not
leak into the next request, as it currently does.
2020-10-21 17:06:48 +02:00
Dmitry Stogov
cb6f9a6568
More accurate live range construction
2020-10-21 16:05:13 +03:00
Dmitry Stogov
9efb258fc1
Eliminate useless mov(s)
2020-10-21 16:03:28 +03:00
Nikita Popov
3966c0f8a4
Add test for zend_extension loading
...
Closes GH-6363.
2020-10-21 12:16:56 +02:00
twosee
5998b2a3a6
Fix invalid memory read on libpath
...
Introduced in 3e33e1e86d .
Closes GH-6362.
2020-10-21 10:07:07 +02:00
Dmitry Stogov
a1cac4fefc
Eliminate dead type store
2020-10-20 23:37:19 +03:00
Dmitry Stogov
0ac810bbc5
Improve JIT for fetching character form string
2020-10-20 20:29:33 +03:00
Christoph M. Becker
edd8bd64ba
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80242 : imap_mail_compose() segfaults for multipart with rfc822
2020-10-20 19:02:15 +02:00
Máté Kocsis
d5f92baad0
Fix default value handling of mysqli_fetch_object()
...
Make [] acceptable both for classes without constructors and
classes with a constructor that takes no arguments.
Closes GH-6336.
2020-10-20 16:48:12 +02:00
Christoph M. Becker
8f6cade864
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Add char* cast to avoid compiler warnings
2020-10-20 16:33:56 +02:00
Nikita Popov
1c157d3fa2
Fixed bug #80256
...
Remove the transfer_encoding stream filter immediately when we
destroy the old stream, to make sure it doesn't get attached to
the new stream.
2020-10-20 15:35:41 +02:00
Christoph M. Becker
486c49dee8
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Properly fix #80220
2020-10-20 13:36:41 +02:00
Nikita Popov
cf04707938
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug #79643 : Invalid memory read when opcache.interned_strings_buffer is 0
2020-10-20 12:51:08 +02:00
Dmitry Stogov
5e17d88b63
Improve register allocator (register reuse)
2020-10-20 13:46:32 +03:00
Dmitry Stogov
ea1590937b
Improve register allocator (give preference to loop variables).
2020-10-20 12:19:44 +03:00
Nikita Popov
87d2bb7424
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix CCM tag length setting for old OpenSSL versions
2020-10-20 10:52:50 +02:00
Nikita Popov
2c8287382c
Increase timeout on file cache job
...
[ci skip]
2020-10-20 09:53:50 +02:00
Dmitry Stogov
ee5b1dd6dc
Fixed range propagation
2020-10-20 02:27:24 +03:00
Dmitry Stogov
fc2d477c5b
Avoid partial register stall
2020-10-19 23:22:43 +03:00
Dmitry Stogov
bf321f0c14
Use zero-extended mov insted of sign-signed movsxd
2020-10-19 19:39:51 +03:00
Nikita Popov
d3812ca41b
Fixed bug #80255
...
This was a copy&paste mistake, target_block was used where
follow_block was intended. Also update copy&paste mistakes in
the comments.
2020-10-19 15:13:53 +02:00
Nikita Popov
c97da0f819
Revert "Fix bug #64865 : Use CONTEXT_DOCUMENT_ROOT for scanning dir tree"
...
This reverts commit 98bfad738a .
This doesn't work well in some setups, see bug #80113 and GH-5051.
Reverting this for now.
2020-10-19 11:23:00 +02:00
Nikita Popov
7727a02276
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix bug #79983 : Add support for OCB mode
2020-10-19 11:09:17 +02:00
Nikita Popov
8bc5e23f40
Disable Laravel testing
...
This has been failing for months now, let's make the scheduled
build status meaningful again.
[ci skip]
2020-10-19 10:44:46 +02:00
Nikita Popov
61b33e900c
Add additional initialization checks to SplFileInfo
2020-10-19 10:35:22 +02:00
Derick Rethans
d0c2db4179
Updated to version 2020.3 (2020c)
2020-10-19 09:31:04 +01:00
Derick Rethans
64012b72c5
Empty merge
2020-10-19 09:31:04 +01:00
Nikita Popov
74fe9170b6
Check PDOStatement initialization during iteration
2020-10-19 10:22:56 +02:00
Máté Kocsis
f076ab0c0c
Fix #80229 : assert_options should have int and bool for parameter PHPDoc
...
Closes GH-6348
2020-10-17 12:01:07 +02:00
Nikita Popov
d6a18a7738
Properly handle NULL output start filename
2020-10-16 18:38:03 +02:00
Nikita Popov
97202d9d84
Make sure output start filename is not freed early
...
As filenames are no longer interned, we need to keep a reference
to the zend_string to make sure it isn't freed.
To avoid a nominal source compatibility break, create a new member
in the globals.
2020-10-16 17:27:52 +02:00
Nikita Popov
28e21d80b0
Fix leak when setting dynamic property on generator
2020-10-16 16:58:27 +02:00
Anatoly Pashin
6669426ab9
[ci skip] Make it clear what GD uses instead of resources
...
Closes GH-6342.
2020-10-16 12:16:12 +02:00
Máté Kocsis
d6264b0966
Verify parameter names of function aliases
...
Closes GH-6335
2020-10-16 10:56:33 +02:00
David Carlier
3841ea338e
DragonFlyBSD build update for opcache JIT part.
...
Closes GH-6339.
2020-10-15 14:50:23 +02:00
Dmitry Stogov
5572318166
Avoid refcounting when return CV (similar to optimization in VM).
2020-10-15 15:27:00 +03:00
Nikita Popov
4ece62fba9
Fix bug #80055
...
We need to perform trait scope fixup for both methods involved
in the inheritance check. For that purpose we already need to
thread through a separate fn scope through the entire inheritance
checking machinery.
2020-10-15 14:24:25 +02:00
Christoph M. Becker
ecd51aa099
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix broken fix for #80239
2020-10-15 13:20:58 +02:00
Christoph M. Becker
b7c1834c6a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80239 : imap_rfc822_write_address() leaks memory
2020-10-15 12:57:35 +02:00
Côme Chilliet
15a3eca3ef
Change $controls parameter to default to null in ext/ldap
...
It appeared that not passing $controls and passing [] caused different
behaviors, when not passing it the controls set through ldap_set_option
would be used, when passing [] they would not.
So, this parameter is now nullable and defaults to null to have a
consistent behavior.
2020-10-15 11:48:47 +02:00
Nikita Popov
b2700811f3
Skip arginfo test under msan
...
Msan is missing interceptors for some functions that result in
false positives.
2020-10-15 10:40:23 +02:00
Nikita Popov
682cc42900
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix leak in gmp_export()
2020-10-15 10:17:55 +02:00
Christoph M. Becker
e076455026
Adapt test expectation to cURL 7.73.0
...
cURL 7.73.0 introduced support for the MQTT protocol, so we have to
adapt our expectations regarding the supported protocols.
2020-10-14 19:11:58 +02:00
Nikita Popov
e065d97e94
Sync zpp in phar interceptors
...
This should match the zpp of the intercepted functions...
2020-10-14 16:58:07 +02:00
Nikita Popov
187efc6496
Fix null foreground in imagewbmp
...
The variable was not actually passed to zpp...
2020-10-14 16:40:35 +02:00
Nikita Popov
1610e81b51
Mark ldap_exop() param as UNKNOWN
...
This function actually has very different behavior depending on
whether $response_data is passed or not.
2020-10-14 16:38:56 +02:00
Nikita Popov
0832376411
More arginfo/zpp verification
...
Run all functions with a varying number of null arguments, which
helps us flush out all kinds of bugs.
Closes GH-5881.
2020-10-14 16:26:09 +02:00
Nikita Popov
5e34744fd9
Initialize calendar_long variable
...
As reported by cmb, this results a VC runtime warning. I don't
believe there's a problem here, as we only use calendar_long if
both calendar_is_null and calendar_obj are not set, but it doesn't
hurt to initialize it either...
2020-10-14 11:57:05 +02:00
Nikita Popov
251af7329f
Fix nullability of openssl_cms_sign() parameter
2020-10-14 11:34:15 +02:00
Nikita Popov
2540f68d0e
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Allow passing $tag for non-authenticated encryption
2020-10-14 10:56:51 +02:00
Dmitry Stogov
06bb1feb09
Added missing side exit
2020-10-14 01:17:39 +03:00
Sara Golemon
4da2bebd41
Update NEWS for 8.0.0RC3
2020-10-13 21:59:53 +00:00
Sara Golemon
431421d1ce
Update NEWS for PHP 8.0.0RC2
2020-10-13 21:53:31 +00:00
Nikita Popov
5582490bf2
Normalize mb_ereg() return value
...
mb_ereg()/mb_eregi() currently have an inconsistent return value
based on whether the $matches parameter is passed or not:
> Returns the byte length of the matched string if a match for
> pattern was found in string, or FALSE if no matches were found
> or an error occurred.
>
> If the optional parameter regs was not passed or the length of
> the matched string is 0, this function returns 1.
Coupling this behavior to the $matches parameter doesn't make sense
-- we know the match length either way, there is no technical
reason to distinguish them. However, returning the match length
is not particularly useful either, especially due to the need to
convert 0-length into 1-length to satisfy "truthy" checks. We
could always return 1, which would kind of match the behavior of
preg_match() -- however, preg_match() actually returns the number
of matches, which is 0 or 1 for preg_match(), while false signals
an error. However, mb_ereg() returns false both for no match and
for an error. This would result in an odd 1|false return value.
The patch canonicalizes mb_ereg() to always return a boolean,
where true indicates a match and false indicates no match or error.
This also matches the behavior of the mb_ereg_match() and
mb_ereg_search() functions.
This fixes the default value integrity violation in PHP 8.
Closes GH-6331.
2020-10-13 20:40:55 +02:00
Christoph M. Becker
5aec24c477
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #64076 : imap_sort() does not return FALSE on failure
2020-10-13 19:41:27 +02:00
Nikita Popov
9b4094c3d7
Fix incorrect zpp parameter count in mb_substr() / mb_strcut()
...
These functions only accept 4 params.
2020-10-13 17:46:56 +02:00
Nikita Popov
a7e84e2e02
Fix default value for some pgsql functions
...
These set the PGSQL_DML_EXEC flag by default.
2020-10-13 17:29:05 +02:00
Nikita Popov
d66e929915
Fix null handling in mysqli_begin_transaction()
...
We don't want an explicit null name hit the !name_len check.
2020-10-13 17:12:50 +02:00
Nikita Popov
124bce3c7a
Fix argument nullability in mbstring
...
These arguments were declared nullable in stubs (and should be
nullable), but didn't accept null in zpp.
2020-10-13 16:03:04 +02:00
Nikita Popov
7b0f5f424d
Don't accept null in pg_unescape_bytea()
...
This is an error that slipped in via 8d37c37bcd .
pg_unescape_bytea() did not accept null in PHP 7.4, and it is not
meaningful for it to accept null now -- it will always fail, and now
with a misleading OOM message.
2020-10-13 15:37:13 +02:00
Christoph M. Becker
8e531b5b00
Update ext/odbc parameter names
...
Closes GH-6303.
2020-10-13 15:34:12 +02:00
Nikita Popov
e86a6ced06
Use $statement in mysqli
...
As we went with $statement rather than $stmts in other places,
let's also use it in mysqli. The discrepancy with mysqli_stmt
is a bit unfortunate, but we can't be consistent with *both*.
Closes GH-6330.
2020-10-13 14:20:00 +02:00
Derick Rethans
f22cc23c70
Merge branch 'PHP-7.4' into PHP-8.0
2020-10-13 12:29:14 +01:00
Christoph M. Becker
ade146c9ed
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Ignore memory leaks reported for some libc-client functions
2020-10-13 13:12:39 +02:00
Dmitry Stogov
62ae21bbf2
Give preference to live-ranges with register hints to improve register reuse.
2020-10-13 13:59:53 +03:00
Nikita Popov
ea03acadc2
Update ext/pdo_pgsql parameter names
...
Closes GH-6329.
2020-10-13 12:31:39 +02:00
Nikita Popov
3171fec6da
Update ext/pgsql parameter names
...
Closes GH-6294.
2020-10-13 12:30:44 +02:00
Nikita Popov
1748b8111e
Fix handling of throwing undef var in verify return
...
If we have an undefined variable and null is not accepted by the
return type, we want to throw just the undef var error.
In this case this lead to an infinite loop, because we overwrite
the exception opline in SAVE_OPLINE and it does not get reset
when chaining into a previous exception. Add an assertiong to
catch this case earlier.
2020-10-13 11:43:43 +02:00
Nikita Popov
8c68745f43
Update ext/sodium parameter names
...
Closes GH-6279.
2020-10-13 10:41:35 +02:00
Dmitry Stogov
872787c5f7
Avoid useless register allocation
2020-10-13 11:37:33 +03:00
Nikita Popov
82d46e353b
Update ext/phar parameter names
...
Closes GH-6307.
2020-10-13 10:20:45 +02:00
Christoph M. Becker
21dafab2f9
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
7.3.25 is next
2020-10-13 09:55:33 +02:00
Christoph M. Becker
818eb8f611
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80226 : imap_sort() leaks sortpgm memory
2020-10-12 23:21:56 +02:00
Dmitry Stogov
87beb22ff8
Perform trace range propagation
2020-10-13 00:18:17 +03:00
Christoph M. Becker
8d4774a2df
Change parameters types from int to bool
...
These are typical boolean parameters, so we shouldn't advertize them as
integers. For the `$reverse` parameter that even fixes expectations,
because the `reverse` member is a bitfield of 1 bit, so assigning any
even integer would not set it.
Closes GH-6328.
2020-10-12 23:10:13 +02:00
Dmitry Stogov
1c596ff146
Eliminate dead stores
2020-10-12 22:59:30 +03:00
Máté Kocsis
186612e4d7
Improve parameter names in ext/intl
...
Closes GH-6309
2020-10-12 18:06:45 +02:00
Máté Kocsis
eef994d621
Improve parameter names in ext/pdo_sqlite
...
Closes GH-6310
2020-10-12 18:05:35 +02:00
Nikita Popov
6edad1716d
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
intl: report more information about message pattern parse errors
2020-10-12 16:44:18 +02:00
Nikita Popov
f9b7609d17
Fixed bug #80225
...
Namespaced and declares have a different interpretation of what
"first statement" means.
2020-10-12 16:35:09 +02:00
Christoph M. Becker
11c752a5f5
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80216 : imap_mail_compose() does not validate types/encodings
2020-10-12 16:30:48 +02:00
Christoph M. Becker
0443c824a3
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80223 : imap_mail_compose() leaks envelope on malformed bodies
2020-10-12 15:10:38 +02:00
Christoph M. Becker
5a8958f0f3
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80220 : imap_mail_compose() may leak memory
2020-10-12 13:34:19 +02:00
Nikita Popov
2cd2ca8884
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Revert "Add missing X509 purpose constants"
2020-10-12 12:56:21 +02:00
Nikita Popov
da60849fa1
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Add missing X509 purpose constants
2020-10-12 11:53:22 +02:00
Nikita Popov
66ecee6243
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Detect self-addition of array more accurately
Deindirect source elements in zend_hash_merge
2020-10-12 11:25:27 +02:00
Nikita Popov
8d11576a86
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Backport schedule in yaml
2020-10-12 10:06:40 +02:00
Nikita Popov
d953cd1862
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Avoid non-object in FE_FREE
2020-10-12 09:46:38 +02:00
Christoph M. Becker
fbf221cac4
XMLReader::open() and XMLReader::xml() are now static
2020-10-11 18:50:35 +02:00
Christoph M. Becker
d72c648015
Remove return types from XMLWriter stubs
...
These break BC, and as such we have to stick with docblock annotations.
Closes GH-6319.
2020-10-11 18:22:59 +02:00
Derick Rethans
63289cfff3
Merge branch 'PHP-7.4' into PHP-8.0
2020-10-11 14:54:12 +01:00
Christoph M. Becker
6494e57804
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80215 : imap_mail_compose() may modify by-val parameters
2020-10-10 23:28:19 +02:00
Christoph M. Becker
7d085c87ac
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fix #80213 : imap_mail_compose() segfaults on certain $bodies
2020-10-10 19:19:47 +02:00
Christoph M. Becker
2a545ba946
Fix #80175 : PHP8 RC1 - JIT Buffer not working
...
On Windows, `SUCCESSFULLY_REATTACHED` does not imply that the process
has already been properly initialized; thus we must not skip some setup
steps in `zend_jit_startup()`.
Closes GH-6268.
2020-10-10 17:46:59 +02:00
Christoph M. Becker
45c19bde22
Change imap_mail_compose() $body param to $bodies
...
This parameter actually expects an array of bodies, so we should name
it accordingly.
Closes GH-6313.
2020-10-10 17:39:54 +02:00
Nikita Popov
378bb63f66
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Don't specify symfony branch
2020-10-10 11:08:47 +02:00
Dmitry Stogov
57bb3a3966
Eliminate dead load
2020-10-09 18:58:03 +03:00
Nikita Popov
14a26db3e2
Update ext/gd parameter names
...
Closes GH-6308.
2020-10-09 17:10:11 +02:00
Nikita Popov
623bf39e9c
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Fixed bug #80186
2020-10-09 17:02:20 +02:00
Nikita Popov
e4e2541c1a
Update to mime-db 1.45
2020-10-09 16:22:04 +02:00
Nikita Popov
6a8c094e2d
Remove string length limit from levenshtein()
...
As noted on https://bugs.php.net/bug.php?id=80073 , I don't think
having this limitation makes sense. The similar_text() function
has much worse asymptotic complexity than levenshtein() and does
not enforce such a limitation. levenshtein() does have fairly high
memory requirements, but they are a fixed factor of the string
length (and subject to memory limit).
2020-10-09 16:12:08 +02:00
Petr Sumbera
240d06118c
Add support for Solaris 11.4 openpty implementation.
...
Closes GH-6287.
2020-10-09 16:10:03 +02:00
Dmitry Stogov
fc14dbb713
Keep the same JIT code for PHP-8.0 and master (workaround against PHP-8.0 ABI freeze)
2020-10-09 16:54:26 +03:00
Nikita Popov
38368708d7
Enable Azure pipeline builds on PHP-8.0
2020-10-09 15:30:40 +02:00
Nikita Popov
64cebf3d9a
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
Make iconv errno support test pass on Solaris.
2020-10-09 15:25:23 +02:00
Dmitry Stogov
080784acfd
Eliminate more dead type stores
2020-10-09 16:15:07 +03:00
Nikita Popov
6188b7a1da
Revert "Change calling convention of zval_update_constant[_ex]() to fastcall."
...
This reverts commit 5a447b086b .
Revert this ABI break from PHP-8.0, leaving it only on master.
2020-10-09 15:06:12 +02:00
Nikita Popov
cc58347105
Merge branch 'PHP-7.4' into PHP-8.0
...
* PHP-7.4:
XFAIL test broken by timelib update
2020-10-09 14:05:33 +02:00
Dmitry Stogov
6f888b90c5
Eliminate more dead type stores
2020-10-09 14:31:20 +03:00
Máté Kocsis
503999910b
More precise type information for datefmt_format()
2020-10-09 11:05:42 +02:00
Máté Kocsis
686d6c3dd4
Fix XmlParser classname in stubs
2020-10-09 10:43:35 +02:00
Máté Kocsis
4173f2b3ab
Improve parameter names in ext/oci8
...
Closes GH-6267
2020-10-08 23:30:33 +02:00
Dmitry Stogov
2ad96b8cee
Eliminate more dead type stores
2020-10-08 23:26:31 +03:00
Dmitry Stogov
e5830c4a6b
Eliminate dead type stores
2020-10-08 19:15:23 +03:00
Dmitry Stogov
8efcc280be
Cleanup (expand and remove simple macros)
2020-10-08 19:15:23 +03:00
Nikita Popov
e0f2ac9ff6
Update ext/imap parameter names
...
Closes GH-6299.
2020-10-08 18:02:09 +02:00
Nikita Popov
5836e3ed97
Update ext/snmp parameter names
...
Closes GH-6298.
2020-10-08 17:10:52 +02:00
Nikita Popov
ad7e231e81
Make compression_type nullable in a few more places
...
Missed that this was also used elsewhere...
2020-10-08 17:05:38 +02:00
Nikita Popov
c4a25da096
Update ext/soap parameter names
...
Closes GH-6300.
2020-10-08 16:32:01 +02:00
Derick Rethans
2180e882f3
Updated to version 2020.2 (2020b)
2020-10-08 15:19:48 +01:00
Derick Rethans
5289badb2f
Empty merge
2020-10-08 15:19:48 +01:00
Derick Rethans
088d284d9f
Updated to version 2020.2 (2020b)
2020-10-08 15:05:40 +01:00
Derick Rethans
2ceef3a419
Empty merge
2020-10-08 15:05:40 +01:00
Nikita Popov
9719d6cade
Make Phar $format and $compression arguments nullable
...
Rather than using Greg's birthday, use null to indicate that the
existing format/compression should be retained. For the format
simply using zero would be sufficient, but as the documentation
explicitly says that NULL is allowed here, we may as well make
that the truth.
2020-10-08 13:12:22 +02:00
Nikita Popov
9e32e1322e
Accept bool in SoapClient::__doRequest
...
$one_way is a boolean argument.
2020-10-08 12:36:49 +02:00
Christoph M. Becker
d3b41c4640
Fix imap test expectation which is still too strict for Windows
2020-10-08 12:33:38 +02:00
Christoph M. Becker
48736dddab
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix too strict imap test expectations
2020-10-08 12:11:28 +02:00
Christoph M. Becker
f5afc2c3cf
Fix potential mail related segfault on Windows
...
`rpath` may be `NULL` here, in which case we must not access its
members.
2020-10-08 11:47:18 +02:00
Christoph M. Becker
561b581947
Update ext/com_dotnet parameter names
...
Closes GH-6296.
2020-10-08 11:45:53 +02:00
Nikita Popov
5480e6b13d
Accept bool in snmp_set_(quick|enum)_print()
...
The integer parameter here is actually a boolean.
snmp_set_quick_print() already documented it as such, and
snmp_get_quick_print() was already returning a boolean.
2020-10-08 11:11:51 +02:00
Nikita Popov
1fba220725
Update ext/xsl parameter names
...
Additionally normalize to using $namespace rather than $uri for
namespace parameters, including in XMLReader and XMLWriter. I went
with that one as it is currently used by DOM, SimpleXML and XSL --
and our DOM parameter names follow the DOM specification.
Closes GH-6295.
2020-10-08 10:28:50 +02:00
Nikita Popov
c05898d6c6
Update ext/xml parameter names
...
Closes GH-6297.
2020-10-08 10:26:59 +02:00
Nikita Popov
74d757e3fd
Update ext/dba parameter names
...
Closes GH-6292.
2020-10-08 09:43:10 +02:00
Dmitry Stogov
5a447b086b
Change calling convention of zval_update_constant[_ex]() to fastcall.
2020-10-08 02:04:38 +03:00
Dmitry Stogov
45441b3c11
Pass arguments to cdecl functions through preallocated stack slots
2020-10-08 00:52:30 +03:00
Dmitry Stogov
db7a773b1c
Add more hints for register allocator
2020-10-07 20:38:52 +03:00
Christoph M. Becker
c774619118
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #77040 : tidyNode::isHtml() is completely broken
2020-10-07 17:50:24 +02:00
Remi Collet
91f47ee263
don't display default value for variadic
2020-10-07 16:30:18 +02:00
Dmitry Stogov
fd81e708bc
Fixed incorrect behavior of observer API.
...
ZEND_HANDLE_EXCEPTION might call zend_observer_fcall_end() even if exception is cought by function. The fix moved zend_observer_fcall_end() into a right place and remove OBSERVER sepecialization for ZEND_HANDLE_EXCEPTION handler.
2020-10-07 17:06:53 +03:00
Nikita Popov
edf0c6a6ae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80194
2020-10-07 15:03:56 +02:00
Christoph M. Becker
a74c25bca1
Fix test
...
The upper limit is different for 32bit and 64bit, but we are testing
the lower limit only, so can use a placeholder.
2020-10-07 14:58:43 +02:00
Dmitry Stogov
3024d9c56d
Optimize out MAY_BE_LONG +/- 0 and MAY_BE_DOUBLE +/- 0.0
2020-10-07 15:23:17 +03:00
Christoph M. Becker
92d0a10150
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80185 : jdtounix() fails after 2037
2020-10-07 14:09:32 +02:00
Nikita Popov
22ab18c2aa
Update ext/ffi parameter names
...
Closes GH-6282.
2020-10-07 12:29:50 +02:00
Nikita Popov
68195bd481
Update ext/spl parameter names
...
Closes GH-6284.
2020-10-07 12:26:46 +02:00
Nikita Popov
c96d884d91
Avoid namespaced class symbol clashes in gen_stub
...
Add the namespace prefix (using underscores) to both the arginfo
name and the method declaration name.
2020-10-07 12:13:52 +02:00
Nikita Popov
9c710b1d11
Support "static" type in gen_stub
2020-10-07 11:34:14 +02:00
Nikita Popov
c11191e794
Update ext/tidy parameter names
...
Closes GH-6283.
2020-10-07 10:21:26 +02:00
Dharman
1c411edeb9
Improve parameter names in ext/sqlite3
...
Closes GH-6264
2020-10-06 23:02:18 +02:00
Nikita Popov
ec484a0788
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #80126
2020-10-06 16:34:02 +02:00
Dmitry Stogov
c80662a927
Eliminate check
2020-10-06 15:50:37 +03:00
Nikita Popov
fe0763c81f
Make $use_less_memory a boolean parameter
2020-10-06 14:16:39 +02:00
Nikita Popov
15896d08ae
Update ext/bz2 parameter names
...
Closes GH-6280.
2020-10-06 14:16:33 +02:00
Nikita Popov
7a1dc180a6
Update ext/pcntl parameter names
...
Closes GH-6278.
2020-10-06 12:45:57 +02:00
Dmitry Stogov
84e0ea6b43
Optimize out double memory load
2020-10-06 13:32:55 +03:00
Nikita Popov
79484b4f8a
Update ext/sockets parameter names
...
Also change $max_length to $length in a number of filesystem APIs,
where our usage was inconsistent.
Closes GH-6276.
2020-10-06 12:12:43 +02:00
Nikita Popov
f21b160984
Update ext/calendar parameter names
...
Closes GH-6277.
2020-10-06 11:26:05 +02:00
Nikita Popov
dee802498e
Fixed bug #80190
2020-10-06 10:20:27 +02:00
Nikita Popov
d9dce839f7
Update ext/posix parameter names
...
Closes GH-6275.
2020-10-06 09:49:40 +02:00
Dik Takken
a7856c1bae
Review parameter names in ext/xmlreader
...
Closes GH-6255.
2020-10-06 09:47:13 +02:00
Christoph M. Becker
3eae7aa77e
Don't separate array parameter
...
Closes GH-6243.
2020-10-05 23:11:36 +02:00
Sammy Kaye Powers
a9e96a378d
Expose php_during_module_startup() and php_during_module_shutdown()
...
This can be handy when trying to determine if it is safe to access request globals amongst other things.
Closes GH-6265
2020-10-05 14:01:43 -07:00
Dmitry Stogov
31f54586b5
Use range inference to eliminate useless comparisons
2020-10-05 22:33:45 +03:00
Dmitry Stogov
90b80c8278
Fix trace range inference
2020-10-05 22:33:18 +03:00
Christoph M. Becker
9fe5479eeb
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #46050 : odbc_next_result corrupts prepared resource
2020-10-05 17:48:44 +02:00
Nikita Popov
47ef51cb45
Add @generate-legacy-arginfo tag
2020-10-05 16:33:54 +02:00
Nikita Popov
0f3698173e
Update PDO parameter names
...
Followup to previous changes:
* Use camel case, as PDO uses a camel case OO API.
* Use &$var instead of &$bind_var or &$param.
* Use $column instead of $index. We have cases (both inside PDO
and in other DB exts) where columns can also be represented as
strings, so $column is the safer generic name.
Closes GH-6272.
2020-10-05 15:51:36 +02:00
Remi Collet
dba6715598
Improve gen_stub.php - drop --legacy option, generate file is exists - add --help option - add debug "Saved ..." message
2020-10-05 15:41:08 +02:00
Nikita Popov
6ea870f5fb
Fix bug #80184
2020-10-05 15:24:51 +02:00
Máté Kocsis
4982964224
Review parameter names in ext/pspell
...
Closes GH-6257
2020-10-05 15:22:15 +02:00
Máté Kocsis
e9c707298b
Review parameter names in ext/zlib
...
Closes GH-6250
2020-10-05 15:20:27 +02:00
Nikita Popov
faea5ab837
Throw from XmlReader::expand() if DOM extension missing
...
Otherwise it is hard to uphold the arginfo contract for this
function -- we cannot simply mirror the zpp call, as the class
entry it is based on does not exist.
2020-10-05 12:31:48 +02:00
Nikita Popov
d3cf597328
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix -Wimplicit-function-declaration in configure
2020-10-05 10:48:04 +02:00
Remi Collet
107962208a
add note about is_callable change
2020-10-03 07:27:08 +02:00
Christoph M. Becker
54435c9b43
Fix #64060 : lstat_stat_variation7.phpt fails on certain file systems
...
Closes GH-6194.
2020-10-02 18:54:10 +02:00
Nikita Popov
2d234d111a
Declare FFI\CType in namespace
...
Now that it is supported, declare that CType is part of the FFI
namespace, not a freestanding class.
2020-10-02 17:54:34 +02:00
George Peter Banyard
e0b17ba219
Use a subrountine to check for valid OID strings
...
Closes 6260
2020-10-02 16:32:06 +01:00
Nikita Popov
dfa6d1c22e
Support specifying linkage for generate-function-entries
...
The linkage can be specified as the argument to the
@generate-function-entries tag. Test this on zend_test.
2020-10-02 17:21:16 +02:00
Nikita Popov
924ac2b98a
Add partial namespace support to gen_stub
2020-10-02 17:08:50 +02:00
Nikita Popov
2e32a09541
Add gen_stub --legacy flag
...
This flag generates an arginfo file that discards all type and
default value information. As such, it is compatible with old
(and very old) PHP versions.
Intended for use by extensions to generate one arginfo file for
PHP 8 and one for older versions.
2020-10-02 15:14:02 +02:00
Christoph M. Becker
c137f4b6e4
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix out-of-bounds write
2020-10-02 15:10:19 +02:00
Máté Kocsis
c9c7820f74
Review parameter names in ext/ftp
...
Closes GH-6254
2020-10-02 14:26:39 +02:00
Nikita Popov
ae77c7b057
Return correct result code for division by zero
...
Turns out we do need to return FAILURE here on div by zero
exception. Use a three-way return value from div_function_base.
Fixes oss-fuzz #25975 .
2020-10-02 12:09:14 +02:00
Máté Kocsis
4f42519571
Review parameter names in ext/exif
...
Closes GH-6256
2020-10-02 11:56:16 +02:00
Máté Kocsis
811f6dd8e5
Review parameter names in ext/enchant
...
Closes GH-6258
2020-10-02 11:55:46 +02:00
Máté Kocsis
6b00196e04
Review parameter names in ext/pcre
...
Closes GH-6259
2020-10-02 11:55:23 +02:00
Dmitry Stogov
109fb3e57d
Copy optimization for (BINARY_OP/ACCIGN + SEND_VAL)
2020-10-02 12:06:02 +03:00
Dmitry Stogov
b0e77066bd
Fixed JIT for BINARY_OP with expected overflow
2020-10-02 11:01:35 +03:00
Dmitry Stogov
fbf153a210
Fixed possible incorrect register usage
2020-10-02 10:48:45 +03:00
Nikita Popov
d7243ce291
Add UPGRADING note for substr() behavior
...
[ci skip]
2020-10-02 09:41:05 +02:00
Matteo Beccati
902f63486e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] moved soap fix to 7.4.11
[ci skip] moved soap fix to 7.3.23
2020-10-02 09:34:32 +02:00
Máté Kocsis
4a30c76845
Review parameter names in ext/sysvshm
...
Closes GH-6249
2020-10-01 23:09:56 +02:00
Máté Kocsis
85949d749b
Review parameter names in ext/sysvsem
...
Closes GH-6248
2020-10-01 23:09:31 +02:00
Máté Kocsis
ceef8ad490
Review parameter names in ext/sysvmsg
...
Closes GH-6247
2020-10-01 23:08:20 +02:00
Dmitry Stogov
29dd1240f3
Clenup BINARY_OP + SEND_VAL optimization
2020-10-01 22:39:58 +03:00
Nikita Popov
62c6d6952e
Add test instantiating all objects
...
Intended to find issues in opaque object destructors.
Closes GH-6251.
2020-10-01 18:37:24 +02:00
Nikita Popov
d96219c185
Fixed bug #80121
...
The issue affected both CurlHandle and CurlMultiHandle. I'll have
to double check this for other resource->object conversions as well.
2020-10-01 17:05:23 +02:00
Nikita Popov
f82414e935
Fix out of bounds offset handling with empty needle
...
For strrpos with positive out of bounds offsets was not detected.
2020-10-01 16:41:51 +02:00
Christian Schneider
7af24eaedd
Allow empty needle in grapheme_str*pos, grapheme_str*str
...
For consistency with str* and mb_str* functions.
Closes GH-6245.
Closes php/php-tasks#20 .
2020-10-01 16:33:58 +02:00
Nikita Popov
2c1b5c4365
Support GC for AppendIterator
...
This also requires adding GC support for ArrayIterator internal
iterators.
2020-10-01 16:18:23 +02:00
Nikita Popov
afab9eb48c
Fix bug #65387
...
Add GC support to dual_it. This is still missing AppendIterator
support.
2020-10-01 16:12:56 +02:00
Dik Takken
0a84fba0de
Improve parameter names in ext/xmlwriter
...
Closes GH-6202.
2020-10-01 14:15:27 +02:00
Dmitry Stogov
4f261a029b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Backport of a partial fix for bug Bug #76982 (memory leak declaring closure in included file).
2020-10-01 13:19:40 +03:00
Côme Chilliet
550a4f2fa8
Remove deprecated functions from php-ldap
...
Remove ldap_control_paged_result and ldap_control_paged_result_response
which have been deprecated in PHP 7.4, in favor of new $controls
parameters for ldap request functions.
2020-10-01 10:15:27 +02:00
Máté Kocsis
9fbffe4470
Review parameter names in ext/gettext
...
Closes GH-6241
2020-09-30 23:01:56 +02:00
Máté Kocsis
01b239b602
Review parameter names in ext/shmop
...
Closes GH-6238
2020-09-30 21:07:25 +02:00
Máté Kocsis
efe6006ced
Review parameter names in ext/session
...
Closes GH-6239
2020-09-30 13:21:17 +02:00
Dmitry Stogov
aecb05f5e7
Give preference to ENTER->RECURSIVE_CALL trace over ENTER->RETURN
2020-09-30 12:21:15 +03:00
Máté Kocsis
26af806828
Review parameter names in ext/readline
...
Closes GH-6240
2020-09-30 10:10:28 +02:00
Máté Kocsis
fe64d73979
Review parameter names in ext/opcache
...
Closes GH-6237
2020-09-30 10:10:27 +02:00
Máté Kocsis
9fbb411e52
Review parameter names in ext/json
...
Closes GH-6236
2020-09-30 10:10:27 +02:00
Dmitry Stogov
7299af0059
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed hex char parsing
2020-09-30 11:00:50 +03:00
Remi Collet
70a3b330be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
2020-09-30 07:42:58 +02:00
Remi Collet
c55503271e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version to 7.2.35-dev
2020-09-30 07:38:16 +02:00
Remi Collet
4a0d05b6e4
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
bump version to 7.2.35-dev
2020-09-30 07:37:59 +02:00
Dmitry Stogov
5f24999237
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect error message
2020-09-30 08:37:43 +03:00
Remi Collet
c1384dfb62
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
bump version to 7.2.35-dev
2020-09-30 07:37:41 +02:00
Dmitry Stogov
b94fd3a3b6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect logical condition
2020-09-30 08:29:37 +03:00
Dmitry Stogov
41ae63cf87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect logical conditions
2020-09-30 08:22:35 +03:00
George Peter Banyard
8d0b871bde
Removed duplicate conditions
2020-09-30 08:15:04 +03:00
Christoph M. Becker
07fa13088e
Revert "Use external iterator instead of via the internal pointer"
...
This reverts commit a6ecafece9 .
Closes GH-6242.
2020-09-30 01:23:16 +02:00
Gabriel Caruso
c907413567
Update NEWS for 8.0.0rc2
2020-09-29 22:43:11 +00:00
Gabriel Caruso
6d2fe9f17f
Update NEWS for PHP 8.0.0rc1
2020-09-29 22:32:14 +00:00
Gabriel Caruso
0574c21b50
Prepare for PHP 8.0 RC1
2020-09-30 00:19:10 +02:00
Stanislav Malyshev
6795cfd98a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Add 7.4.11 security fixes to NEWS
[ci skip] Add 7.3.23 security fixes to NEWS
2020-09-29 10:14:40 -07:00
Christoph M. Becker
a1ee3c74d1
Fix recently introduced off-by-one error
2020-09-29 18:46:07 +02:00
Nikita Popov
a4331a67f4
Update iconv parameter names
...
And rename charset to encoding, including inside error messages.
Closes GH-6234.
2020-09-29 18:11:07 +02:00
Dik Takken
6dac6a996e
Warning promotion: Throw on writing invalid XML tag names
...
This change throws a ValueError when an invalid tag name is passed
to XMLWriter.
The rationale is that this indicates a programming error because
tag names typically originate from string literals or application
code generating them. This translates into either a typo or a flaw
in tag generation logic.
Closes GH-6233.
2020-09-29 16:52:47 +02:00
Nikita Popov
25f1c405ff
Update ext/standard parameter names
...
Closes GH-6214.
2020-09-29 16:49:46 +02:00
Côme Chilliet
1945355435
Improve parameter names in ext/ldap
...
Merging PR 6153
2020-09-29 16:31:08 +02:00
MCMic and Nikita Popov
3b3445f783
Harmonize ldap_rename_ext with ldap_rename parameter names
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:08 +02:00
Côme Chilliet
1d3787ee94
Rename $link parameters to $ldap in ldap functions
...
Also fixed ldap_set_option places where $newvalue was still used
2020-09-29 16:31:08 +02:00
MCMic and Nikita Popov
29e1a9717d
Improve parameter naming in ldap_rename
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:08 +02:00
MCMic and Nikita Popov
462c94447e
Improve parameter naming in ldap_exop_passwd
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:08 +02:00
MCMic and Nikita Popov
27fe37e394
Improve parameter naming in ldap_connect
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:08 +02:00
MCMic and Nikita Popov
febd33cf7e
Improve parameter naming in ldap_set_option ext/ldap/ldap.stub.php
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:07 +02:00
Côme Chilliet
fa1f86f11c
Explicitely mark nullable strings
2020-09-29 16:31:07 +02:00
MCMic and Nikita Popov
a835eee2cf
Fix parameter mask in ldap_next_attribute
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-09-29 16:31:07 +02:00
Côme Chilliet
c2a6da5ab2
Fix parameter names in ext/ldap
...
Renamed all parameters to be consistent and concise
2020-09-29 16:31:07 +02:00
Côme Chilliet
2a34d35a66
Fix "null" case in ldap.stub.php
2020-09-29 16:31:07 +02:00
Côme Chilliet
eeec37d31d
Remove dummy_ber parameter from ldap_first_attribute and ldap_next_attribute
...
It has been unused and deprecated since PHP 5.2.4
2020-09-29 16:31:07 +02:00
Côme Chilliet
caa0cd7705
Set all parameters to ldap_sasl_bind as NULL by default
...
For mech, realm, authcid, authzid and props NULL means do not change
current server setting.
2020-09-29 16:31:07 +02:00
Côme Chilliet
74b634751b
Default bind dn and password to NULL in ldap_bind_ext
2020-09-29 16:31:07 +02:00
Côme Chilliet
14385fb203
Default bind dn and password to NULL in ldap_bind
2020-09-29 16:31:07 +02:00
Côme Chilliet
6b77252f18
Make URI parameter in ldap_connect default to NULL
2020-09-29 16:31:07 +02:00
Remi Collet
e39ce172f8
bump zip extension version
2020-09-29 16:17:23 +02:00
George Peter Banyard
053a5fc141
Promote E_NOTICE to Value/TypeError in PostgreSQL extension
...
Add some tests to cover related codepaths.
With the small caveat that the ones in build_assignment_string()
still don't seem to be tested as it looks the condtions are checked
beforehand, might need some more investigation.
Closes GH-6226
2020-09-29 15:13:01 +01:00
Nikita Popov
5dd5569b89
Update ext/tokenizer param names
...
Closes GH-6232.
2020-09-29 16:11:08 +02:00
Dmitry Stogov
b44cf93774
Allow tracing JIT cooperate with function JIT.
2020-09-29 16:33:32 +03:00
Dik Takken
f3c58a5ed6
Make handling of NULL bytes in file paths more consistent (WIP)
...
Not all extensions consistently throw exceptions when the user passes
a path name containing null bytes. Also, some extensions would throw
a ValueError while others would throw a TypeError. Error messages
also varied.
Now a ValueError is thrown after all failed path checks, at least for
as far as these occur in functions that are exposed to userland.
Closes GH-6216.
2020-09-29 14:55:10 +02:00
Nikita Popov
59aa21c735
Don't accept dir handle in Directory methods
...
This is an artifact of the shared implementation with readdir() etc.
The method versions should not accept an explicit dir handle, as
they work on the dir handle from the object.
2020-09-29 14:50:40 +02:00
Dmitry Stogov
739eb435c2
Tracing JIT support for preloaded scripts
2020-09-29 15:07:45 +03:00
Nikita Popov
82f0d3c181
Remove unused variable
2020-09-29 12:35:39 +02:00
Nikita Popov
2519827732
Update gmp+bcmath parameter names
...
Closes GH-6205.
2020-09-29 12:34:16 +02:00
Christoph M. Becker
a88107d0ba
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
[ci skip] Fix version
2020-09-29 12:16:30 +02:00
Dmitry Stogov
dddb40313b
Keep track information about used JIT trigger in ZEND_FUNC_INFO(op_array)->func_info.flags
2020-09-29 13:05:24 +03:00
Christoph M. Becker
a6ecafece9
Use external iterator instead of via the internal pointer
2020-09-29 11:41:17 +02:00
Christoph M. Becker
a0051be42a
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80152 : odbc_execute() moves internal pointer of $params
2020-09-29 11:36:54 +02:00
Christoph M. Becker
47a166c837
Fix #78792 : zlib.output_compression disabled by Content-Type: image/
...
Disabling output compression for images has served to fix bug #16109 ,
where zlib compressed images apparently have caused issues with
Navigator 4. This shouldn't be an issue with somewhat contemporary
browsers. Other than that, this is an arbitrary restriction – why
don't we disable the compression for some other media types as well
(e.g. video/* and audio/*)? All in all, we should leave that decision
to userland.
Closes GH-6198.
2020-09-29 11:30:06 +02:00
Christoph M. Becker
9f5a77188c
Fix #22986 : odbc_connect() may reuse persistent connection
...
`odbc_connect()` should not reuse persistent connections, since that
prohibits multiple concurrent connections, which are occasionally
desireable. We fix that by no longer looking for already cached
connections when `odbc_connect()` is called, and instead creating a new
connection instead.
Closes GH-6223.
2020-09-29 11:20:41 +02:00
Dmitry Stogov
8d9da8df28
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed unintended disabling of Optimizer for preloaded scripts introduced by 4a2646cf45
2020-09-29 12:13:17 +03:00
Christoph M. Becker
5f5eba1d7a
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80150 : Failure to fetch error message
2020-09-29 11:05:31 +02:00
Máté Kocsis
351776eae5
Make the $filter parameter of ReflectionClass::get*Constants() nullable
2020-09-29 11:04:10 +02:00
Máté Kocsis
e19599287e
Reflection param renames amendment
...
Closes GH-6230
2020-09-29 11:04:10 +02:00
Máté Kocsis
0ec6452024
Rename a few parameters in ext/filter
...
Closes GH-6229
2020-09-29 11:04:09 +02:00
Máté Kocsis
7aa2d3519b
Zend parameter renames amendment
...
Closes GH-6228
2020-09-29 11:04:09 +02:00
Nikita Popov
de2d38d531
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #80137
Fix bug #80138
2020-09-29 10:59:46 +02:00
Nikita Popov
45b0716733
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Synchronize php.ini-development and php.ini-production
2020-09-29 10:48:29 +02:00
zeriyoshi
060fde4377
Add call_user_func_array() backward incompatible change
...
Closes GH-6218.
[ci skip]
2020-09-29 10:44:57 +02:00
Remi Collet
e1e25532b6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] typo
Do not decode cookie names anymore
Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV)
2020-09-29 08:52:09 +02:00
Stanislav Malyshev
e14f835d8c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update UPGRADING
Update UPGRADING
Update NEWS & UPGRADING
Do not decode cookie names anymore
Fix bug #79601 (Wrong ciphertext/tag in AES-CCM encryption for a 12 bytes IV)
2020-09-28 22:55:37 -07:00
Larry Garfield
ea03cbebbc
Update PDO parameters for named arguments.
...
Closes GH-6220
2020-09-28 23:02:05 +01:00
Christoph M. Becker
99b3631e9a
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #67465 : NULL Pointer dereference in odbc_handle_preparer
2020-09-28 22:59:51 +02:00
Dmitry Stogov
f722512c4a
Move invariant type guard out of loop
2020-09-28 23:54:28 +03:00
George Peter Banyard
7553c696c3
Another pass making some failure states unconditional erros in PDO
...
Also make internal function return type more accurate to inform usage
2020-09-28 19:35:31 +01:00
George Peter Banyard
a5cf82802d
Make various failure conditions in PDO unconditional errors
...
This includes TypeErrors, ValueErrors, Error for uninitialized objects
and invalid user classes/callable instanciation
Closes GH-6212
2020-09-28 18:51:36 +01:00
George Peter Banyard
24e2ba26b4
Do not register quoter handler in ODBC
...
This functionallity is not (yet) implemented and therefore gives a bogus error while using PDO
2020-09-28 18:51:35 +01:00
George Peter Banyard
9fab1b90ab
Drop ZPP check in PDO MySQLi test
...
This test is marked as XFAIL so it doesn't get looked at.
It checks that the method is called without arguments which is a ZPP concern
2020-09-28 18:51:35 +01:00
Dmitry Stogov
c3206c28d7
Dump class names
2020-09-28 20:29:46 +03:00
George Peter Banyard
189751cbeb
Promote notice to ValueError for invalid hint key
2020-09-28 16:24:04 +01:00
Dmitry Stogov
2a71cb3ce1
Improved trace selection rules
2020-09-28 17:04:34 +03:00
Nikita Popov
2f601d84cd
Promote warnings in ext/xsl
2020-09-28 16:02:31 +02:00
Nikita Popov
1efbc2cf58
Remove unused XSL_DOMOBJ_NEW() macro
...
And inline the XSL_REGISTER_CLASS() macro.
2020-09-28 15:42:51 +02:00
Dmitry Stogov
d1ddccdc19
Fixed usage of invalid frame for exit point
2020-09-28 16:18:06 +03:00
Nikita Popov
42168304b5
Consistently handle out of bounds offsets in iconv_strpos()
...
Same as in all other strpos() style functions, throw ValueError on
out of bounds offset.
2020-09-28 14:24:38 +02:00
George Peter Banyard
07a2f30417
Extensions should have the final say on their compiler flags
...
Currently compiler flags passed by extensions using the standard
``PHP_NEW_EXTENSION`` and ``PHP_ADD_SOURCES`` m4 macros are prepended
before the ones defined by ``Zend/Zend.m4``.
This was not really an issue before as ``Zend.m4`` only included
``-Wall`` but since the addition of ``-Wextra`` various issue about
disabling flags have been brought up.
A preliminary attempt was done in commit 5c1cf7669b
but this turns out to be more or less irrelevant.
The root issue is that ``PHP_NEW_EXTENSION`` and ``PHP_ADD_SOURCES`` call the
``PHP_ADD_SOURCES_X`` macro and pass their flags as the 3rd argument which prepends
the flags. There exists a 6th argument for this macro which appends them but from a
cursory look at https://heap.space/search?full=PHP_ADD_SOURCES_X&project=php-src
this is not used. Moreover, the comment describing this macro explicitly informs
that this macro should not be used directly.
As such we drop the 6th argument of ``PHP_ADD_SOURCES_X`` and move the `special-flags`
argument to be appended instead of prepended.
Closes GH-6204
2020-09-28 13:18:47 +01:00
Nikita Popov
978a44c9c6
Simplify iconv_strpos implementation
...
Use a separate "reverse" flag to determine search direction,
using offset == -1 to indicate this is is confusing. I initially
thought the code was trying to handle negative offsets.
Also deduplicate the forward and reverse cases, they really only differ
in one place.
2020-09-28 14:17:49 +02:00
Dmitry Stogov
6dd840182e
Missed opline guard
2020-09-28 14:47:45 +03:00
Nikita Popov
9e3f352691
Throw warning for invalid iconv charset
2020-09-28 12:51:25 +02:00
Nikita Popov
0a573f9e1c
Skip one more imap test under asan
...
Wondering if the error just moves to a different test each time
we skip one?
2020-09-28 09:54:44 +02:00
Nikita Popov
cafceea742
Update mbstring parameter names
...
Closes GH-6207.
2020-09-28 09:51:58 +02:00
Matteo Beccati
d411ea26f1
Fixed test for MySQL < 5.6
...
Refs GH-6172.
2020-09-28 08:52:21 +02:00
Nikita Popov
8138ed73d7
Make mysqli_warning constructor private
...
The constructor was already effectively inaccessible (protected
on a final class). This just makes it more obvious and removes
the implementation in favor of directly throwing.
Per the removed test, this was an unfinished feature, and I don't
think it makes a lot of sense to finish it -- the
mysqli_stmt::get_warnings() interface makes more sense than
direct construction.
Closes GH-6208.
2020-09-27 22:08:24 +02:00
Larry Garfield
02dc9ce6e5
Rename mysqli parameters to be more logical
...
Closes GH-6172.
2020-09-27 21:28:29 +02:00
Levi Morrison
3b34d74a45
Clean up spl_fixedarray.c
...
Remove inline.
Remove old folding blocks.
Convert an int usage to bool.
Convert some uses of int and size_t into zend_long. This is
incomplete because get_gc requires `int *n`, which should probably
become zend_long or size_t eventually.
Adds spl_fixedarray_empty to help enforce invariants.
Adds spl_fixedarray_default_ctor.
Documents some functions.
Reworks spl_fixedarray_copy into two functions:
- spl_fixedarray_copy_ctor
- spl_fixedarray_copy_range
I'm hoping to eventually export SplFixedArray for extensions to
use directly, which is the motivation here.
2020-09-27 12:25:02 -06:00
Nikita Popov
36ed9966ce
Allow attributes to be applied to property/constant groups
...
Remove arbitrary restriction that attributes cannot be applied
to property/constant groups.
The attribute applies to all elements of the group, just like
modifiers and types do.
See also https://externals.io/message/111914 .
Closes GH-6186.
2020-09-27 11:35:48 +02:00
Nikita Popov
2772751b58
Make constexpr compilation robust against multiple compilation
...
Instead of setting the old AST type to zero, replace the AST with
the compiled constexpr AST zval. This requires passing in a
zend_ast** instead of a zend_ast*.
This allows compiling ASTs containing constexprs multiple times
-- the second time, the existing compiled representation will be
resused.
This means we no longer need to copy the attributes AST for
promoted properties.
2020-09-27 11:24:22 +02:00
Nikita Popov
5686c16db4
Honor strict_types=1 for attributes, improve backtraces
...
Make ReflectionAttribute::newInstance() respect the strict_types=1
declaration at the attribute use-site. More generally, pretend that
we are calling the attribute constructor from the place where the
attribute is used, which also means that the attribute location will
show up properly in backtraces and inside "called in" error information.
This requires us to store the attributes strict_types scope (as flags),
as well as the attribute line number. The attribute filename can be
recovered from the symbol it is used on. We might want to expose the
attribute line number via reflection as well.
See also https://externals.io/message/111915 .
Closes GH-6201.
2020-09-27 10:42:58 +02:00
Matteo Beccati
43ce7846d2
Skip test with ICU version < 58
2020-09-26 10:47:56 +02:00
Sammy Kaye Powers
e42abeafec
Pass zend_execute_data instead of zend_function to fcall init
...
The motivation for this change is to prevent extensions from having to check executor globals for the current execute_data during function call init. A previous implementation of the observer API initialized the function call from runtime cache initialization before execute_data was allocated which is why zend_function was passed in.
But now that the observer API is implemented via opcode specialization, it makes sense to pass in the execute_data. This also keeps the API a bit more consistent for existing extensions that already hook zend_execute_ex.
Closes GH-6209
2020-09-25 11:46:15 -07:00
George Peter Banyard
a91cb2f48c
Promote warning to ValueError for Spoofchecker::setRestrictionLevel()
...
Closes GH-6197
2020-09-25 17:55:31 +01:00
George Peter Banyard
3c10d4d9a9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix logic error in PDO
2020-09-25 16:35:50 +01:00
George Peter Banyard
0cc7267980
Inverse logic in do_fetch() to reduce a level of indentation
2020-09-25 14:19:49 +01:00
George Peter Banyard
411610892a
Drop do_bind argument in do_fetch(_common)() in PDO
...
It is always set to true by callers and therefore irrelevant.
2020-09-25 14:19:26 +01:00
Nikita Popov
8067cf4752
Use callable type in register_shutdown_function()
...
To make things a bit less weird, split off the function name into
a zval stored separately from the arguments. This allows us to
use normal zpp and get standard behavior.
2020-09-25 14:48:33 +02:00
Christoph M. Becker
3d148804cc
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80147 : BINARY strings may not be properly zero-terminated
2020-09-25 13:53:19 +02:00
Christoph M. Becker
439878c8f9
Rename $qualifier/$owner params to $catalog/$schema
...
These have been called qualifier and owner with ODBC 2, but ODBC 3
changed that to catalog and schema, respectively.
Closes GH-6210.
2020-09-25 13:46:23 +02:00
Nikita Popov
43ce18f837
Add proper count() parameter type
...
We can make this Countable|array now.
2020-09-25 12:31:05 +02:00
Máté Kocsis
41b096b392
Promote a few forgotten warnings to exceptions
...
Closes GH-6211
2020-09-25 12:08:15 +02:00
Máté Kocsis
166178ae6d
Update ext/odbc stub hash
2020-09-25 11:19:50 +02:00
Máté Kocsis
f6024a9054
Improve parameter names in ext/curl
...
Closes GH-6155
2020-09-25 11:17:06 +02:00
Nikita Popov
56fb6864c6
Unify 32-bit/64-bit str_split tests
...
The 32-bit tests work on both 32-bit and 64-bit. I dropped the
64-bit variants as they only test one additional case that I don't
think adds particular value.
2020-09-25 10:03:41 +02:00
Nikita Popov
13b791c79c
Normalize substr() behavior
...
Make the behavior of substr(), mb_substr(), iconv_substr() and
grapheme_substr() consistent when it comes to the handling of
out of bounds offsets. substr() will now always clamp out of
bounds offsets to the string boundary. Cases that previously
returned false will now return an empty string. This means that
substr() itself *always* returns a string now (like mb_substr()
already did before.)
Closes GH-6182.
2020-09-25 09:58:21 +02:00
Simonov Denis
17a789e27c
Fix #64937 : Firebird PDO preprocessing sql
...
This patch fixes some problems with preprocessing SQL queries.
* The new algorithm takes into account single-line and multi-line
comments and ignores the ":" and "?" Parameter markers in them.
* The algorithm allows the EXECUTE BLOCK statement to be processed
correctly. For this statement, it is necessary to search for
parameter markers between EXECUTE BLOCK and AS, the rest should be
left as is.
The SQL preprocessing code has been ported from Firebird to handle
EXECUTE STATEMENT.
Closes GH-4920.
2020-09-25 00:07:57 +02:00
Christoph M. Becker
3277cb6941
Remove outdated link to bug report
...
That bug has been fixed, so no need to keep that link any longer.
2020-09-24 23:21:50 +02:00
Máté Kocsis
9b50fd2626
Fix UNKNOWN default values in ext/odbc
...
Closes GH-6154
2020-09-24 22:17:04 +02:00
Máté Kocsis
9d9bcc2b7c
Improve parameter names in ext/hash and ext/openssl
...
Closes GH-6156
2020-09-24 22:15:30 +02:00
Nikita Popov
25b9ba87b2
Update fileinfo parameter names
...
Closes GH-6206.
2020-09-24 18:36:36 +02:00
Christoph M. Becker
553072b0be
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Use proper skipif section
2020-09-24 17:14:22 +02:00
Nikita Popov
ae86edefe7
Skip imap_lsub_basic.phpt under asan
...
LeakSanitizer fails on Azure with:
> Tracer caught signal 11: addr=0x0 pc=0x7f86cde7c8b0 sp=0x7f86c46bcce0
2020-09-24 17:03:53 +02:00
Nikita Popov
9428e161a8
Add option to print parameter name stats to gen_stub
2020-09-24 15:16:29 +02:00
Christoph M. Becker
555e7eccc4
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #78470 : odbc_specialcolumns() no longer accepts $nullable
2020-09-24 12:23:37 +02:00
Christoph M. Becker
c25b5c64d1
Fix test for cases where data sources are available
...
That `bool(false)` is a relict of adapting the test expectations to the
warning promotions.
2020-09-24 11:26:16 +02:00
Nikita Popov
450f2ff406
Skip unnecessary unknown() frames
...
Noticed this while working on attributes strict_types handling.
We sometimes insert dummy frames internally, but I don't think
these should show up in debug_backtrace output unless they're
needed, either to display an include call or to preserve file/line
information that would otherwise get lost.
Closes GH-6195.
2020-09-24 10:34:24 +02:00
Nikita Popov
be4553b61a
More precise type in mysqli_result constructor
...
This ctor requires a mysqli object. Possibly there was some
confusion with the mysqli_warning constructor here.
2020-09-24 09:56:48 +02:00
Christoph M. Becker
ffa57164a8
Clear error flag instead of toggling it
...
The toggling of the `REPORT_ERRORS` looks fishy, and likely was
intented as clearing.
Closes GH-6190.
2020-09-23 23:26:58 +02:00
Dmitry Stogov
5783e611a2
Improve trace selection (avoid blacklisting of trace that may be linked).
2020-09-23 23:50:44 +03:00
George Peter Banyard
25569679aa
Promote warnings to Error in IMAP extension
...
Drop some dependencies on argc at the same time
Closes GH-6164
2020-09-23 13:54:54 +01:00
Dmitry Stogov
3c4fb70f2b
Replace ZEND_JIT_TRACE_STOP_RETURN_HALT and ZEND_JIT_TRACE_STOP_HALT by separate ZEND_JIT_TRACE_HALT flag.
2020-09-23 15:44:04 +03:00
Nikita Popov
9623756ab7
Remove unused --temp-urlbase option from run-tests.php
...
This was part of the removed HTML functionality.
2020-09-23 12:34:59 +02:00
Christoph M. Becker
1fcd6cdbb8
Fix #80139 : copy_variation5.phpt fails when run on bind mount
...
This test case is not supposed to run on case-insensitive file system;
just checking for macOS/Windows doesn't cut it.
2020-09-23 12:14:40 +02:00
twosee
6a4eeb1c47
Improve PDO::inTransaction() support for MySQL
...
Closes GH-4996.
2020-09-23 11:50:06 +02:00
Christoph M. Becker
821f6bb511
Clean up file created during testing
2020-09-23 11:45:47 +02:00
Christoph M. Becker
47b2e44990
Fix test case
2020-09-23 11:20:30 +02:00
Christoph M. Becker
05edf64436
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #76735 : Incorrect message in fopen on invalid mode
2020-09-23 11:14:06 +02:00
Christoph M. Becker
d21137368f
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #77493 : curl_basic_009 fails with newer curl versions
2020-09-23 10:48:35 +02:00
Nikita Popov
625d8463a4
Consistent error handling for fgetcsv/fputcsv
...
Normalize the behavior between the file functions and those on
SplFileObject.
Be consistent about throwing regardless of whether the delimiter etc
is empty or has too many characters. I don't think it's worthwhile
to distinguish these cases.
Back when we looked into this originally, there was some hope that
we might want to add support for multiple-character delimiter etc,
but after a cursory look, I really don't think this is going to
happen (for fputcsv maybe, but for fgetcsv this just makes an already
broken function much more complicated.)
Closes GH-6188.
2020-09-23 10:11:04 +02:00
Máté Kocsis
72e8719ed0
Fix a few ZEND_UNREACHABLE() calls
2020-09-23 10:07:58 +02:00
Nikita Popov
7fedee873f
Fix shift ub
...
And typo in macro name
2020-09-23 10:04:32 +02:00
Remi Collet
dafc72cb33
for consistency use for all *Name methods
2020-09-23 09:31:44 +02:00
Alex Dowad
4222ae16e7
SplFixedArray is Aggregate, not Iterable
...
One strange feature of SplFixedArray was that it could not be used in nested foreach
loops. If one did so, the inner loop would overwrite the iteration state of the outer
loop.
To illustrate:
$spl = SplFixedArray::fromArray([0, 1]);
foreach ($spl as $a) {
foreach ($spl as $b) {
echo "$a $b";
}
}
Would only print two lines:
0 0
0 1
Use the new InternalIterator feature which was introduced in ff19ec2df3 to convert
SplFixedArray to an Aggregate rather than Iterable. As a bonus, we get to trim down
some ugly code! Yay!
2020-09-23 08:33:24 +02:00
George Peter Banyard
1e9db80d72
Tweak some macro definition on Windows
...
Closes GH-5606
2020-09-22 23:05:12 +01:00
Nikita Popov
c2a2d2438a
Fix double free on unpack error
2020-09-22 23:31:56 +02:00
Dmitry Stogov
3dde6fc4ac
Fix extra args leak
2020-09-23 00:21:39 +03:00
George Peter Banyard
8fef83dd3c
Promote warnings to error in DOM extension
...
Closes GH-5418
2020-09-22 19:12:32 +01:00
George Peter Banyard
82e14ff8e7
Drop usage of E_RECOVERABLE_ERROR in Session extension
2020-09-22 19:11:30 +01:00
George Peter Banyard
5d7d5e2773
Add proper default values for optional arguments in IMAP
...
Closes GH-6179
2020-09-22 17:46:28 +01:00
George Peter Banyard
7fde9918af
Refactor imap_mail()'s internal implementation to use zend_strings
2020-09-22 17:46:28 +01:00
Nikita Popov
73631e517f
Try to fix test
2020-09-22 17:04:06 +02:00
Nikita Popov
6436ddbfc8
Handle out-of-bounds offset consistently in grapheme_* API
...
Make sure we throw the same kind of error regardless of whether
the offset is out-of-bounds in the fast path or in the slow
path.
2020-09-22 17:01:06 +02:00
Nikita Popov
1312c417de
Fix grapheme out of bounds check
...
An offset equal to the string length is not out of bounds.
2020-09-22 16:38:53 +02:00
Christoph M. Becker
544dbe8ef9
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #76943 : Inconsistent stream_wrapper_restore() errors
2020-09-22 16:14:03 +02:00
George Peter Banyard
35013ac823
Skip IMAP test which chokes on ASAN build
2020-09-22 14:43:31 +01:00
Nikita Popov
de77344de2
Promote pack/unpack format errors
...
Errors related to invalid format strings (unlike data mismatch
errors) should throw ValueError.
Closes GH-6185.
2020-09-22 15:12:05 +02:00
Nikita Popov
048cc9ba78
Convert unpack offset warning to ValueError
2020-09-22 14:13:26 +02:00
Christoph M. Becker
d893404fb9
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #79423 : copy command is limited to size of file it can copy
2020-09-22 13:19:06 +02:00
Nikita Popov
12d087c346
Use C zpp for get_class_vars()
2020-09-22 13:05:05 +02:00
Nikita Popov
fdd9018bdf
Support uuencoding empty string
...
Cross checking implementations from other languages, empty strings
are always allowed. PHP's output is peculiar due to it's insistence
to encode a trailing \0, but otherwise sensible and does round-trip
as expected.
2020-09-22 12:39:39 +02:00
Nikita Popov
e60f927f05
stream_bucket_new() cannot return false
...
php_stream_bucket_new() is infallible.
2020-09-22 12:07:53 +02:00
Nikita Popov
9ef2c5c303
stream_get_transports/wrappers cannot return false
...
These may return an empty array, but not false.
2020-09-22 12:02:39 +02:00
Nikita Popov
aba0ee71b2
Don't return false for empty string in soundex()
...
Return "0000" instead of false to have a consistent return type.
"0000" is already a possible return value if the string doesn't
contain any letters, such as with soundex(" "). We can treat the
case of soundex("") exactly the same.
2020-09-22 11:44:35 +02:00
Levi Morrison
f26d855e29
Skip if https wrapper isn't present
2020-09-22 03:36:54 -06:00
Nikita Popov
e547ea43c1
http_build_query() cannot fail
...
Assert that ht is not null and make php_url_encode_hash_ex() return
void to clarify that this is an infallible function.
2020-09-22 11:30:02 +02:00
Nikita Popov
0fbebfd1ae
html_entity_decode() cannot fail
...
php_unescape_html_entities() never returns null, so this function
can never return false.
php_unescape_html_entities() probably should be failing with OOM
for the "overflow" case, but even if it did, it would not be
signalled through a false return value.
2020-09-22 11:23:01 +02:00
Nikita Popov
84be22f1f5
Validate phonemes parameter of metaphone()
...
And thus avoid the false return value.
2020-09-22 11:19:02 +02:00
Nikita Popov
d0fb2f409e
substr_compare() cannot return false
2020-09-22 10:54:44 +02:00
Nikita Popov
5d9ab53a5d
Check string bounds in strspn/strcspn
...
strspn/strcspn are string search functions, and as such should throw
ValueError on out-of-bounds offsets, just like strpos etc do.
2020-09-22 10:46:50 +02:00
Nikita Popov
12e772f18d
Promote substr_replace warnings
...
The implementation here was pretty confused. In reality the only
error condition it has right now is that for a string input,
from & length cannot be arrays.
The fact that the array lengths are the same was probably supposed
to be checked for the case of array input, as it wouldn't matter
otherwise.
2020-09-22 10:22:43 +02:00
Nikita Popov
ade57e691b
substr_replace() cannot return false
2020-09-22 09:59:35 +02:00
Ikko Ashimine
8f3a38d927
Fixed minor typo in comment
...
Initiailize -> Initialize
Closes GH-6181.
2020-09-22 09:10:23 +02:00
Dmitry Stogov
57a3fbb1e1
Fixed INIT_METHOD_CALL + IS_VAR + reference in tracing JIT
2020-09-22 00:47:23 +03:00
Dmitry Stogov
43e58d3221
Fixed incorrect assumption about sizeof(zend_reference)
2020-09-21 23:58:18 +03:00
Dmitry Stogov
4ff2122275
Ficed 32-bit JIT (inconsistent CPU stack state)
2020-09-21 23:43:31 +03:00
George Peter Banyard
2ee7e2982f
Promote count() warning to TypeError
...
Closes GH-6180
2020-09-21 21:29:15 +01:00
Dmitry Stogov
5a085777b7
Fixed incorrect JIT for FETCH_THIS+SEND_REF
2020-09-21 21:53:03 +03:00
George Peter Banyard
ddd99a7005
Drop -1 mode for collator_is_numeric()
...
It is used only once with allow_errors enabled
2020-09-21 16:29:10 +01:00
George Peter Banyard
2b6f5eec6c
Drop Hex support in numeric strings for Intl collator
...
Support for this was removed in PHP 7.0.
See: https://wiki.php.net/rfc/remove_hex_support_in_numeric_strings
2020-09-21 16:29:10 +01:00
Nikita Popov
8ff2f2f84b
Return empty array for no rows in pg_fetch_all()
...
This makes it line up with pg_fetch_all_columns(), as well as
similar functions in other exts, such as mysqli_fetch_all().
2020-09-21 17:22:02 +02:00
Nikita Popov
fb4554e431
Throw warning for failed object to int/float conversion
...
We previously couldn't increase the error level here because it
was coupled to comparison handling. This is no longer the case
in PHP 8.
2020-09-21 17:04:39 +02:00
Nikita Popov
d60c43e397
Convert exception instanceof checks to assertions
2020-09-21 17:04:39 +02:00
Nikita Popov
edf22962ef
Make constant redeclaration a warning
...
We missed the change to make this an Error exception in PHP 8,
but at least elevate it to a warning, to avoid a notice -> exception
jump at a later time.
2020-09-21 17:04:39 +02:00
Nikita Popov
54f03d31e0
Promote invalid field to ValueError in pgsql
...
The same error condition is a ValueError in mysqli, be consistent.
Additionally, do not display the argument name for these errors.
As the signatures are overloaded, the argument name may not match
the meaning at all.
2020-09-21 17:00:23 +02:00
Nikita Popov
68a907569c
Remove redundant check
...
This was already checked directly above.
2020-09-21 17:00:22 +02:00
Christoph M. Becker
3e33e1e86d
Check linker compatibility directly from HMODULE
...
Checking the linker compatibility with extranous `ImageLoad()` calls is
possible, but unnecessary, since the modules are either already loaded
or loaded shortly afterwards, so that we can get the required
information directly from the module handles. And actually, doing
`ImageLoad()` as well as `LoadLibrary()` leaves a tiny room for a race
condition, because both functions will lookup the module in the search
path, so there is no *guarantee* that both are dealing with the same
module. Dropping the `ImageLoad()` calls also has the advantage to no
longer face the issue reported in bug #79557 . A very minor additional
advantage is that we no longer have to link against Imagehlp.dll.
Furthermore, there is no need to check for CRT compatibility multiple
times, so we can simplify the signature of `php_win32_crt_compatible`,
and at the same time clean up main.c a bit.
These changes require to change the signature of the exported
`php_win32_image_compatible` and `php_win32_crt_compatible` functions,
which now expect a `HMODULE` and nothing, respectively, instead of the
module name.
2020-09-21 16:25:31 +02:00
Christoph M. Becker
6fa2493789
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix mmap copying
2020-09-21 16:09:17 +02:00
Máté Kocsis
e95fa3eb0c
Fix a few Iterator signatures
...
Closes GH-6176
2020-09-21 16:03:09 +02:00
George Peter Banyard
9746490ad4
Drop some connection retries in IMAP test
...
They are unnecessary and just take time for no good reason
2020-09-21 14:49:53 +01:00
Nikita Popov
d1bbc39e4c
pg_unescape_bytea() can only fail on OOM
...
The implementation did not check for PQunescapeBytea failure
correctly, because it checked for a null pointer after estrndup,
which certainly cannot happen. Inspection of the PGunescapeBytea
implementation has shown that this function can only fail on OOM,
so let's check for that explicitly and remove false as a possible
return type.
While we're here, avoid an unnecessary copy of the result.
2020-09-21 15:46:55 +02:00
Nikita Popov
5bb41fa63c
Promote PDORow property write to Error
2020-09-21 15:33:39 +02:00
Nikita Popov
6f76817f02
Remove dead code
...
The "if ever" here is the relevant bit...
2020-09-21 15:33:39 +02:00
George Peter Banyard
e55f0c796c
Promote warnings to Error in COM extension
...
Closes GH-6141
2020-09-21 14:32:00 +01:00
Nikita Popov
213b666781
Synchronize GET_CLASS/GET_CALLED_CLASS opcodes with functions
...
These error conditions throw in the function implementations,
make the opcodes match.
2020-09-21 15:06:04 +02:00
Nikita Popov
d085a7439f
Assert on unknown list entry type
2020-09-21 14:58:23 +02:00
Nikita Popov
3642592a12
Remove unnecessary check
...
We should only produce IS_UNDEF if an exception is thrown, this
check is not needed.
2020-09-21 14:56:14 +02:00
Nikita Popov
8e0789a21c
Use proper parameter type in Closure::bindTo() signature
2020-09-21 14:46:10 +02:00
Máté Kocsis
4c821cf206
Improve default value handling of Exception constructors
...
Closes GH-6166
2020-09-21 12:46:50 +02:00
Nikita Popov
9f074a5c31
Move arm64 job to cron
...
As we're branching soon, reduce the number of jobs we run on each
commit, so that Travis can keep up with its role as the fast
feedback build.
2020-09-21 12:42:48 +02:00
Nikita Popov
c5f93d191e
Fix detection of code outside namespace
...
Due to improvements to early binding, the opcode based check is
no longer accurate. Reuse the syntactic check we're already using
for declares instead.
2020-09-21 12:37:44 +02:00
Nikita Popov
ef9ab9159b
Use assertion for null-termination string
...
Indicates an implementation bug, make sure we can automatically
detect it.
2020-09-21 12:12:51 +02:00
Larry Garfield
94854e0dff
Standardize mbstring and string on using 'string' as a parameter name.
...
Closes GH-6171.
2020-09-21 12:06:50 +02:00
Nikita Popov
7300f6fc17
Deprecate pgsql function aliases
...
These have been documentation-deprecated for a very long time,
make it official.
2020-09-21 11:33:05 +02:00
Christoph M. Becker
4591cb8a07
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix memory leak in php_imap_mutf7()
2020-09-21 11:27:51 +02:00
Nikita Popov
2bf2cede89
Initialize attributes for internal functions
...
Fixes a crash in Symfony SecurityBundle tests.
2020-09-21 10:50:29 +02:00
Christoph M. Becker
48e9181519
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80118 : Erroneous whitespace match with JIT only
2020-09-21 10:29:36 +02:00
Máté Kocsis
64af12d13b
Add support for @implementation-alias in stubs
...
Closes GH-6170
2020-09-21 10:08:45 +02:00
George Peter Banyard
3b67f183b1
Update README for how to setup IMAP tests
...
This details which packages needs to be installed on Ubuntun 18.04,
which configure flags are necessary and what the setup.sh shell script does.
2020-09-20 22:20:34 +01:00
Máté Kocsis
e950ca13ea
Consolidate the usage of "either" and "one of" in error messages
...
Closes GH-6173
2020-09-20 19:41:47 +02:00
Christoph M. Becker
c0f8cc1904
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80114 : parse_url does not accept URLs with port 0
2020-09-20 15:38:18 +02:00
Nikita Popov
93745a242f
Only check linking in PHP_TEST_BUILD
...
Given that this executes a random function with zero parameters,
actually executing the code doesn't make sense.
This should fix the imap + asan build.
2020-09-20 10:24:54 +02:00
Nikita Popov
e5082af69f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mysqli build with mysqlnd and without PDO
2020-09-20 10:03:10 +02:00
Bob Weinand
0741858ca7
Fix mysqli build with mysqlnd and without PDO
2020-09-20 02:57:39 +02:00
Máté Kocsis
b15885b522
Separate Closure::bind() implementations
...
Closure::bind() and Closure::bindTo() are currently reported as aliases in stubs because they have a single implementation. They are not aliases in fact though, they just use zend_parse_method_parameters() cleverly.
Thus, let's separate their implementation so that we don't have to alias Closure::bindTo() anymore. This will also have the advantage that the two ZPP implementations become more clear.
Closes GH-6169
2020-09-19 20:14:22 +02:00
Máté Kocsis
f088aec6cb
Fix UNKNOWN default value of apache_note()
...
Closes GH-6167
2020-09-19 16:22:18 +02:00
Máté Kocsis
40e8c7c90b
Adjust the order of method modifiers in stub
...
All the other method modifiers in stubs follow the guidelines of PSR-12, so let's use it in case of PhpToken::__construct() as well.
2020-09-19 12:32:02 +02:00
Sammy Kaye Powers
12306728c5
Add system ID entropy API
...
The `zend_system_id` is a (true global) system ID that fingerprints a process state. When extensions add engine hooks during MINIT/startup, entropy is added the system ID for each hook. This allows extensions to identify that changes have been made to the engine since the last PHP process restart.
Closes GH-5871
2020-09-18 14:26:44 -07:00
George Peter Banyard
30bb15b24a
Fix IMAP tests
...
Drop various ZPP checks and make them PASS
Add CONFLICT file as the tests all hit the same mailbox
2020-09-18 23:02:01 +02:00
George Peter Banyard
ef9359d30f
Set-up IMAP in Azure
...
Closes GH-6162
2020-09-18 23:02:01 +02:00
Nikita Popov
19314ff887
Fix some tests for libmysql
2020-09-18 18:01:04 +02:00
Nikita Popov
2d002258b8
Drop skipifemb.inc
...
And drop the last remaining uses of it.
2020-09-18 15:49:35 +02:00
Nikita Popov
b40ffa9bfd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78179 : mysqli/mysqlnd transaction extensions
2020-09-18 15:30:13 +02:00
Nikita Popov
9962ad6444
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support NO_BACKSLASH_ESCAPES with newer libmysqlclient
2020-09-18 15:26:04 +02:00
Dharman
74d16999fc
mysqli_set_charset now throws an mysqli_sql_exception when incorrect charset is provided
...
Closes GH-6142.
2020-09-18 14:57:59 +02:00
Nikita Popov
64547664cb
Assert that all switch cases are covered
2020-09-18 14:53:02 +02:00
Nikita Popov
2abea9c3bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use MyISAM engine for new test
2020-09-18 14:50:11 +02:00
Nikita Popov
c5401854fc
Run tidy
...
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
2020-09-18 14:28:32 +02:00
Nikita Popov
bfceb710be
Apply tidy to SKIPIF and CLEAN section as well
2020-09-18 14:28:14 +02:00
Nikita Popov
0582c40907
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #80107 : Handling of large compressed packets
Bug #80107 Add test for mysqli_query() fails for ~16 MB long query when compression is enabled
2020-09-18 12:59:10 +02:00
Dmitry Stogov
d5d31ea3b3
Cleanup observer API and add JIT support
2020-09-18 12:55:58 +03:00
Máté Kocsis
b4c2670f85
Fix UNKNOWN default values in ext/pdo_pgsql
...
Closes GH-6159
2020-09-18 11:13:27 +02:00
Máté Kocsis
d9628b9ca9
Update the default values of xmlwriter_write_dtd_entity()
...
Its default method handling had already been fixed not long ago, but only the stub of its method counterpart was updated.
2020-09-18 11:13:27 +02:00
Nikita Popov
34bb5ba2ea
Remove support for EXT_NOP
...
This is an annoying edge case that regularly gets broken. As we're
not aware of significant users of this API, and there are other
ways to hook this, remove support for EXT_NOP.
2020-09-18 11:03:08 +02:00
Sammy Kaye Powers
9e94bcfdbc
Remove specialization of SPEC(OBSERVER) handlers
2020-09-18 00:47:36 +03:00
Dmitry Stogov
a9cbdafa69
Support for ZEND_COMPILE_EXTENDED_STMT
2020-09-17 23:19:28 +03:00
Nikita Popov
a03c1ed7aa
Remove vestiges of embedded mysql from tests
2020-09-17 19:02:20 +02:00
Dmitry Stogov
0f9aefa64f
Fixed incorrect live-range construction
2020-09-17 19:39:44 +03:00
Dmitry Stogov
23429b5818
Fixed incorrect register allocation
2020-09-17 18:36:45 +03:00
Sara Golemon
bfa8e42a55
Use ephemeral ports during curl tests with dev server
2020-09-17 14:44:12 +00:00
Sara Golemon
a61a9fe9a0
Support ephemeral ports in debug server
2020-09-17 14:44:07 +00:00
Sara Golemon
95f2583743
Allow http tests to run in parallel by using ephemeral ports
2020-09-17 14:38:54 +00:00
Christoph M. Becker
cafeec34f9
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix bundled libpcre2 build regarding the `-fcf-protection` gcc flag
2020-09-17 16:22:21 +02:00
Nikita Popov
e9ac7d27ba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mysqli_release_savepoint() on mysqlnd
2020-09-17 16:09:41 +02:00
Nikita Popov
86e002729f
Fix some tests for libmysql
2020-09-17 15:27:02 +02:00
Nikita Popov
e2b3c0e291
Remove checks for old libmysqlclient versions in tests
2020-09-17 15:02:35 +02:00
Nikita Popov
b0661a9667
Fix warnings when building against libmysqlclient
...
At least for version 8.0 this is warning free now.
2020-09-17 15:02:35 +02:00
Christoph M. Becker
c584e84043
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Update to PCRE2 10.35
2020-09-17 14:08:32 +02:00
Nikita Popov
ec08180738
Enable unixODBC in azure
...
This only checks that it builds though.
Closes GH-6150.
2020-09-17 12:52:31 +02:00
Nikita Popov
d4e5b5b6fc
Fix compilation warnings in odbc
...
SQLCHAR* cast all the things.
2020-09-17 12:52:31 +02:00
Christoph M. Becker
f601d7c743
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80115 : mysqlnd.debug doesn't recognize absolute paths with slashes
2020-09-17 12:39:25 +02:00
Nikita Popov
5cb8b04646
Drop support for libmysqlclient < 5.5
...
Given how little maintenance the libmysqlclient driver sees, be
more aggressive in dropping old version support here.
2020-09-17 12:05:30 +02:00
Nikita Popov
e7f98f82ac
Add missing mysqlnd checks to stubs
2020-09-17 11:40:14 +02:00
Nikita Popov
3ad57f9f31
Merge branch 'PHP-7.4'
...
* PHP-7.4:
pdo_mysql/mysqli (native) libmysqlclient_r no-longer used
mysql: native mysql-8.0 uses _Bool
mysqli: use native api
2020-09-17 11:35:03 +02:00
Máté Kocsis
8d37c37bcd
Fix a few UNKNOWN default values in ext/pgsql
...
Closes GH-6149
2020-09-17 11:00:59 +02:00
Dmitry Stogov
e9820bf470
Fixed memory leak in ext/spl/tests/bug77263.phpt
2020-09-17 11:55:50 +03:00
Nikita Popov
e55a658115
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ext/soap: Compare Set-Cookie header case-insensitively
2020-09-17 10:31:48 +02:00
Nikita Popov
801cf66ab8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80083
2020-09-17 10:14:19 +02:00
Nikita Popov
e3d0bc0a98
Fixed bug #80109
...
Skip over leading EXT_NOP, if it exists.
2020-09-17 09:59:51 +02:00
Dharman
8f56b7a755
mysqli: Promote warning in field_seek
...
Aligning the behaviour of fetch_field and field_seek.
2020-09-17 09:42:42 +02:00
Máté Kocsis
46d22e435f
Change int parameter types to bool when the parameter behaves as bool
...
Closes GH-6148
2020-09-17 09:38:18 +02:00
Máté Kocsis
36fd95b524
Generate arginfos
2020-09-16 21:28:27 +02:00
Máté Kocsis
de912821e0
Display string default values in stubs more uniformly
...
Settling on using quoted string
2020-09-16 21:27:01 +02:00
Máté Kocsis
c76910cd96
Display types in stubs more uniformly
...
In preparation for generating method signatures for the manual.
This change gets rid of bogus false|null return types, a few unnecessary trailing backslashes, and settles on using ? when possible for nullable types.
2020-09-16 21:19:36 +02:00
Nikita Popov
0286decdb4
Accept GMP|string|int union in GMP functions
...
This changes GMP functions to accept a GMP|string|int union with
standard semantics (and thus also uses it in function signatures).
Relative to the previous behavior, this means that GMP functions
in weak mode now also accept float and null, and in strict mode no
longer accept bool, and have full type information.
Closes GH-6139.
2020-09-16 17:17:07 +02:00
Máté Kocsis
e7e3099299
Update xmlreader arginfo hash
...
My git client (GitHub Desktop) decided to commit and push my staged changes, so arginfo generation was not done with the previous commit.
2020-09-16 13:51:36 +02:00
Máté Kocsis
81d6ceedec
Update php_xmlreader.stub.php
2020-09-16 13:47:58 +02:00
Máté Kocsis
7a48381e22
XMLReader::getAttributeNs() can no longer return false
2020-09-16 13:45:13 +02:00
Dmitry Stogov
f786c0e097
Optimize code for FETCH_THIS + INIT_METHOD_CALL/ASSIGN_OBJ_OP/etc
2020-09-16 14:22:36 +03:00
Dharman
0d99a5618f
Changed the wording of the error message
...
"cannot be used in MYSQLI_USE_RESULT mode" sounds more correct than "cannot be used with MYSQLI_USE_RESULT"
Closes GH-6137.
2020-09-16 11:10:11 +02:00
Nikita Popov
f08e666e4b
Remove unused GMP_ABS() macro
2020-09-16 11:05:47 +02:00
Dmitry Stogov
f896b982cc
Exclude trait methods from call-graph
2020-09-16 12:04:29 +03:00
Nikita Popov
392f0abf68
Avoid ubsan warning due to memcpy null
...
This showed up in ext/mysqli/tests/mysqli_change_user.phpt on azure
today. Not seeing it locally though, and also not sure why it decided
to show up now...
2020-09-16 10:30:13 +02:00
Matteo Beccati
3b2410ebf6
Fix test
...
follow-up to 7a95e94 for MySQL < 5.6
2020-09-16 10:06:19 +02:00
Dmitry Stogov
e27776343f
Fixed incorrect constant string access
2020-09-16 10:49:54 +03:00
Dmitry Stogov
5f1fb1a5a4
JIT for INIT_METHOD_CALL
2020-09-16 10:25:36 +03:00
Remi Collet
effa3b0883
missing fix for test for new param. name
2020-09-16 07:58:53 +02:00
George Peter Banyard
95f4ee38bb
Add some ValueErrors to ext/date
...
Closes GH-5613
2020-09-16 01:29:28 +02:00
Sara Golemon
f88867485b
Update NEWS for 8.0.0RC1
2020-09-15 18:38:15 +00:00
Sara Golemon
a4a5cddd77
Update NEWS for PHP 8.0.0beta4
2020-09-15 18:30:23 +00:00
Bob Weinand
6d538e83aa
Fix OSS Fuzz issue: yielding from an aborted generator
2020-09-15 20:07:33 +02:00
George Peter Banyard
7a95e943d6
Promote warnings to Error in MySQLi extension
...
Closes GH-5803
2020-09-15 19:12:02 +02:00
Nikita Popov
7e61c2edd8
Fix uninitialized run-time cache when resolving named param defaults
...
Fixes oss-fuzz #25676 .
2020-09-15 16:51:56 +02:00
Nikita Popov
3c53732332
Fix undef var exception handling in JMP_NULL
...
We need to initialize the result variable in the exceptional
case as well.
Fixes oss-fuzz #25526 .
2020-09-15 15:44:01 +02:00
Nikita Popov
a009d370e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix assumption about property guard hash value
2020-09-15 15:27:17 +02:00
Remi Collet
b1c5532ad1
fix mbfl function prototypes
...
re-add mbfl_convert_filter_feed API
re-add pointer cast
2020-09-15 15:15:06 +02:00
Nikita Popov
16b9f19678
Fix compile-time/run-time discrepancies with unary operators
...
This addresses two issues:
* ~ throws for a number of types, and we should not compile-time
evaluate in that case. Add a check similar to what we do for
binary ops.
* Unary +/- may produce a different error message due to
canonicalization of the constant operand to the RHS. To avoid
this, put the constant operand on the RHS right away.
Fixes oss-fuzz #25649 .
2020-09-15 15:08:55 +02:00
Dmitry Stogov
f5bbb0480e
Tracing JIT for INIT_DYNAMIC_CALL (closure only)
2020-09-15 15:57:57 +03:00
Máté Kocsis
2408991fc5
Remove unintendedly committed test
2020-09-15 14:49:30 +02:00
Máté Kocsis
fa5a25b8bb
Adjust ext/openssl parameter names
...
Closes GH-6121
2020-09-15 14:27:54 +02:00
Máté Kocsis
c37a1cd650
Promote a few remaining errors in ext/standard
...
Closes GH-6110
2020-09-15 14:26:16 +02:00
George Peter Banyard
62c20c662a
Promote warnings to Error in SNMP extension
2020-09-15 13:08:07 +02:00
Gabriel Caruso
1a8936cde3
Check ReflectionReference::fromArrayElement with union types
...
ReflectionReference::fromArrayElement(array $array, int|string $key): ?ReflectionReference
is going to be its official signature for PHP 8.0.
Closes GH-5651
2020-09-15 12:56:10 +02:00
George Peter Banyard
c1823c6c8a
Promote warning to Error in ODBC extension
...
Closes GH-6123
2020-09-15 12:50:00 +02:00
George Peter Banyard
063fdd9422
Use ValueError instead of exceptions in SPL extension
2020-09-15 12:49:59 +02:00
George Peter Banyard
b6207338e8
Use normal error in SPL for uninitialized objects
2020-09-15 12:49:59 +02:00
George Peter Banyard
9affbef0e6
Use normal error in SPL for 'An iterator cannot be used with foreach by reference'
2020-09-15 12:49:59 +02:00
George Peter Banyard
4fc7026630
Convert warning to assetion in MySQL PDO driver
...
Closes GH-6120
2020-09-15 12:49:59 +02:00
Máté Kocsis
6082fd33a7
Add missing param type to pcre reflection test
2020-09-15 12:47:07 +02:00
Nikita Popov
d81ea5e928
Fix preg_replace_callback_array() with array subject
...
Apparently this "feature" was completely untested...
2020-09-15 12:03:18 +02:00
Nikita Popov
da0663a337
Add GC_TRY_ADDREF macro
...
That adds a ref if not immutable. Also audit uses of GC_IMMUTABLE
to either use GC_TRY_ADDREF or GC_TRY_PROTECT_RECURSION.
2020-09-15 11:41:09 +02:00
Christoph M. Becker
1bffe6b05c
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
7.3.24 is next
2020-09-15 10:59:24 +02:00
Nikita Popov
ec3f3002cd
Fix observer leak
...
Make sure to startup observer infrastructure before we register
the first observer...
2020-09-15 10:41:19 +02:00
Derick Rethans
e413b4c7ba
Merge branch 'PHP-7.4' into master
2020-09-15 09:37:16 +01:00
Dmitry Stogov
8f93709d7d
micro-optimization
2020-09-15 09:39:41 +03:00
Dmitry Stogov
3228d685e2
Renumber ZEND_ACC_... constants
2020-09-15 09:39:27 +03:00
George Peter Banyard and Christopher Jones
824a2bf149
Promote some warnings to ValueError in OCI8
...
Closes GH-6116
Co-authored-by: Christopher Jones <sixd@php.net >
2020-09-15 02:54:12 +02:00
Bob Weinand
452f7b0d41
Fix use-after-free with yield from in yield_from_multi_tree_single_nodes.phpt
...
Prevent release of generator children during destruction
2020-09-14 23:07:01 +02:00
Christoph M. Becker
f51bbcc2b2
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Avoid segfault if module/extension version is not defined
2020-09-14 22:36:00 +02:00
Dmitry Stogov
a4c3aee5b2
Support for reference
2020-09-14 23:30:49 +03:00
Dmitry Stogov
a351da55bf
Simplify zend_jit_pre/post_inc/dec_typed_ref() helpers
2020-09-14 22:26:34 +03:00
Bob Weinand
ad61e141dd
Fix crashes with unproper cleaning of repeated yield from
...
Closes GH-6130
2020-09-14 20:49:24 +02:00
Benjamin Eberlei
1359a52d5b
Rename zend_error_notify APIs to zend_observer_error*
2020-09-14 19:29:14 +02:00
Dmitry Stogov
8f342ad4d2
JIT for PRE/POST_INC/DEC_OBJ
2020-09-14 19:36:15 +03:00
George Peter Banyard
d0111d785d
Promote warnings to Errors in PostgreSQL extension
...
Do some drive by indentation fixes
Also fix pg_select() in regards to the $result_type arg which was missing from ZPP
Closes GH-6129
2020-09-14 17:01:35 +02:00
Larry Garfield
96f2f3174b
Update array parameter names for named parameters
...
* The array "subject" of a function gets called $array.
* Further parameters should be self-descriptive if used
as a named parameter, and a full word, not an abbreviation.
* If there is a "bunch more arrays" variadic, it gets
called $arrays (because that's what was already there).
* A few functions have a variadic "a bunch more arrays,
and then a callable", and were already called $rest.
I left those as is and died a little inside.
* Any callable provided to an array function that acts
on the array is called $callback. (Nearly all were already,
I just fixed the one or two outliers.)
* array_multisort() is beyond help so I ran screaming.
2020-09-14 14:56:49 +00:00
Nikita Popov
57a4a2c5a8
Fixed bug #80096
...
We shouldn't assume that call->prev_execute_data is NULL here. The
value needs to be preserved for call chains.
2020-09-14 15:49:49 +02:00
George Peter Banyard
48368a6bf3
Promote Warnings to Error in PostgreSQL PDO driver
...
Closes GH-6119
2020-09-14 13:41:10 +02:00
George Peter Banyard
31ef94cd42
Convert Division by 0 warnings to Error per the Engine Warning RFC
...
Closes GH-6125
2020-09-14 13:40:07 +02:00
Dmitry Stogov
bf515649ff
JIT for ASSIGN_OBJ_OP
2020-09-14 13:31:41 +03:00
Nikita Popov
950ea89fb0
Convert E_ERROR to Error exception in mysqli_result iterator
...
The same condition uses Error exceptions in lots of other classes.
2020-09-14 12:15:24 +02:00
Nikita Popov
9d3c6665ab
Drop some dead code
2020-09-14 12:03:07 +02:00
Máté Kocsis
8e8a277b2f
Slightly improve error handling in DatePeriod::__construct()
2020-09-14 11:59:51 +02:00
Máté Kocsis and Nikita Popov
46c0c82a0f
Declare array|int and object-of-class|int types in stubs
...
Closes GH-6081
Co-Authored-By: Nikita Popov <nikic@php.net >
2020-09-14 11:59:32 +02:00
Máté Kocsis
1c81a34563
Make mb_send_mail() consistent with mail()
...
The $additional_headers parameter shouldn't accept null.
2020-09-14 11:52:33 +02:00
Máté Kocsis
eb86d08128
Fix a few stub parameter types in ext/standard
2020-09-14 11:46:14 +02:00
Máté Kocsis
7e0631e5ee
Add Z_PARAM_OBJ_OF_CLASS ZPP macro
2020-09-14 11:40:27 +02:00
Christoph M. Becker
853b7945bc
Unmark tests as XFAIL on Windows
...
This issue has been resolved[1], so the tests are expected to pass on
Windows again.
[1] <https://github.com/php/php-src/commit/0a03291b51e7cf199c06ba4ae914277ce0ac4202 >
2020-09-14 10:14:21 +02:00
Dmitry Stogov
0a03291b51
Allocate Windows 64 shadow stack space
2020-09-14 10:41:22 +03:00
Benjamin Eberlei
ff0e39bb4d
Remove @jit Docblock support for now due to dev-time constraints
2020-09-14 09:21:05 +02:00
George Peter Banyard
c8d47cf875
Convert warnings to assetions in OCI PDO driver
...
Closes GH-6118
2020-09-14 01:07:58 +02:00
Christoph M. Becker
71de8fe9b8
Mark tests as XFAIL on Windows
...
These tests segfault with tracing JIT on Windows as of a recent
commit[1]. A link to a backtrace is available in a comment[2]. For
now, we mark these tests as XFAIL, to keep AppVeyor CI helpful.
[1] <https://github.com/php/php-src/commit/7b0a05316957982f9e4cc021aec5c20cc80f7542 >
[2] <https://github.com/php/php-src/commit/7b0a05316957982f9e4cc021aec5c20cc80f7542#commitcomment-42267637 >
2020-09-13 15:38:58 +02:00
Christoph M. Becker
873c087398
Mark tests as XFAIL on Windows
...
These tests segfault with tracing JIT on Windows as of a recent
commit[1]. A link to a backtrace is available in a comment[2]. For
now, we mark these tests as XFAIL, to keep AppVeyor CI helpful.
[1] <https://github.com/php/php-src/commit/817ae414962480d133ed76618b88b3e7ba482718 >
[2] <https://github.com/php/php-src/commit/817ae414962480d133ed76618b88b3e7ba482718#commitcomment-42227420 >
2020-09-13 15:38:57 +02:00
Matteo Beccati
385423442a
Fix broken test
...
Since e8e4ddce
2020-09-13 10:02:13 +02:00
George Peter Banyard
67d21bf237
Use Error for uninitialized SQLite object
...
Closes GH-6113
2020-09-12 22:37:04 +02:00
George Peter Banyard
1f118aa24c
Fix SKIPIF section for SQLite3 test
...
Test is borked if the posix_geteui() function is unavailable.
2020-09-12 22:36:50 +02:00
Máté Kocsis
e8e4ddce77
Improve parameter handling in ext/openssl
...
Closes GH-6025
2020-09-12 22:08:41 +02:00
Máté Kocsis
3053f6f2fa
Fix prototype of get_active_function_or_method_name()
2020-09-12 19:10:48 +02:00
George Peter Banyard
c93a7b50b4
Normalize behaviour of DNS function on Windows
...
This is a follow-up on commit 4a438b4469
Add some tests to hopefully not forget it next time
2020-09-12 18:41:25 +02:00
Nikita Popov
8446e28275
Handle missing result_var in binary_op_result_type
...
For dim/obj compound ops we don't have a result_var. Not sure why
this never caused issues before, but this can crash with JIT.
2020-09-11 22:36:41 +02:00
Nikita Popov
99a68775bf
Fix mbstring fuzzer
...
mb_ereg can throw now, so we need a dummy frame and need to
free the exception afterwards.
2020-09-11 18:35:16 +02:00
George Peter Banyard
cd05b56a6f
Promote some warnings in BCMath to Errors
...
Also do a bit of refactoring at the same time.
Closes GH-6105
2020-09-11 17:40:06 +02:00
Nikita Popov
f29bfc0bd8
Use string|int union types in pgsql
...
For "field name or field offset" parameters.
Also make $ctor_params an ?array parameter.
2020-09-11 17:33:09 +02:00
Nikita Popov
b7fe1b66d0
Make argument type error message consistent for variadics
...
If an argument error refers to a variadic argument, we normally
do not print the name of the variadic (as it is not referring to
an individual argument, but to the collection of all of them).
However, this was not the case for the userland argument type
error message, which did it's own formatting.
Closes GH-6101.
2020-09-11 17:16:19 +02:00
Nikita Popov
a79008bd91
Also forbid null bytes in mail()
...
I've adjusted mb_send_mail() already, but of course the handling
in mail() should be the same.
2020-09-11 15:28:51 +02:00
Christoph M. Becker
4d86000541
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80067 : Omitting the port in bindto setting errors
2020-09-11 14:49:07 +02:00
Máté Kocsis
f293e6b920
Clean up ext/session errors
...
Closes GH-6111
2020-09-11 11:59:04 +02:00
Máté Kocsis
c98d47696f
Consolidate new union type ZPP macro names
...
They will now follow the canonical order of types. Older macros are
left intact due to maintaining BC.
Closes GH-6112
2020-09-11 11:00:18 +02:00
Máté Kocsis
a59923befd
Refactor ReflectionMethod::__construct()
...
Closes GH-6098
2020-09-11 10:59:13 +02:00
Nikita Popov
f33fd9b7fe
Throw ValueError on null bytes in mb_send_mail()
...
Instead of silently replacing with spaces.
2020-09-11 10:46:59 +02:00
Hailong Zhao
9e3e83459c
Remove the duplicate line in zend_ast.c
...
Closes GH-6107.
2020-09-11 09:51:44 +02:00
Nikita Popov
b89aee4f87
Add missing condition on azure community job
2020-09-11 09:51:44 +02:00
Dmitry Stogov
ccd0348d52
Eliminate repeatable class guards and unnecessary IS_UNDEF property checks
2020-09-11 10:30:43 +03:00
Nikita Popov
79efbb1579
Fix leak in snmp
2020-09-10 23:20:46 +02:00
Dmitry Stogov
7b0a053169
JIT for ASSIGN_OBJ
2020-09-10 23:41:50 +03:00
Dmitry Stogov
e9b47df14f
Fixed 32-bit JIT
2020-09-10 16:55:08 +03:00
Tyson Andre
09904242af
Avoid gap in AST_CLASS child nodes for attributes
...
See https://github.com/nikic/php-ast/pull/181
> Hm, I'm thinking it would make more sense to change the structure in php-src.
> All the function types have consistent AST structure, but there's no reason at
> all why classes should be consistent with functions.
It's unusual to have an unused child node between other child nodes that are
used (for name, extends, implements, and attributes of AST_CLASS)
> That gap is a leftover from a previous refactoring. An earlier version of
> attributes extended `zend_ast_decl` with a new member called `attributes` and
> therefore did not need to handle functions and classes in different ways.
Closes GH-6088
2020-09-10 09:33:46 -04:00
Remi Collet
8710429283
fix zend_hash_get_current_key_type_ex proto
2020-09-10 12:40:47 +02:00
Remi Collet
7be70c6bfc
fix zend_hash_get_current_key_ex proto
2020-09-10 12:36:44 +02:00
twosee
bd1d11d352
Simplify error type filter
...
Closes GH-6049.
2020-09-10 17:36:04 +08:00
Nikita Popov
298d2db62e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix azure i386 build, again
2020-09-10 09:58:04 +02:00
Christopher Jones
14657ec42d
Squash compile warnings the easy way
2020-09-10 17:37:18 +10:00
Christopher Jones
bca32de0c7
Make PDO_OCI test more resilient
2020-09-10 17:33:30 +10:00
Christopher Jones
bc508b0b88
Skip PDO test for Oracle
2020-09-10 17:32:44 +10:00
Christopher Jones
f8f55ba010
Fix premature test termination
2020-09-10 16:45:28 +10:00
Dmitry Stogov
00076ef2b9
Attempt to fix bug #80014 (PHP 8.0 beta2 crashes with default JIT flags due to hardware incompatibility)
2020-09-10 09:34:32 +03:00
chopins
bea44429d3
Added FFI\CType::getName() method
2020-09-10 09:14:45 +03:00
Dmitry Stogov
d2efb7e6c4
Eliminate unnecessary IS_INDIRECT guards
2020-09-10 02:20:15 +03:00
Dmitry Stogov
1c59bd5caa
Avoid more exception checks
2020-09-09 23:25:54 +03:00
Sammy Kaye Powers
3375374c33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79825 : opcache.file_cache causes SIGSEGV with custom opcode handlers
2020-09-09 13:00:25 -07:00
Nikita Popov
3861cb87c2
More pgsql func info fixes
2020-09-09 21:49:13 +02:00
Máté Kocsis
8a5e3e40a9
Fix opcache return type info for pgsql functions
2020-09-09 21:43:44 +02:00
Dmitry Stogov
817ae41496
JIT for ASSIGN_DIM[_OP] with first IS_VAR + IS_INDIRECT operand
2020-09-09 21:41:48 +03:00
Nikita Popov
68b21939ec
Use proper int type for parameter
2020-09-09 17:18:58 +02:00
Nikita Popov
6145cac1af
Fix default value
2020-09-09 17:14:14 +02:00
Nikita Popov
25d0e21d77
Use PGSQL_RETURN_OID() in more places
2020-09-09 17:09:40 +02:00
Nikita Popov
47688ab6d9
Add stub for pgsql extension
2020-09-09 16:47:10 +02:00
Nikita Popov
9a6c22da70
Remove deprecated pgsql signatures
...
As the comment indicates, these are deprecated in PHP 4.2...
2020-09-09 15:50:30 +02:00
Dmitry Stogov
ee9948bc46
Eliminate unnecessary exception checks
2020-09-09 16:15:37 +03:00
George Peter Banyard
0444158529
Promote some warnings in MBString Regexes
...
Closes GH-5341
2020-09-09 14:55:07 +02:00
Nikita Popov
8f415d4413
Promote pgsql no link to Error exception
2020-09-09 12:45:07 +02:00
Nikita Popov
3ab88831ae
Remove deprecated multi-parameter form of pg_connect()
2020-09-09 12:31:00 +02:00
Nikita Popov
d37d222835
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.
2020-09-09 11:36:38 +02:00
Nikita Popov
0222204e7f
Test snmp on azure
...
Closes GH-6100.
2020-09-09 11:24:09 +02:00
Nikita Popov
41f4e912bb
Mark snmp tests as conflicting
2020-09-09 11:24:06 +02:00
Nikita Popov
712c914fd5
Suppress uninitialized variable warning in snmp
...
These are false positive warnings.
2020-09-09 11:23:34 +02:00
Nikita Popov
73ab7b30ca
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.
2020-09-09 11:03:17 +02:00
Máté Kocsis
9975986b7e
Improve error messages mentioning parameters instead of arguments
...
Closes GH-5999
2020-09-09 10:47:43 +02:00
Dmitry Stogov
c5b42be40e
Fixed memory leak
2020-09-09 11:09:20 +03:00
Nikita Popov
e9d1893f15
Wildcard output differences in snmp tests
...
And point out that snmp-mibs-downloader is needed.
2020-09-09 10:02:25 +02:00
Dmitry Stogov
d6cc6b2dee
Tracin JIT support for FETCH_DIM_W/RW with IS_VAR + IS_INDIRECT first operand.
2020-09-09 10:35:44 +03:00
Nikita Popov
b553ba7c0d
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).
2020-09-09 09:33:36 +02:00
Nikita Popov
536e5b4953
Pass correct op_info to zend_jit_fetch_dim()
2020-09-09 09:29:28 +02:00
twosee
40e5238a00
Flesh out ZEND_HASH_REVERSE_FOREACH_* macros
...
Closes GH-6080.
2020-09-09 15:12:18 +08:00
Christopher Jones
311fa34246
Fix 3b0fecd and resulting test fail lob_012.phpt
2020-09-09 11:28:00 +10:00
Dmitry Stogov
73c7fa272d
JIT for FETCH_DIM_W/RW insructions
2020-09-09 02:41:22 +03:00
Christoph M. Becker
95cf7a0358
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`.
2020-09-08 22:54:21 +02:00
Nikita Popov
cf8d7b3eae
Don't handle missing value in zend_verify_arg_error()
...
This error condition is handled separately, never reaches this
function.
2020-09-08 20:42:45 +02:00
Alex Dowad
5b78d76ec8
mb_str_split is already documented on php.net
...
So remove TODO comment which implies that it's not.
2020-09-08 20:09:45 +02:00
Dmitry Stogov
b106463d37
JIT for IN_ARRAY instruction.
2020-09-08 21:03:51 +03:00
Christoph M. Becker
59c645b3ef
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #72941 : Modifying bucket->data by-ref has no effect any longer
2020-09-08 18:11:26 +02:00
Nikita Popov
e1c422ce4f
Try to fix 32-bit setcookie tests, again
2020-09-08 17:38:06 +02:00
Remi Collet
4c43806b61
add socket_ce and socket_import_file_descriptor in public API
2020-09-08 17:26:22 +02:00
Nikita Popov
905c79c05c
Fix some snmp stubs
...
As well as some basic mistakes in tests.
2020-09-08 17:16:57 +02:00
Nikita Popov
6e91a2ef5e
Suppress unused variable in snmp
...
force_ipv6 may be unused if compiling without ipv6 support.
2020-09-08 17:16:56 +02:00
Nikita Popov
9540e70982
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.
2020-09-08 16:29:01 +02:00
Nikita Popov
2d1b872b13
Try to fix setcookie() tests on 32-bit
2020-09-08 16:25:21 +02:00
Dmitry Stogov
a6a96116ac
micro-optimization
2020-09-08 16:47:30 +03:00
Dmitry Stogov
02b645e47a
JIT for FETCH_LIST_R
2020-09-08 16:47:15 +03:00
Máté Kocsis
3b0fecd508
Fix UNKNOWN default values in ext/oci8
...
Closes GH-6089
2020-09-08 15:38:23 +02:00
Nikita Popov
7e339a335e
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.
2020-09-08 15:23:23 +02:00
Nikita Popov
2386f655d8
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.
2020-09-08 15:02:15 +02:00
George Peter Banyard
72223159e4
Promote warnings to errors for set(raw)cookie()
...
Closes GH-5819
2020-09-08 14:28:49 +02:00
Nikita Popov
16189974dd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support more placeholders in bless_tests.php
2020-09-08 14:22:32 +02:00
Nikita Popov
3e14942756
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.
2020-09-08 14:21:01 +02:00
Nikita Popov
259af931e6
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.
2020-09-08 11:51:19 +02:00
Nikita Popov
382cb2e779
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Update libzip on macos"
Revert "Manually build re2c on macos"
2020-09-08 10:28:07 +02:00
Nikita Popov
d30a648bc8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80077
2020-09-08 10:01:27 +02:00
Dmitry Stogov
aae50328e2
decbin/decoct/dechex optimization.
2020-09-08 10:34:29 +03:00
Christopher Jones
ec158c25c4
Catch type errors so test completes and doesn't diff
2020-09-08 16:49:54 +10:00
Christopher Jones
16d79d7acc
Accept updated error number generated by the latest Oracle version
2020-09-08 16:06:33 +10:00
Christopher Jones
55afe4e7da
Yes, and mask the dir path too.
2020-09-08 15:56:26 +10:00
Christopher Jones
6134bf9ab1
Fix parsing regression from PHP 7
2020-09-08 15:48:48 +10:00
Ilija Tovilo
8a49310f4e
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
2020-09-08 00:08:18 +02:00
Nikita Popov
af0ba0b2d3
Reduce input size limit in execute fuzzer
...
We only have 4 Zend test cases > 8k. Large inputs tend to just
make things slower.
2020-09-07 22:58:34 +02:00
Dmitry Stogov
4a2ae84188
Add "const". Move constant strings to read-only memory.
2020-09-07 21:35:48 +03:00
Máté Kocsis
fd0b39905c
Promote warnings to exceptions in ext/intl
...
Closes GH-5972
2020-09-07 19:46:55 +02:00
Nikita Popov
174dadf6b4
Don't allow dynamic properties on generators
...
Noticed this because we leak those properties in GC. This was
never intended to be allowed.
2020-09-07 19:08:04 +02:00
Máté Kocsis
628db3f3b5
Fix UNKNOWN default values in various extensions
...
Closes GH-6075
2020-09-07 19:02:02 +02:00
Máté Kocsis
2c96780e1c
Fix UNKNOWN default values in ext/standard
...
Closes GH-6026
2020-09-07 18:58:11 +02:00
Nikita Popov
a249980006
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't leave behind temporary file in bug70362.phpt
2020-09-07 16:16:25 +02:00
Nikita Popov
032f862133
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.
2020-09-07 15:43:26 +02:00
Nikita Popov
f4b2497ad8
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.
2020-09-07 12:30:43 +02:00
Nikita Popov
9475bcbef7
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 .
2020-09-07 11:53:01 +02:00
Nikita Popov
f5dbebd82e
Accept zend_string instead of zval in zend_compile_string
2020-09-07 11:42:21 +02:00
Nikita Popov
85b5dc4711
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.
2020-09-07 11:12:41 +02:00
Nikita Popov
d1ac7e3ab1
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.
2020-09-07 11:05:07 +02:00
David Carlier
8e05c44496
Opcache JIT, code simplification for Haiku.
...
More straightforward approach to get the path of the
current PHP process.
Closes GH-6082.
2020-09-07 10:15:28 +02:00
Nikita Popov
e0c94677b7
Add phpunit to community project tests
2020-09-07 10:15:05 +02:00
Nikita Popov
623bf96e7e
Throw on invalid mb_http_input() type
2020-09-07 09:59:51 +02:00
Tyson Andre
ace876cdd6
Fix incorrect/unused macro
...
zend_ts_hash_init accepts 4 arguments, not 5.
The pHashFunction parameter was removed in 5d25762646
Closes GH-6087
2020-09-06 13:05:02 -04:00
Tyson Andre
1fc961e2de
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
2020-09-06 10:40:26 -04:00
Tyson Andre
9439ca5322
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
2020-09-05 17:33:20 -04:00
Nikita Popov
aa613f8b1a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix azure i386 build
2020-09-05 22:10:12 +02:00
Nikita Popov
d57f9e5ea4
Handle null encoding in mb_http_input()
2020-09-04 17:15:35 +02:00
Nikita Popov
edc8dec675
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.
2020-09-04 17:03:32 +02:00
Derick Rethans
2ee2335249
Fixed bug #80057 (DateTimeImmutable::createFromFormat() does not populate time)
2020-09-04 15:55:08 +01:00
Máté Kocsis
36cdbd0549
Promote warnings to exceptions in ext/ldap
...
Closes GH-6065
2020-09-04 15:26:16 +02:00
Máté Kocsis
8107a1da5a
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
2020-09-04 14:32:34 +02:00
Máté Kocsis
e50449bcb4
Use the canonical order of types in array|string ZPP error messages
2020-09-04 14:32:33 +02:00
Máté Kocsis
e50cb320b4
Add the Z_PARAM_ARRAY_HT_OR_NULL and Z_PARAM_OBJ macros
2020-09-04 14:31:27 +02:00
George Peter Banyard
7805b97720
Extract common flock code
...
As SPL is currently a copie of the code in file.c
Closes GH-6069
2020-09-04 14:29:31 +02:00
Nikita Popov
2e218180ef
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.
2020-09-04 14:23:14 +02:00
Nikita Popov
c0d6b05b68
Update travis to bionic
2020-09-04 14:18:58 +02:00
Nikita Popov
67e1f23999
Make gethostbyname() test more liberal
...
This returns 127.0.1.1 on travis bionic.
2020-09-04 14:18:58 +02:00
Nikita Popov
fc8cfb1b1a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid duplicate octal warning during heredoc scan ahead
2020-09-04 11:00:45 +02:00
Nikita Popov
2f95af996f
Disable InfiniteIterator class while fuzzing
...
The combination of LimitIterator and InfiniteIterator can cause
effectively infinite loops that bypass the executor step limit.
2020-09-04 10:59:55 +02:00
Dmitry Stogov
56a9eeda65
Avoid unnecessary IP initiliaization on trace linking
2020-09-04 11:42:13 +03:00
Dmitry Stogov
3f4a5003aa
Cleanup macro/function names
2020-09-04 02:10:48 +03:00
Dmitry Stogov
531d17f0bd
Load EX(opline) in one instuction if possible
2020-09-03 23:53:02 +03:00
Dmitry Stogov
c58c4be5df
Reorder DynAsm macros (no other changes)
2020-09-03 23:52:24 +03:00
George Peter Banyard
61c299fe9c
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
2020-09-03 19:27:02 +02:00
George Peter Banyard
4a438b4469
Warning to Error promotion in ext/standard
...
Those should be the last ones other than set(raw)cookie()
Closes GH-5814
2020-09-03 17:43:57 +02:00
Nikita Popov
cd1c36f772
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80049
2020-09-03 17:13:47 +02:00
Dmitry Stogov
9dc9534637
If we don't know the return address, just escape to VM, instead of adding side exit.
...
Remove unnecessary exception checks.
2020-09-03 17:12:23 +03:00
Alex Dowad
a81061d36c
Use symbolic constants in Japanese kana conversion code (not magic numbers)
...
Also correct misspelling of 'hiragana' as 'hirangana' at the same time.
2020-09-03 15:56:29 +02:00
Alex Dowad
ec609916dc
Remove unused 'from' field from mbfl_buffer_converter struct
2020-09-03 15:56:29 +02:00
Alex Dowad
f699d65391
Add comment to mbfilter_tl_jisx0201_jisx0208.h
...
Explain the 'ZEN' and 'HAN' in symbolic constant names.
2020-09-03 15:56:29 +02:00
Alex Dowad
a2b40ee9a5
Remove unneeded function mbfl_filt_ident_common_dtor
...
This was the default destructor for mbfl_identify_filter structs, but there's nothing
we actually need to do to those structs before freeing them.
2020-09-03 15:56:29 +02:00
Alex Dowad
dcd6c6043e
Remove unneeded function mbfl_filt_conv_common_dtor
...
This is a default destructor for mbfl_convert_filter structs. The thing is: there
isn't really anything that needs to be done to those structs before freeing them.
The default destructor just zeroed out some fields, but there's no reason why
we should actually do that.
2020-09-03 15:56:29 +02:00
Alex Dowad
409aa20ab0
Refactor mbfl_convert.c
2020-09-03 15:56:29 +02:00
Christoph M. Becker
c7cba01b88
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80048 : Bug #69100 has not been fixed for Windows
2020-09-03 15:46:30 +02:00
Christoph M. Becker
5fdabeb969
Fix Windows build
2020-09-03 15:31:44 +02:00
Nikita Popov
42a6ff4201
Try to fix windows build
2020-09-03 15:07:03 +02:00
Levi Morrison
94fd52dd09
Add Z_PARAM_ITERABLE and co
2020-09-03 07:03:12 -06:00
George Peter Banyard
430b3ac7df
Refactor parts of SPL Dir/SplFileObject
...
This fixes a way it was possible to trigger an Internel Error
by disabling function (via the INI setting) when SPL was acting
as a proxy to the function call.
Fix flock_compat layer as it needs to used in SPL now.
Use macro to check if object is initialized
Closes GH-6014
2020-09-03 14:23:18 +02:00
George Peter Banyard
7b3ac296a5
Fix mismatch between macro and struct definition
2020-09-03 14:01:45 +02:00
Nikita Popov
9464576f29
Fix leaks in sapi tests
...
Make sure to always free compiled_filename on shutdown.
2020-09-03 12:59:30 +02:00
Nikita Popov
7620ea1580
Don't intern compiled_filename
...
For php-ast interning the file name is an effective memory leak,
see php-ast#134.
I don't think there's any reason to do this. At some point this
was needed due to bugs in the interned string mechanism that
caused issues if the string was later interned, e.g. through a
__FILE__ reference. These issues have since been resolved.
In conjunction with the filenames_table removal in c4016ecd44
this means that filenames now need to be refcounted like normal
strings. In particular the filename reference in op_arrays and CEs
are refcounted.
2020-09-03 12:31:23 +02:00
Nikita Popov
c4016ecd44
Remove CG(filenames_table)
...
This doesn't seem to serve any purpose anymore.
2020-09-03 11:33:54 +02:00
Nikita Popov
397a692735
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80046
2020-09-03 11:19:11 +02:00
Nikita Popov
ce74ff2b3d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #80046
2020-09-03 11:18:11 +02:00
Nikita Popov
04e77d2dea
Fixed bug #80046
...
We already protect against optimizing away loop frees in DFA pass,
but not in block pass.
2020-09-03 11:18:01 +02:00
Dmitry Stogov
67e9b3be39
JIT for FE_FETCH_R
2020-09-03 12:06:06 +03:00
Christoph M. Becker
7769ae18a1
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Skip test if A: drive exists
2020-09-03 10:33:35 +02:00
Nikita Popov
3b853c97f3
Fixed bug #80045
...
Applying the obvious fix ... however, I think we may need to
rething how we handle trampoline fcc for "f" zpp. It might make
sense to use fcc->function_handler == NULL for that case and
force it to be fetched in zend_call_function instead (it will
be reset to that after the call anyway). Otherwise we will keep
chasing these leaks, as it's the only instance where it's
necessary to free a zpp result.
2020-09-03 10:29:18 +02:00
Nikita Popov
daf222c9f8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle memory limit error during string reallocation correctly
2020-09-03 09:51:54 +02:00
Dmitry Stogov
6b521a98d4
Fixed support for deprecated constants (Zend/tests/const_deprecation.phpt failure)
2020-09-03 10:49:58 +03:00
Dmitry Stogov
91edb90767
JIT for FETCH_CONSTANT
2020-09-03 00:51:43 +03:00
Dmitry Stogov
508f8285e2
Reorder switch cases for consistency between zend_jit() and zend_jit_trace()
2020-09-02 23:16:58 +03:00
Anatol Belski
e64c386b62
libmagic: Update patch
...
[ci skip]
Signed-off-by: Anatol Belski <ab@php.net >
2020-09-02 21:25:24 +02:00
Alex Dowad
73dcfb6faa
Fix typos in mbstring tests
...
Man, I can be pedantic sometimes. Tiny little things like misspelled words just
hurt me inside. So while it's not really a big deal, I couldn't leave these typos
alone...
2020-09-02 20:48:22 +02:00
Benjamin Eberlei
842be67b60
Update NEWS, UPGRADING
2020-09-02 20:32:52 +02:00
Benjamin Eberlei
8b37c1e993
Change Attribute Syntax from @@ to #[]
2020-09-02 20:26:50 +02:00
Anatol Belski
f2b40775af
Revert "libmagic: Move the allocation on the stack"
...
This reverts commit 1d84a58736 .
Signed-off-by: Anatol Belski <ab@php.net >
2020-09-02 20:04:00 +02:00
Dmitry Stogov
f3f5719355
JIT for FE_FETCH_R
2020-09-02 20:10:02 +03:00
Anatol Belski
8c31001bf1
libmagic: Constify arg
2020-09-02 17:35:51 +02:00
Anatol Belski
1d84a58736
libmagic: Move the allocation on the stack
2020-09-02 17:35:51 +02:00
Anatol Belski
3d1e7d37eb
hash: Fix warning in the bench script
2020-09-02 17:35:51 +02:00
Nikita Popov
05cd31ef64
Extend function blacklist in execute fuzzer
...
Add pfsockopen and stream_socket_server.
2020-09-02 17:30:19 +02:00
Nikita Popov
0bc2657b2f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix binary-safety of parse_url
2020-09-02 16:46:49 +02:00
Dmitry Stogov
0d157cf526
Micro-optimization
2020-09-02 17:31:48 +03:00
Frank Du
c3299d7dab
X86: Fast CRC32 computation using PCLMULQDQ instruction
...
Based on:
"Fast CRC Computation for Generic Polynomials Using PCLMULQDQ Instruction"
V. Gopal, E. Ozturk, et al., 2009, http://intel.ly/2ySEwL0
Signed-off-by: Frank Du <frank.du@intel.com >
Closes GH-6018
2020-09-02 15:10:41 +02:00
Michael Voříšek
cb284f668c
Fix typo in test description
...
Closes GH-6062.
2020-09-02 13:07:40 +02:00
Dmitry Stogov
4d97ab20fc
Added missing helper
2020-09-02 12:59:52 +03:00
Dmitry Stogov
225cd9da86
Improved JIT for VERIFY_RETURN_TYPE
2020-09-02 12:55:16 +03:00
Máté Kocsis
3e800e997b
Move custom type checks to ZPP
...
Closes GH-6034
2020-09-02 11:11:38 +02:00
Nikita Popov
ddc2a2d381
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix throwing of yield from related exceptions into generator
2020-09-02 10:53:44 +02:00
Dmitry Stogov
c98e1747a8
Minimal JIT support for JMP_NULL
2020-09-02 11:49:42 +03:00
Nikita Popov
8b6b2bda09
Fix by-ref list assign LIST_W+MAKE_REF separation
...
Shift the responsibility for emitting MAKE_REF to the list assignment
code, to make sure that LIST_W and MAKE_REF are directly adjacent,
and there are no opcodes in between that could modify the LIST_W
result.
Additionally, adjust the zend_wrong_string_offset() code to not
perform a loop over opcodes and assert that the next opcode is
a relevant one. The VM write-safety model requires this.
This is a followup to a07c1f56aa
and the full fix for oss-fuzz #25352 .
2020-09-02 10:26:55 +02:00
Nikita Popov
aedc7b0fb4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix infinite loop on string offset during by-ref list assign
2020-09-02 10:16:46 +02:00
Dmitry Stogov
7484b8f036
Preallocate zval for unused result of internal function on CPU stack
2020-09-02 02:03:38 +03:00
Nikita Popov
a8687804bb
Disable ifunc resolvers under dataflow sanitizer
...
As with other sanitizers, this is not supported.
2020-09-01 20:37:43 +02:00
Nikita Popov
c6ea0e90c2
Assert there are children in zend_generator_get_child()
2020-09-01 20:37:43 +02:00
Gabriel Caruso
1e8e8ab6c9
Update NEWS for 8.0.0rc1
2020-09-01 17:19:26 +00:00
Gabriel Caruso
ea14de77cc
Update NEWS for PHP 8.0.0beta3
2020-09-01 17:08:27 +00:00
66c3e900e2
Add zend_observer API
...
Closes GH-5857.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
Co-authored-by: Sammy Powers <sammyk@datadoghq.com >
2020-09-01 09:59:59 -06:00
Dmitry Stogov
bd8e0a96a5
Eliminate useless EG(exception) checks aftr FE_RESET/FE_FETCH
2020-09-01 18:56:47 +03:00
Máté Kocsis
f7fbc6333f
Add more precise type info for stubs
...
Closes GH-6005
2020-09-01 16:35:56 +02:00
Dmitry Stogov
1c56b40a5c
Eliminate some EX_CALL_INFO() checks
2020-09-01 16:26:29 +03:00
Nikita Popov
88a8ebce6a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check for null EX(func) in write_property
2020-09-01 15:17:28 +02:00
George Peter Banyard
5c1cf7669b
Prepend compiler warning flags to CFLAG instead to append them
...
Credit to @bwoebi for the idea
Closes GH-6057
2020-09-01 14:45:57 +02:00
Nikita Popov
48e31be7a3
Fix FE_FETCH_R_SIMPLE specialization
...
After a99d08b5d1 the type can
include UNDEF. However, UNDEF can only reach FE_FREE, not FE_FETCH.
As such, simply ignore this type.
2020-09-01 14:43:06 +02:00
Nikita Popov
6ff5b3df1c
Avoid null pointer UB in accel blacklist
...
Pretty annoying...
2020-09-01 14:43:06 +02:00
Máté Kocsis
47d9446c48
Promote warnings to exceptions in ext/soap and ext/xmlwriter
...
Closes GH-5998
2020-09-01 14:22:19 +02:00
Máté Kocsis
7476d2c188
Promote warnings to exceptions in ext/tidy
...
Closes GH-6051
2020-09-01 14:18:02 +02:00
Nikita Popov
a99d08b5d1
Fix type inference for FE_RESET on invalid type
...
FE_RESET sets the result to UNDEF in this case. We should infer
some type here, because no type generally implies unreachable
code. In this case SCCP ended up replacing the FE_RESET result
with null, including in FE_FREE.
2020-09-01 13:59:36 +02:00
Nikita Popov
c088a9369f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix pi node removal when removing predecessor
2020-09-01 12:26:18 +02:00
Nikita Popov
682823b75b
Add explicit double cast
...
Avoid precision warning.
2020-09-01 12:25:38 +02:00
Dmitry Stogov
91d7e872e0
Fixed nested init fcall guards.
2020-09-01 12:24:11 +03:00
Alex Dowad
b03fd37677
Code cleanup in mbstring.c
2020-08-31 23:19:43 +02:00
Alex Dowad
cdc664049c
Comment constants in mbfl_consts.h, remove unused ones
...
These were unused, and almost certainly will never be used:
- MBFL_ENCTYPE_MWC4BE
- MBFL_ENCTYPE_MWC4LE
- MBFL_ENCTYPE_SHFTCODE
- MBFL_ENCTYPE_ENC_STRM
For the latter two, there were some encodings which were marked with these flags;
but nothing ever _checked_ these particular flags.
2020-08-31 23:18:56 +02:00
Alex Dowad
3a100cd7ac
Add comment on mbstring East Asian Width table
2020-08-31 23:18:45 +02:00
Alex Dowad
7eddcabe2b
Don't guard mbstring code with #ifdef HAVE_MBSTRING
...
This is just a very silly feature of mbstring -- you can compile the source files with
HAVE_MBSTRING undefined, and it will all just compile to (almost) nothing. What is the
use of this? Why compile the source files and link against them if you don't want the
mbstring extension? It doesn't make any kind of sense.
2020-08-31 23:18:13 +02:00
Alex Dowad
62317d592f
Remove redundant includes from mbstring (and make sure correct config.h is used)
...
Very interesting... it turns out that when Valgrind support was enabled,
`#include "config.h"` from within mbstring was actually including the file "config.h"
from Valgrind, and not the one from mbstring!!
This is because -I/usr/include/valgrind was added to the compiler invocation _before_
-Iext/mbstring/libmbfl.
Make sure we actually include the file which was intended.
2020-08-31 23:17:58 +02:00
Alex Dowad
b7808d02e8
Remove useless definition of NULL in mbfl_string.h
...
If NULL is not defined by the platform, mbfl_defs.h already defines it.
2020-08-31 23:17:49 +02:00
Alex Dowad
ea3f0ee0b9
Optimize php_unicode_convert_case (cuts mbstring case conversion time ~15%)
...
This function uses various subfunctions to convert case of Unicode wchars.
Previously, these subfunctions would store the case-converted characters in
a buffer, and the parent function would then pass them (byte by byte) to
the next filter in the filter chain.
Rather than passing around that buffer, it's better for the subfunctions to
directly pass the case-converted bytes to the next filter in the filter chain.
This speeds things up nicely.
2020-08-31 23:17:25 +02:00
Alex Dowad
ddc76e5abf
Fix typos in comments in mb_send_mail
2020-08-31 23:17:14 +02:00
Alex Dowad
a64241b540
Remove unused functions from mbstring
...
- mbfl_buffer_converter_reset
- mbfl_buffer_converter_strncat
- mbfl_buffer_converter_getbuffer
- mbfl_oddlen
- mbfl_filter_output_pipe_flush
- mbfl_memory_device_output2
- mbfl_memory_device_output4
- mbfl_is_support_encoding
- mbfl_buffer_converter_feed2
- _php_mb_regex_globals_dtor
- mime_header_encoder_feed
- mime_header_decoder_feed
- mbfl_convert_filter_feed
2020-08-31 23:16:57 +02:00
Alex Dowad
8d13348bb5
Separate implementation of mb_{en,de}code_numericentity
...
Rather than using a magic boolean parameter to choose different behavior of
the subfunction, inline it. The code size doesn't really grow anyways. And
soon these will be trimmed down more.
2020-08-31 23:16:28 +02:00
Alex Dowad
29b02bf290
Use new-style argument parsing macros in mbstring.c
2020-08-31 23:16:21 +02:00
Alex Dowad
d4ef7ef11d
Inline unneeded indirection for mbstring memory management
...
All memory allocation and deallocation for mbstring bounces through a table of
function pointers before going to emalloc/efree/etc. But this is unnecessary.
The allocators are never swapped out. Better to just call them directly.
2020-08-31 23:16:09 +02:00
Alex Dowad
dc98c1346d
Additional tests for mbstring extension
2020-08-31 23:15:57 +02:00
Christoph M. Becker
d4d52ba945
Prevent com::__construct() to modify the $server_name array
...
We switch to `zend_string`s for simplicity, so there's no need to
`convert_to_string()` anymore, what makes the array separation
superfluous.
Closes GH-6040
2020-08-31 17:44:27 +02:00
Nikita Popov
4acac9bd72
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak on assign concat of array and empty string
2020-08-31 17:06:21 +02:00
Nikita Popov
2022f2e5c9
Fix nullsafe operator with delayed oplines
...
Closes GH-6056.
2020-08-31 16:44:36 +02:00
Ilija Tovilo
70300f6c9d
Add tests for nullsafe operator on delayed oplines
2020-08-31 16:44:36 +02:00
Dmitry Stogov
4163923e83
More agressive "packed array" guards insertion
2020-08-31 16:34:56 +03:00
Nikita Popov
53a87547c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak on consteval exception in ReflectionClass::__toString()
2020-08-31 15:10:53 +02:00
Nikita Popov
1036fd2a70
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check update constant failure in ReflectionClassConstant::__toString()
2020-08-31 14:50:40 +02:00
Nikita Popov
ecd986c879
Fix build warnings after timelib update
2020-08-31 14:28:39 +02:00
Dmitry Stogov
5828d547ba
Perform type guard checks before IS_UNDEF checks (check IS_UNDEF during deoptimization)
2020-08-31 15:25:23 +03:00
Nikita Popov
b4196ae9df
Fix fetching default value of internal function with userland arginfo
...
"Fix" in the sense of "not crash". We aren't able to actually
display the default value for this case, as there's no way to
fetch the relevant information right now.
2020-08-31 14:03:54 +02:00
Derick Rethans
bef20d47af
Merge branch 'PHP-7.4' into master
2020-08-31 12:33:44 +01:00
Derick Rethans
8ec906563c
Update timelib to 2020.02
2020-08-31 12:23:54 +01:00
Derick Rethans
c9b5a29eb6
Merge branch 'master' of git.php.net:php-src into master
2020-08-31 12:03:21 +01:00
Derick Rethans
0bc8785b61
Update timelib to 2020.01
2020-08-31 12:03:08 +01:00
Máté Kocsis
1410cd6b08
Promote warnings to exceptions in ext/ftp
...
Closes GH-6054
2020-08-31 12:49:17 +02:00
Derick Rethans
4a84aca68f
Merge branch 'PHP-7.4' into master
2020-08-31 11:42:20 +01:00
Nikita Popov
50975640bc
Fixed bug #80030
2020-08-31 12:38:11 +02:00
Nikita Popov
570f463fb8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #80037
2020-08-31 12:19:00 +02:00
Nikita Popov
0e9d76ee62
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #80039
2020-08-31 11:22:51 +02:00
Matteo Beccati
dc4d5548df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #80027 Terrible performance using $query->fetch on queries with many bind parameters
2020-08-31 11:09:36 +02:00
Matteo Beccati
ee2506cc02
Fix #80027 Terrible performance using $query->fetch on queries with many bind parameters
...
Added new flags that allow skipping param_evt(s) that are not used by drivers,
in a backwards and forward compatible manner. Updated the pgsql, mysql, sqlite
and oci drivers to properly use the new flags. I've left out pdo_dblib, which
doesn't have a param_hook, and pdo_firebird, which seems to be using
PARAM_EVT_NORMALIZE in a wrong context (param type vs event type).
2020-08-31 11:02:34 +02:00
Nikita Popov
ad97739eac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix handling of exception if valid() during yield from
2020-08-31 10:52:07 +02:00
Nikita Popov
061c708a93
Correctly report failure in zend_handle_undef_args()
...
And do the check before increfing the closure object, otherwise
we'd have to release it as well.
Fixes oss-fuzz #25313 .
2020-08-31 10:37:55 +02:00
Nikita Popov
e81becce08
Fix trampoline leak in array_map
2020-08-31 10:14:39 +02:00
Jamie Liu
c8093fe94a
Fix bug #80018 : Tolerate var_dump() printing floats in exponential notation in tests
2020-08-31 09:51:01 +02:00
Nikita Popov
5f4b169be8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make MAX_IFD_NESTING_LEVEL an actual nesting level
2020-08-31 09:36:48 +02:00
twosee
f982038fb6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve error_handing replacement functions
# Conflicts:
# Zend/zend_API.c
2020-08-30 17:06:59 +08:00
Anatol Belski
486866c1b9
libmagic: Update patch [ci skip]
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 21:27:01 +02:00
Anatol Belski
9ddf8e524a
EXTENSIONS: Update fileinfo maintainership info [ci skip]
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 21:05:10 +02:00
Anatol Belski
66f15e7e92
NEWS: Add libmagic note [ci skip]
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 21:04:34 +02:00
Anatol Belski
c676e8f356
libmagic: Fix VS compat
2020-08-29 19:58:26 +02:00
Anatol Belski
f8f288145b
libmagic: Remove unneeded includes
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 19:41:53 +02:00
Anatol Belski
bf93f1d824
fileinfo: Followup fixes
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 19:03:41 +02:00
Anatol Belski
c3eeab01ba
fileinfo: Upgrade to libmagic 5.39
...
Signed-off-by: Anatol Belski <ab@php.net >
2020-08-29 02:05:56 +02:00
Christoph M. Becker
1902f730ee
Support cli_server.color on Windows
...
On Windows, we have to check whether stdout is attached to a console,
and whether that console supports VT100 control codes.
Closes GH-5996
2020-08-28 18:45:09 +02:00
Nikita Popov
a1a4c03b9b
Fix call to type error functions from jit
...
Missed to adjust those calls.
2020-08-28 17:37:00 +02:00
Nikita Popov
86364013f9
Avoid ubsan warning with dummy cache slot addr
2020-08-28 17:24:21 +02:00
Nikita Popov
927771333b
Fix unused variable warning
2020-08-28 17:19:32 +02:00
Nikita Popov
b2bc2c62fa
Remove unnecessary cache_slot arguments
...
zend_verify_type_error_common() no longer needs the cache_slot,
so drop it there and from all users.
2020-08-28 17:15:09 +02:00
Nikita Popov
f0dfdca0ae
Fix execute fuzzer on i386
...
Opcode handlers use the FASTCALL calling convention...
2020-08-28 17:03:54 +02:00
Nikita Popov
2c15c9ce80
Rehash function table after disabling functions
...
To perform fast shutdown without full table cleanup we need all
internal functions to be in one continuous chunk. This was
violated when functions were deleted via disable_functions.
This drops the zend_disable_function() API in favor of
zend_disable_functions(), which disables the given list of
functions and performs the necessary rehash afterwards.
Also drop PG(disabled_functions), which is no longer used.
2020-08-28 16:50:07 +02:00
Nikita Popov
138f141605
Don't mark variadic functions as ZEND_FASTCALL
...
Variadic functions do not support the fastcall calling convention.
2020-08-28 16:45:13 +02:00
George Peter Banyard
fa8d9b1183
Improve type declarations for Zend APIs
...
Voidification of Zend API which always succeeded
Use bool argument types instead of int for boolean arguments
Use bool return type for functions which return true/false (1/0)
Use zend_result return type for functions which return SUCCESS/FAILURE as they don't follow normal boolean semantics
Closes GH-6002
2020-08-28 15:41:27 +02:00
Dmitry Stogov
7690439edd
Don't load IP when entering inlined function
2020-08-28 13:27:35 +03:00
Nikita Popov
5db44e39b1
Fix tracked_realloc
...
We should only drop the information about the old allocation after
checking the memory limit. This makes the code a bit more awkward...
2020-08-28 11:37:42 +02:00
Nikita Popov
32315c247f
Promote incomplete class to modification to Error
...
In line with engine diagnostic promotions, property writes throw
an Error exception, while reads throw a warning.
2020-08-28 11:14:43 +02:00
Nikita Popov
f965e20059
Promote ArrayObject modification during sorting to Error exception
2020-08-28 10:42:14 +02:00
Nikita Popov
99c5e083ca
Throw Error instead of E_ERROR when calling method on incomplete class
...
There's no reason for this to abort execution completely.
2020-08-28 10:34:21 +02:00
Nikita Popov
4ce38304bb
Remove unused BG(str_ebuf) global
...
Also change BG(strtok_len) to size_t. This stores a string length,
so it should be size_t rather than zend_ulong.
2020-08-28 10:14:41 +02:00
Nikita Popov
df5011f56c
Export and reuse zend_is_valid_class_name API
...
Unserialization does the same check as zend_lookup_class, so let's
share the same optimized implementation.
2020-08-28 10:06:01 +02:00
Nikita Popov
c47011ba05
Use zend_string when storing incomplete class name
...
No need to copy the string here...
2020-08-28 10:01:46 +02:00
Nikita Popov
1d0f55315e
Store incomplete_class entry as normal global
...
I don't see any reason why this needs to live in a thread-safe
global, unlikely all other class entries.
2020-08-28 09:57:54 +02:00
Dmitry Stogov
1c1165f8cd
Avoid useless IP load
2020-08-28 00:53:09 +03:00
Dmitry Stogov
0866208988
Remove useless register allocations
2020-08-28 00:02:10 +03:00
Dmitry Stogov
972041d68d
Replace "mov %eax, %ecx; shl $1, $ecx" by "lea (%eax,%eax), %ecx"
2020-08-27 22:59:30 +03:00
Nikita Popov
bb1d0319d7
Fix typo
...
This was supposed to include the header, not the C file...
2020-08-27 16:57:09 +02:00
Nikita Popov
a88226d116
Generate execute corpus in generate_all.php
...
And add crypt() to the function blacklist, it can be very slow.
2020-08-27 16:34:36 +02:00
Nikita Popov
ac98ac7225
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't assert when comparing uninit DateTimeZone objects
2020-08-27 16:20:24 +02:00
Nikita Popov
e083cfaf6d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Require non-negative length in stream_get_contents()
2020-08-27 15:51:58 +02:00
Nikita Popov
a3d0d947bd
Use zend_dval_to_lval() in spl_offset_convert_to_long()
...
Avoid fptoi UB and use the standard PHP conversion behavior.
2020-08-27 14:53:56 +02:00
Nikita Popov
a2bbd8f01f
Fix leak in typed reference assignment
...
We're only creating tmp here to compare against the existing
coerced_value. We need to destroy it in all cases.
2020-08-27 14:40:35 +02:00
Dmitry Stogov
e701146070
Update operands range information accoring to the taken branches and use this indormation to eliminate useless overflow checks.
2020-08-27 15:29:11 +03:00
Nikita Popov
c29838c561
Add experimental "execute" fuzzer
...
This is an end-to-end fuzzer that executes arbitrary PHP code.
We replace the executor with a finite-step executor to avoid
getting stuck in loops or recursion.
2020-08-27 13:06:24 +02:00
Nikita Popov
988fc94bbb
Fix leak on failed DatePeriod initialization
...
We need to free not only p here, but also b and e.
2020-08-27 12:54:43 +02:00
Nikita Popov
614c0b846e
Allow removing non-existing key from WeakMap
...
In line with usual PHP semantics. This previously triggered an
assertion failure.
2020-08-27 12:42:08 +02:00
Nikita Popov
ce83ec8790
Clean up strtok implementation
...
Store the zend_string instead of performing a copy and storing
in a zval. Also make sure the string is released immediately if
it's no longer needed. Finally, avoid null pointer offset UB if
no string has been set -- though I'm wondering if this case
shouldn't be generating a warning?
2020-08-27 12:24:58 +02:00
Nikita Popov
0026d8a783
Fix use-after-free is WeakMap key and value are the same
...
Drop the object from the WeakMap as the last step, as this might
end up destroying the object.
2020-08-27 12:05:06 +02:00
Dmitry Stogov
9d409f2c1e
Eliminate ZSTR_IS_INTERNED() check
2020-08-27 11:38:15 +03:00
Christoph M. Becker
f956434df2
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Catch potential exceptions during to string conversion
2020-08-27 10:26:15 +02:00
Nikita Popov
bd6feb7b12
Enforce memory limit in tracked allocation mode
...
A very basic limit (for single allocations) was already enforced.
This extends it to count the total memory allocations.
This is useful to avoid out of memory conditions while fuzzing.
2020-08-27 10:18:18 +02:00
Dmitry Stogov
3ead24ecfa
Check interrupt only if the link is a part of the loop.
2020-08-27 11:04:23 +03:00
Dmitry Stogov
c4fc453771
Rename zend_jit_var_may_be_modified_indirectly() into zend_jit_var_may_alias()
2020-08-27 10:31:39 +03:00
Dmitry Stogov
16b3b339ed
Check reference guard once
2020-08-27 00:40:55 +03:00
Dmitry Stogov
b9e3de0a32
Use "movaps" instead of "movsd" to copy the whole %xmm register.
2020-08-26 21:13:55 +03:00
Dmitry Stogov
c1f14b8a49
Fixed reference-counting
2020-08-26 18:56:54 +03:00
Nikita Popov
e069032e5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Property handle read_property exception in fetch_property_address
2020-08-26 16:13:10 +02:00
Christoph M. Becker
00edc3f4bc
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix com_safearray_proxy related memory management issues
2020-08-26 15:43:43 +02:00
Nikita Popov
55798e0e39
Lowercase method name in zend_call_method()
2020-08-26 15:19:23 +02:00
Nikita Popov
86cd009718
Fix pass by ref error for named params
2020-08-26 15:10:08 +02:00
Christoph M. Becker
2f9e9d4d97
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Separate COM::__construct()s $server_name array
2020-08-26 15:02:34 +02:00
Christoph M. Becker
fc4a6cda4b
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #64130 : COM obj parameters passed by reference are not updated
2020-08-26 14:55:34 +02:00
George Peter Banyard
1b2ec73c1d
Drop various unused macros/APIs
...
Also convert_libmagic_pattern() to return a zend_string*
Closes GH-6029
2020-08-26 12:59:43 +02:00
Nikita Popov
ebbe333ede
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file name clash in test
2020-08-26 12:32:22 +02:00
Nikita Popov
795ad1e354
Fix memory leak on unknown named param in iterator unpack
2020-08-26 12:19:17 +02:00
Nikita Popov
eb17f996fb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid socket path clash in test
2020-08-26 12:12:23 +02:00
Dmitry Stogov
083f5f2005
Improved JIT for FETCH_DIM_R/IS and ISSET_DIM_OBJ
2020-08-26 13:09:16 +03:00
Nikita Popov
1003ae2692
Fix passing of undef var to named arg
...
This needs to use the previously computed argument target.
2020-08-26 11:53:02 +02:00
Nikita Popov
492621f99e
Fix memory leak on unknown named param
2020-08-26 11:44:15 +02:00
Nikita Popov
d7d2b060e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak when yielding from non-iterable
2020-08-26 11:32:56 +02:00
Nikita Popov
1954aed745
Fix over-eager named params optimization
...
We can't relax a named param to a positional param if we encountered
any unknown parameters in the meantime.
2020-08-26 11:01:15 +02:00
Nikita Popov
f593019819
Prevent ResourceBundle double-construction
2020-08-26 10:25:15 +02:00
Nikita Popov
6b554251f7
Prevent double-construction of NumberFormatter
2020-08-26 10:25:09 +02:00
Nikita Popov
72eaf509d3
Prevent double-construction of IntlGregorianCalendar
2020-08-26 10:24:57 +02:00
Nikita Popov
f6e5cc3391
Prevent double-construction of IntlRuleBasedBreakIterator
2020-08-26 10:03:28 +02:00
Dmitry Stogov
d4383be6fa
Use guard to check if array is packed or hash
2020-08-26 02:34:31 +03:00
Dmitry Stogov
5948a6674a
Prevent negative array index access
2020-08-26 01:07:34 +03:00
Dmitry Stogov
145aba5c83
Merge branch 'jit_match'
...
* jit_match:
Support for CASE_STRICT
JIT for MATCH and CASE_STRICT instructions
2020-08-25 22:33:52 +03:00
Dmitry Stogov
e99954492e
Avoid priniting "array [long, string] of"
2020-08-25 21:38:23 +03:00
Nikita Popov
c2c90cfc65
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't enable --with-mm in CI
2020-08-25 20:26:17 +02:00
Dmitry Stogov
e86b5c872d
Record information about packed arrays
2020-08-25 19:39:42 +03:00
Máté Kocsis
ea87d0480f
Promote warnings to exceptions in ext/pcre
...
Closes GH-6006
2020-08-25 18:09:50 +02:00
Dmitry Stogov
2369f48092
Infer information about packed/hash arrays and use it for JIT
2020-08-25 18:28:23 +03:00
Nikita Popov
647fb38d58
Ensure RuleBasedBreakIterator constructor throws on failure
...
Constructors must throw on failure indepdendent of the configured
intl error mode.
2020-08-25 15:28:58 +02:00
Máté Kocsis and Nikita Popov
6c8fb123d2
Promote warnings to exceptions in ext/simplexml
...
Closes GH-6011
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-08-25 15:15:58 +02:00
Dmitry Stogov
f77200f5c6
Fixed JIT failure on "$a = []; $a[1] += 2;"
2020-08-25 16:08:33 +03:00
Christoph M. Becker
7e5ed818a4
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Avoid double-free
2020-08-25 13:15:06 +02:00
Nikita Popov
259d050a39
Clean up BreakIterator create_object handler
...
Use standard zend_object_alloc() function and fix the
object_init_properties() call (which works out okay because there
are no properties).
2020-08-25 13:11:43 +02:00
Nikita Popov
5ecefd0760
Fix XMLWriter::writeDtdEntity() stub
...
$isparam is optional.
2020-08-25 13:11:43 +02:00
Máté Kocsis
d54bc29540
Promote warnings to exceptions in ext/shmop
...
Closes GH-5986
2020-08-25 13:09:23 +02:00
Máté Kocsis
3df306de94
Promote warnings to exceptions in ext/pcntl
...
Closes GH-6004
2020-08-25 13:02:13 +02:00
Nikita Popov
4a98b64413
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove bogus REGISTER_LONG_CONSTANT
2020-08-25 12:36:06 +02:00
twosee
9f05c32704
Remove useless same_zval function
...
Closes GH-6039.
2020-08-25 18:02:38 +08:00
Máté Kocsis
be5ba20132
Promote warnings to exceptions in ext/phar
...
Closes GH-6008
2020-08-25 11:57:37 +02:00
Máté Kocsis
f068fbcf1f
Promote warnings to exceptions in ext/xmlreader
...
Closes GH-6021
2020-08-25 11:54:45 +02:00
Nikita Popov
f4e9d0e325
Don't return temporary from SXE write_property handler
...
Return the original value. If we don't return the original value,
we need to own the zval, which we don't.
For clarity also switch things to work on a zend_string* value
instead of a zval*.
2020-08-25 11:28:44 +02:00
Nikita Popov
afde6dcf5f
Simplify change_node_zval implementation
...
At this point, the value has already been converted into a string.
2020-08-25 11:01:48 +02:00
Dmitry Stogov
d384537859
Move AVOID_REFCOUNTING type info flag into a separate bit
2020-08-25 11:37:30 +03:00
Dmitry Stogov
54fd1fcd27
Support for CASE_STRICT
2020-08-25 00:53:39 +03:00
Dmitry Stogov
ef7904b35c
JIT for MATCH and CASE_STRICT instructions
2020-08-25 00:53:39 +03:00
Christoph M. Becker
ecf4e7063d
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix potential integer overflow detected by oss-fuzz
2020-08-24 17:38:50 +02:00
Máté Kocsis
1fb66b8114
Promote warning to exception in ext/enchant
...
Closes GH-6022
2020-08-24 17:37:20 +02:00
Máté Kocsis
ffff237497
Promote warning to exception in ext/posix
...
Closes GH-6009
2020-08-24 17:34:33 +02:00
Máté Kocsis
cc35cfd2eb
Promote warnings to exceptions in ext/filter
...
Closes GH-5970
2020-08-24 17:34:32 +02:00
Nikita Popov
c557c410af
Drop a spurious zend_string_release
...
This should have been dropped in the refactoring.
2020-08-24 17:30:31 +02:00
Nikita Popov
9feb98859f
Clean up setlocale implementation
...
Factor out the core logic into a separate function and drop the
"clever" code that combines iteration through variadic arguments
and arrays.
This fixes bug #79829 as a side effect.
2020-08-24 17:09:33 +02:00
Nikita Popov
8c3574bd6c
Remove php_my_setlocale workaround
...
This works around a macro-expansion issue that is no longer
relevant in PHP 8.
2020-08-24 16:50:03 +02:00
Nikita Popov
7a6ae9b148
Fix refcounting for the named params case as well
...
Adjust the test case to pass a refcounted value and to also check
the named params case.
2020-08-24 16:30:49 +02:00
Nikita Popov
779e904465
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix refcounting
2020-08-24 16:23:33 +02:00
Tyson Andre
e056e2dae9
Check for duplicate names in gen_stub.php
...
With named arguments in php 8.0, it's important that php's modules
or PECL extensions using gen_stub.php don't generate functions
with duplicate names.
Warn if a parameter name is repeated,
even if the last occurrence is a variadic parameter
Closes GH-6035
2020-08-24 09:31:46 -04:00
Christoph M. Becker
5643f34a1e
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #79979 : passing value to by-ref param via CUFA crashes
2020-08-24 15:03:26 +02:00
Berbe
bfeb2f6abc
Fix: Gracefully handle empty user input in run-tests.php
...
Closes GH-6016.
2020-08-24 11:46:01 +02:00
David Carlier
32c6a0bbbb
further network libraries detection for Haiku system.
...
Closes GH-5997.
2020-08-24 11:37:48 +02:00
Christoph M. Becker
c925028d49
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #79986 : str_ireplace bug with diacritics characters
2020-08-24 11:10:09 +02:00
Christoph M. Becker
08d2e511e4
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80002 : calc free space for new interned string is wrong
2020-08-24 11:04:27 +02:00
Nikita Popov
9395e01e3d
Check variadic parameter for type and duplicate name
...
Set HAS_TYPE_HINTS flag if the variadic parameter is types as well,
and make sure it has a distinct name. This was previously missed,
because the variadic parameter is not part of num_args.
2020-08-24 10:15:57 +02:00
Kees Cook
2c2bb50984
sapi/fpm/config.m4: check for libapparmor's aa_change_profile()
...
The fpm code actually uses aa_change_profile(), not change_hat(). Test
for the correct function. (libapparmor always has both, so this is just
a correctness fix.)
Closes GH-6037.
2020-08-24 10:10:12 +02:00
Dmitry Stogov
5c18ee58b9
Fixed use-after-free introduced by aed1f78515
2020-08-24 09:50:54 +03:00
Máté Kocsis
118406a31c
Remove custom hacks from gen_stub.php after PHP-Parser upgrade
2020-08-23 21:17:05 +02:00
Tyson Andre
4bba59d491
Update PHP-Parser from 4.3.0 to 4.9.0
...
PHP-Parser 4.3.0 failed to recognize that the `match` keyword could be
used as a class constant name.
4.9.0 also adds support for keywords in namespaced names.
See https://github.com/nikic/PHP-Parser/releases
So forcing regeneration of spl_iterators.stub.php failed.
PECL extensions using gen_stub.php would also be affected
by the same issue.
```
ext/spl/spl_iterators.stub.php
public function __construct(Iterator $iterator, string $regex,
int $mode = self::MATCH, int $flags = 0, int $preg_flags = 0) {}
```
Testing: I successfully regenerated stubs by setting forceRegeneration to true
and running `touch **/*.stub.php; make`.
The stubs did not change, as expected.
Closes GH-6036
2020-08-23 11:51:57 -04:00
Christoph M. Becker
e6044d4455
Fix #55847 : DOTNET .NET 4.0 GAC new location
...
If we do not specify the exact version of the .NET framework to use,
the default CLR is loaded, which is typically CLR 2, which is very old.
Therefore, we introduce a `PHP_INI_SYSTEM` setting, which allows users
to choose the desired .NET framework version. The value of the setting
are the first three parts of the framework's version number, separated
by dots, and prefixed with "v", e.g. "v4.0.30319". If the value of the
INI setting is `NULL` (the default) or an empty string, the default CLR
is used.
Internally, we switch from the most generic `CoCreateInstance()` to
`CorBindToRuntime()` which is implemented in mscoree.dll. To avoid the
hard dependency to that library, we load dynamically.
So this fix is supposed to be fully backwards compatible.
Closes GH-5949
2020-08-22 12:42:34 +02:00
Christoph M. Becker
969a432fd8
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #80007 : Potential type confusion in unixtojd() parameter parsing
2020-08-22 12:34:24 +02:00
Christopher Jones
47c787ff5b
Squash a Linux compile warning
2020-08-22 11:37:23 +10:00
David Carlier
f32653accc
fileinfo build fix proposal for haiku.
...
Haiku already defines a unichar type and different than the fileinfo's anyway.
Closed GH-5983
2020-08-21 16:13:09 +02:00
Christoph M. Becker
3c5412fc8f
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
sqlite3 linkage issue on some systems/package combination fix.
2020-08-21 15:46:30 +02:00
Christoph M. Becker
13419befff
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix wrong datatype
2020-08-21 15:30:07 +02:00
Remi Collet
8c57474e35
ensure installed ini don't interfere
2020-08-21 14:41:35 +02:00
Christopher Jones
ff66e4945e
OCI8 classes were already renamed in 8; this now follows the new-new standard
2020-08-21 17:46:16 +10:00
Dmitry Stogov
8095a0ef7f
Better register usage for ASSIGN_DIM_OP
2020-08-21 09:50:28 +03:00
Dmitry Stogov
35a3e450bc
Better registers usage
2020-08-21 01:57:03 +03:00
Dmitry Stogov
c64cb19138
cleanup unused parameters
2020-08-20 20:43:40 +03:00
Dmitry Stogov
dd29a6e79e
efree() doesn't use line number arguments (pass zeros)
2020-08-20 20:39:13 +03:00
Dmitry Stogov
aed1f78515
micro-optimization
2020-08-20 15:02:12 +03:00
Máté Kocsis
4e6fbb0a12
Promote warnings to exceptions in ext/gd
...
Closes GH-6023
2020-08-20 12:07:04 +02:00
Dmitry Stogov
22982eee33
Load zval type into register to eliminate double load
2020-08-19 17:51:23 +03:00
Dmitry Stogov
bcadf9da8a
Shrink live intervals of IS_VAR/IS_TMP_VAR
2020-08-19 14:53:01 +03:00
Dmitry Stogov
c6c1682d7a
Fixed tracing JIT crash in case SSA for op_array is not provided
2020-08-19 14:51:39 +03:00
Benjamin Eberlei
a34fd4d590
Update NEWS w.r.t to bugfix #79968
2020-08-19 12:20:11 +02:00
Benjamin Eberlei
9f6820f7f1
Fix #79968 : Manipulation on unattached DOMChildNode should throw DOMException
2020-08-19 11:54:41 +02:00
Dmitry Stogov
736c5dca10
Fixed memory leak (ext/hash/tests/mhash_001.phpt failure)
2020-08-19 09:30:08 +03:00
Tyson Andre
9883fec99f
Fix more basic function stubs
...
User-defined functions can't have multiple parameters with the same name.
Don't do that for var_dump/debug_zval_dump.
Consistently use array $array to match docs
Fix typo in UPGRADING
Fixes GH-6015
2020-08-18 20:23:42 -04:00
Dmitry Stogov
f559c78000
Check for exception after $this destruction
2020-08-18 21:13:18 +03:00
Dmitry Stogov
f2d8488806
Fixed register allocation for CASE instruction. CASE don't destroy first operand and it may be used later in VM or different trace.
2020-08-18 21:10:34 +03:00
Máté Kocsis
bf9ef513c0
Promote warnings to exceptions in ext/pspell
...
Closes GH-6010
2020-08-18 19:24:18 +02:00
Matteo Beccati
cf3fb14679
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #47021 : SoapClient stumbles over WSDL delivered with "Transfer-Encoding: chunked"
2020-08-18 18:31:11 +02:00
Sara Golemon
c905717dfa
Update NEWS for 8.0.0beta3
2020-08-18 14:03:56 +00:00
Sara Golemon
9b4abd0cff
Update NEWS for PHP 8.0.0beta2
2020-08-18 13:44:29 +00:00
Christoph M. Becker
4514afc187
Fix #79988 : new reserved keyword match is a backward incompatible change
2020-08-18 12:39:18 +02:00
Dmitry Stogov
6f36b20abf
Don't add guard for empty()
2020-08-18 13:13:58 +03:00
Dmitry Stogov
8c90002201
Fixed bug #79987 (Memory leak in SplFileInfo because of missing zend_restore_error_handling())
2020-08-18 11:08:04 +03:00
Christoph M. Becker
2d32ddb273
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
7.3.23 is next
2020-08-18 10:03:17 +02:00
Derick Rethans
ac97e4be12
Merge branch 'PHP-7.4' into master
2020-08-18 08:06:35 +01:00
Christoph M. Becker
c8e6f05e70
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix HTTP response status code
2020-08-18 08:37:36 +02:00
Dmitry Stogov
5d94ff8a00
JIT extension may be NULL
2020-08-18 09:28:13 +03:00
Dmitry Stogov
fd0b57d48b
Fixed support for named arguments
2020-08-18 00:12:05 +03:00
Dmitry Stogov
3343eb64d7
Fixed trace type inference for FE_FETCH_R/RW
2020-08-17 22:55:25 +03:00
Dmitry Stogov
32052e7470
Fixed support for possible indirect variable modification (ext/standard/tests/array/bug77135.phpt failure).
2020-08-17 22:31:03 +03:00
Dmitry Stogov
afc93e44e5
JIT for ZEND_ISSET_ISEMPTY_CV
2020-08-17 20:48:48 +03:00
Dmitry Stogov
28e24e7acc
Fixed JIT for indirectly recursive traces
2020-08-17 20:47:06 +03:00
George Peter Banyard
72383ccabb
Promote warnings in ext/zip
2020-08-17 15:52:20 +02:00
Dmitry Stogov
a02237d2a9
Removed outdated/duplicated code
2020-08-17 15:24:33 +03:00
Dmitry Stogov
8202b4ed09
Properly patch jmp tables
2020-08-17 13:50:03 +03:00
George Peter Banyard
4522cbb789
Promote various OpenSSL warnings into Errors
...
Closes GH-5111
2020-08-16 18:59:52 +02:00
Tyson Andre
0461c1574a
Add run-tests.php --context [n] option.
...
Mentioned in https://github.com/php/php-src/pull/5965#discussion_r467621123
This PR proposes 3 lines of context so the impact can be seen in tests.
Other `diff` programs show around 3 lines of context.
(This helps indicate exactly which position a test should be updated
to add a new expected line at)
Use the mapping for choosing order to display diffs
Properly include context in cases where the expected output had more lines than
the actual output, e.g.
```
--FILE--
A
A1
A
C
NEARBY
--EXPECTF--
A
B
A1
B
A
B
A
B
NEARBY
```
Closes GH-5968
2020-08-16 09:31:38 -04:00
Máté Kocsis
517c9938af
Promote warnings to exceptions in ext/curl
...
Closes GH-5963
2020-08-14 17:40:35 +02:00
Nikita Popov
124260c165
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Null terminate the sodium_crypto_kx_keypair() result
2020-08-14 15:52:31 +02:00
Nikita Popov
86072d60de
Reduce cost factors in sodium password_hash tests
...
Drop the 4x factors to make these tests a bit less obscenely
slow.
2020-08-14 15:39:42 +02:00
Christoph M. Becker
5072321c55
Improve test portability
...
We have to ensure that the attempted connection to the MySQL server
fails, and do that by passing an unknown host instead of falling back
to localhost.
2020-08-14 15:33:02 +02:00
Nikita Popov
2ca5d663f3
Avoid fatal error in session handler
2020-08-14 15:19:18 +02:00
Nikita Popov
cfaa270da5
Use variadic signature for PDOStatement::fetchAll()
...
The current signature is incorrect, because the $ctor_args parameter
is not required to be an array (it can at least also be null, and
isn't enforced by an exception anyway).
I'm going for the variadic signature here, because we already use
the same variadic signature in PDO::query() and
PDOStatement::setFetchMode(), all of them accepting essentially the
same arguments.
2020-08-14 15:19:18 +02:00
Nikita Popov
ca20f36b2a
Fix types in openssl stub
...
These two $recipcert parameters don't use proper union types
right now. They are a bit tricky due to the $recipkey -> $recipcert
fallback.
2020-08-14 15:19:18 +02:00
Christoph M. Becker
64368f4786
Fix newly introduced test for Windows
...
The warning message is rather different there, but since that is
irrelevant for this test case, we just suppress the warning.
2020-08-14 14:36:32 +02:00
Máté Kocsis
d72161505c
Add a few callable method parameter types to ext/sqlite3
...
Closes GH-5988
2020-08-14 13:43:11 +02:00
Nikita Popov
ce38d3a919
Don't assert mysql->mysql is non-null
...
There is an edge case in constructor behavior where we can end up
with mysql->mysql being NULL (rather than mysql itself already being
NULL). I think that ultimately that's a bug in the constructor code,
and we should probably be destroying the outer structure on
construction failure as well. However it's pretty hard to unravel
with when considering all the construction permutations.
2020-08-14 12:44:13 +02:00
Nikita Popov
196671a2b2
Simplify mysqli_stmt_bind_param() implementation
...
By using zpp.
2020-08-14 11:45:08 +02:00
Nikita Popov
179bc21f5f
Use normal zpp in mysqli_result::__construct()
...
This method doesn't need any special handling...
2020-08-14 11:15:36 +02:00
Nikita Popov
6570fc2cf8
Remove dummy aliases for mysqli constructors
...
These are only available as methods. Directly declare them as
such instead of aliasing to functions that don't actually exist.
2020-08-14 11:12:41 +02:00
Nikita Popov
07539685b9
Return empty string from SplFileInfo::getPathname()
...
Instead of false. This is consistent with how other methods like
SplFileInfo::getPath() behave. It's also a requirement before
SplFileInfo::__toString() calls SplFileInfo::getPathname() and
needs to return a string.
2020-08-14 11:09:30 +02:00
Nikita Popov
0a439fa932
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing initialization check to RegexIterator::getRegex()
2020-08-14 10:42:14 +02:00
Nikita Popov
964f66942c
Fix test after is_callable change
2020-08-14 10:40:20 +02:00
Nikita Popov
befe10fd21
Fix bug #78770
...
Refactor the zend_is_callable implementation to check callability
at a particular frame (this is an implementation detail for now,
but could be exposed in the API if useful). Pick the first parent
user frame as the one to check.
2020-08-14 10:24:06 +02:00
Máté Kocsis
f83368c6d9
Fix ZPP for mhash()
...
Closes GH-5985
2020-08-14 10:02:45 +02:00
George Peter Banyard
96c7d42a3c
Use ZPP callable check for ldap_set_rebind_proc()
2020-08-13 21:14:51 +02:00
George Peter Banyard
dae83cd7cb
Use ZPP callable check for Windows specific functions
2020-08-13 21:14:50 +02:00
George Peter Banyard
9cb522166c
Allow number_format to be only passed 3 arguments
...
Closes GH-5977
2020-08-13 18:07:17 +02:00
Tyson Andre
7be61bec80
Colorize --show-diff, only on stdout
...
Don't add colors to the saved `.diff` file.
Related to a41cf3e1d2
2020-08-13 11:27:32 -04:00
Nikita Popov
c3ddda4e3c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79724
2020-08-13 17:26:20 +02:00
Nikita Popov
e40c9d4918
Add some missing DatePeriod initialization checks
2020-08-13 17:23:23 +02:00
Nikita Popov
8f61854108
Add a missing null check in simplexml
2020-08-13 16:46:08 +02:00
Nikita Popov
8fbc618a3c
Fix invalid zpp calls in pcntl_get/setpriority
2020-08-13 16:46:02 +02:00
Nikita Popov
b03e300a29
Fix test after PDOStatement::fetchObject() change
2020-08-13 16:45:32 +02:00
Nikita Popov
396b47061f
Use zpp C in pg_fetch_object
2020-08-13 16:24:08 +02:00
Nikita Popov
670036e2a9
Use Z_PARAM_CLASS in PDOStatement::fetchObject()
...
Instead of implementing custom logic.
2020-08-13 16:20:29 +02:00
Nikita Popov
1511bdae96
Throw Error on uninitialized XMLWriter
2020-08-13 16:13:02 +02:00
Nikita Popov
fc7bab3aee
Throw on uninitialized SimpleXMLElement
...
Elevate this warning into an Error, as usual. Add a few checks
in places that were missing them.
2020-08-13 16:13:02 +02:00
Nikita Popov
f5e6f9bd27
Avoid fatal error on not found class in mysqli_fetch_object()
...
Instead use C zpp modifier and throw TypeError.
2020-08-13 16:13:02 +02:00
Máté Kocsis
a10f8876ef
Check missing parameter types in stubs
...
[skip ci] Closes GH-5627
2020-08-13 15:17:31 +02:00
Máté Kocsis
cb2f689778
Fix param name in PHPDoc
2020-08-13 14:54:48 +02:00
Máté Kocsis
2803c8fb8d
Add all the missing parameter types to stubs
...
Closes GH-5955
2020-08-13 14:47:18 +02:00
Nikita Popov
f3d6203b0b
Use a dedicated method for MultipleIterator::countIterators()
...
This method has a different signature from
SplObjectStorage::count(), so don't share implementations.
2020-08-13 14:44:03 +02:00
Nikita Popov
f0bf3d4672
Replace fatal error in SplFileInfo with exception
...
Using RuntimeException here, because the same error condition
uses that in many other places in this file.
2020-08-13 14:43:45 +02:00
Nikita Popov
634dd38289
Throw Error exception in DOM_GET_OBJ
...
Per general convention for handling of uninitialized objects.
2020-08-13 14:43:40 +02:00
Nikita Popov
e17ff61962
Switch to mime-db as source of extension => MIME map
...
The Apache MIME type map is not actively maintained anymore, so
this switches to jshttp/mime-db, which seems to be the de-facto
standard in this area now. This avoid the need to patch in our
own MIME types over time.
The preference algorithm is based on:
https://github.com/jshttp/mime-types/blob/47b62ac45e9b176a2af35532d0eea4968bb9eb6d/index.js#L154
Closes GH-5764.
2020-08-13 12:37:33 +02:00
Nikita Popov
cdc4e49b84
Make strftime tests musl compatible
...
* Remove usage of strftime() in favor of date() in cases where
we are not specifically testing strftime(). We implement
date() ourselves, and as such are insulated from implementation-
defined behavior.
* Add skipif for broken strftime() %Z support. We have decided
not to work around the issue for musl using manual expansion,
as people should not be using this function anyway, and it is
slated for future deprecation.
* Don't test strftime() with invalid format specifier. The
behavior is implementation-dependent.
2020-08-13 12:02:27 +02:00
Remi Collet
f16c1dc7ee
fix test expectation
2020-08-13 09:36:42 +02:00
George Peter Banyard
90330a4460
Drop redundant arg count check
2020-08-13 02:37:00 +02:00
Tyson Andre
45d69fb809
Support NO_COLOR environment variable in run-tests.php
...
And add a --color option for run-tests.php
See https://no-color.org/
> an informal standard is hereby proposed:
>
> All command-line software which outputs text with ANSI color added should check
> for the presence of a `NO_COLOR` environment variable that, when present
> (regardless of its value), prevents the addition of ANSI color.
2020-08-12 09:37:45 -04:00
Nikita Popov
b480e6841e
Recognize gnu-libiconv location on alpine
2020-08-12 15:32:11 +02:00
David Carlier
6ca6e9f891
Fix crypt_r detection under BSD system
...
For BSD systems, crypt.h does not exist, instead we need to
include unistd.h.
Closes GH-5971.
2020-08-12 15:09:21 +02:00
Nyholm
3485ec40ce
Small CS fix
...
The comments were incorrectly aligned. Fix this by dropping the
alignment and moving the comments before the declarations.
Closes GH-5975.
2020-08-12 12:16:53 +02:00
Nikita Popov
824541d57e
Disable report_zend_debug by default
...
We might just want to drop this completely, but at least don't
enable it by default. It already gets disabled by a number of
SAPIs, but we should make that the default state.
2020-08-12 10:36:40 +02:00
Tyson Andre
1e9a5c67ef
Rename standard array function parameters to $array
...
This is targeting 8.0.
`$arg` seems like a poor choice of a name,
especially if the function were to have arguments added.
In many cases, the php.net documentation already has $array for these functions.
E.g. https://www.php.net/manual/en/function.array-intersect.php
I'd assume that since named arguments was added to 8.0 near the feature freeze,
PHP's maintainers had planned to make the names consistent
and gradually use the same name for docs and implementation.
2020-08-11 19:11:59 -04:00
Ilija Tovilo
10f660f0a5
Fix ?-> in encaps vars without braces
...
Closes GH-5966.
2020-08-11 21:16:44 +02:00
Nikita Popov
898bb97706
Drop php_pdo_get_exception_base() function
...
This API is more confusing than helpful.
2020-08-11 17:40:39 +02:00
Nikita Popov
33028bf014
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #64705 errorInfo property of PDOException is null when PDO::__construct() fails
2020-08-11 17:16:38 +02:00
Nikita Popov
8694eb14f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #75785 by attempt switching endianness on Maker's Note
2020-08-11 16:29:01 +02:00
Nikita Popov
e25aab6426
Fixed bug #79927
...
We need to unset the AT_FIRST_YIELD flag when yielding from an
array as well.
In the interest of being conservative, I'm applying this only to
PHP 8.
2020-08-11 15:48:40 +02:00
Nikita Popov
227f1f1481
Fix nullsafe operator on $this
2020-08-11 15:22:14 +02:00
Nikita Popov
42eda5160d
SAVE_OPLINE in NULL_HANDLER
...
Let's avoid crashing before the nice error message gets printed...
2020-08-11 15:14:50 +02:00
Nikita Popov
f491dabe40
Fix nullsafe operator on reference
...
Dereference the value before checking the type. As the happy path
necessarily has to check for references, I'm not bothering to
delay the comparison.
2020-08-11 15:11:36 +02:00
Nikita Popov
75baa729f5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79917
2020-08-11 14:59:04 +02:00
Christoph M. Becker and Nikita Popov
9e930907df
Autogenerate function entries for COMPersistHelper
...
Co-authored-by: Nikita Popov <nikita.ppv@googlemail.com >
2020-08-11 11:42:40 +02:00
Christoph M. Becker
dc5077cc53
Remove practically unused parameter
...
The `cached` out parameter of `php_com_load_typelib_via_cache()` was
meant to signal whether a particular typelib actually has been cached.
This is not really relevant, though, for the imagined purposes, and
since the parameter is no longer really used, we removed it altohether.
2020-08-11 11:38:43 +02:00
Christoph M. Becker
013dcab344
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #48585 : com_load_typelib holds reference, fails on second call
2020-08-11 11:28:41 +02:00
Nikita Popov
dd858460bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79951
2020-08-11 10:35:59 +02:00
Máté Kocsis
56135654a0
Remove unnecessary function entry array
2020-08-11 09:41:54 +02:00
George Wang
e05439e7a4
Merge branch 'PHP-7.4'
2020-08-10 19:11:48 -04:00
Christoph M. Becker
2538e31b58
Fix signature of callback function
...
Cf. <https://docs.microsoft.com/en-us/windows/win32/api/imagehlp/nc-imagehlp-pimagehlp_status_routine >.
2020-08-10 23:26:54 +02:00
Nikita Popov
7e87173497
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check the correct list
2020-08-10 21:53:26 +02:00
Nikita Popov
59fbdf7326
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79944
2020-08-10 20:43:24 +02:00
Nikita Popov
657707a105
Skip bug70417.phpt if lsof output looks wrong
...
On alpine lsof accepts -p but it doesn't actually do anything.
Add a crude check for whether lsof looks like Linux lsof.
2020-08-10 15:59:08 +02:00
Nikita Popov
217d05b18e
Check permissions in pcntl_unshare_03.phpt
2020-08-10 15:59:02 +02:00
Nikita Popov
dad25538f6
Don't check specific message in socket_shutdown.phpt
2020-08-10 15:58:54 +02:00
Nikita Popov
e4f5190942
Only test one error in socket_strerror() test
...
The messages differ by used libc and version, so let's not try to
do exhaustive testing here.
2020-08-10 15:58:38 +02:00
Nikita Popov
c439f1fa6a
Fixed bug #62294
...
The primary issue was already resolved in 7c3e487289 ,
but the particular example used in this bug report ran into an
additional issue on PHP 8, because I forgot to drop a number of
zend_bailout calls when switch require failure to throw.
2020-08-10 12:54:02 +02:00
Nikita Popov
7c3e487289
Fixed bug #65275
...
Make EG(exit_status) the single source of truth for the exit status,
instead of having two variables that we cannot really keep
synchronized.
2020-08-10 12:40:26 +02:00
Christoph M. Becker
4c1a490be5
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #79922 : Crash after multiple calls to xml_parser_free()
2020-08-10 12:27:33 +02:00
Nikita Popov
90a2c79be0
Remove some unnnecessary null checks in openssl
...
Remove null checks before EVP_PKEY_free and BIO_free. NULL is a
no-op for both of these. Probably applies to most other freeing
function as well...
2020-08-10 12:10:30 +02:00
Nikita Popov
80d3ce3d19
Improve X509_PKEY management in OpenSSL
...
Remove the free_pkey argument from php_openssl_pkey_from_zval,
instead return an EVP_PKEY that always needs to be freed
(by incrementing refcount if necessary).
This makes the code simpler and fixes a number of bugs in the
existing handling.
Closes GH-5946.
2020-08-10 11:43:49 +02:00
Nikita Popov
e81ad4089e
Expand upgrading note for namespaced name change
...
Mention the case from bug #79942 .
[ci skip]
2020-08-10 11:20:07 +02:00
Nikita Popov
ee16316148
Fixed bug #79948
...
Make sure we don't execute further scripts if one of them encountered
an exit exception.
Also make sure that we free file handles that end up unused due to
an early abort in php_execute_scripts(), which turned up as an
issue in the added test case.
Finally, make use of EG(exit_status) in the places where we
zend_eval_string_ex, instead of unconditionally assigning exit
code 254. If an error occurs, the error handler will already set
exit status 255.
2020-08-10 11:15:16 +02:00
Nikita Popov
1974522a2d
Fixup phar test
2020-08-10 10:47:18 +02:00
Nikita Popov
896dad4c79
Fixed bug #77561
...
Unconditionally strip shebang lines when using the CLI SAPI,
independently of whether they occur in the primary or non-primary
script. It's unlikely that someone intentionally wants to print
that shebang line when including a script, and this regularly
causes issues when scripts are used in multiple contexts, e.g.
for direct invocation and as a phar bootstrap.
2020-08-10 10:38:33 +02:00
Nikita Popov
74c4381806
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79947
2020-08-10 10:13:34 +02:00
Nikita Popov
da0a0a13be
Fixed bug #79946
...
Declare __STDC_CONSTANT_MACROS and __STDC_FORMAT_MACROS via -D
to make sure they are declared before the first stdint.h include.
We also define these in php_stdint.h, but don't always include that
file first.
This is necessary for old compilers that use C99 rather than C11
semantics for stdint.h.
2020-08-10 09:52:22 +02:00
David Carlier
cedf463d1b
proc_open/openpty: DragonFlyBSD build fix.
...
Similarly to NetBSD emalloc-ish api had been introduced into libutil.
Closes GH-5960.
2020-08-10 09:49:18 +02:00
Nikita Popov
a41cf3e1d2
Revert "Make diff section contents red(-)/green(+) in run-tests.php"
...
This reverts commit 58489bd3b9 .
This also uses ANSI escape code coloring for .diff files, where it
is not meaningful.
2020-08-10 09:38:48 +02:00
Tyson Andre
58489bd3b9
Make diff section contents red(-)/green(+) in run-tests.php
...
This uses green for lines with `+` and red for lines with `-`.
Colors(Red and Green) would make the failure causes stand out visually when scrolling through errors.
Closes GH-5965
2020-08-09 20:59:43 -04:00
Tyson Andre
e79adf6381
Use short array values in run-tests.php
...
The run-tests.php file already requires php 7 syntax.
Done automatically with phpcbf with no other changes done/planned.
This file is already using short arrays in other places.
run-tests has already been substantially refactored in PHP 8.0
compared to PHP 7.4.
This makes merge conflicts more likely, but changes to run-tests.php on older
versions are less frequent bug fixes.
2020-08-09 16:09:55 -04:00
Máté Kocsis
7aacc705d0
Add many missing closing PHP tags to tests
...
Closes GH-5958
2020-08-09 22:03:36 +02:00
Nikita Popov
05478e985e
Fix m4 quotation
...
We should not try to expand AX_CHECK_COMPILE_FLAG inside the
error message...
2020-08-08 10:38:51 +02:00
George Peter Banyard
e208cb23c6
Promote various warnings to Error in GMP extension
...
This gets rid of most false returns
Closes GH-5882
2020-08-07 18:17:34 +02:00
George Peter Banyard
5d72e40dfb
Add colours to test results in run-tests.php
...
The test runner will attempt to colourise the result of each test
The --no-color option is introduced to disable this feature.
Closes GH-5901
2020-08-07 18:17:34 +02:00
George Peter Banyard
c74001997f
Drop '#if 0' in mysqlnd_debug() from the MySQLnd extension
...
Closes GH-5587
2020-08-07 18:17:33 +02:00
Nikita Popov
8bc505cf47
Remove some duplicate iconv path logic
...
PHP_SETUP_ICONV already adds the include path to INCLUDES and the
library path to SHARED_LIBADD.
2020-08-07 18:10:29 +02:00
Nikita Popov
7bd1d70341
Remove PHP_ICONV_H_PATH
...
Directly include <iconv.h> instead, now that the giconv.h
distinction no longer exists.
2020-08-07 17:03:41 +02:00
Nikita Popov
2d359749a4
Remove giconv support
...
The best information I was able to find about this is this mail
from 2009 which indicates that giconv is an old FreeBSD iconv
implementation that has long since been superseded by libiconv.
https://lists.samba.org/archive/samba-technical/2009-June/065177.html
2020-08-07 17:03:41 +02:00
Nikita Popov
65592840f0
Remove more leftovers of PHP_DEFINE handling
2020-08-07 17:03:41 +02:00
David Carlier
327db7e595
opcache gdb: Set the EI_OSABI value for NetBSD.
...
Closes GH-5948.
2020-08-07 17:00:32 +02:00
Máté Kocsis
046cc5e4c2
Add another round of missing parameter types to stubs
...
Closes GH-5950
2020-08-07 16:48:45 +02:00
Máté Kocsis
7b9f37c389
Fix ZPP order in ext/phar
2020-08-07 16:47:50 +02:00
Nikita Popov
45ece5bf19
Add UPGRADING.INTERNALS notes for zend_object* changes
...
Closes GH-5953.
2020-08-07 16:40:27 +02:00
Nikita Popov
8b77c58130
Accept zend_object* in zend_update_property
2020-08-07 16:40:27 +02:00
Nikita Popov
01cbb5967c
Accept zend_object* in zend_unset_property
2020-08-07 16:40:27 +02:00
Nikita Popov
978b7de244
Accept zend_object* in zend_get_exception_base
2020-08-07 16:40:27 +02:00
Nikita Popov
7991fc2753
Accept zend_object in zend_read_property
2020-08-07 16:40:27 +02:00
Christoph M. Becker
0400d07e61
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Prevent tempnam tests conflicts
2020-08-07 15:06:40 +02:00
Nikita Popov
17d1eb3ca6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #70574 : Move files to proper locale dir
2020-08-07 14:37:50 +02:00
Nikita Popov
e6f7784210
Don't use PHP_DEFINE in iconv
...
iconv is the only consumer of this custom define mechanism that
puts every define into a single file. Use the standard mechanism
instead.
2020-08-07 14:29:04 +02:00
Máté Kocsis
af80d8a14e
Add more argument types to stubs
...
Closes GH-5943
2020-08-07 12:35:30 +02:00
Nikita Popov
3bb1830369
Reapply "Explicitly validate popen mode"
...
To avoid behavior differences due to libc. This time with the
check only for the non-win32 case, as Windows support additional
modifiers here (t/b).
2020-08-07 10:33:27 +02:00
Nikita Popov
7c8467562d
Revert "Explicitly validate popen mode"
...
This reverts commit ab36540bdd .
Causes a test failure on Windows.
2020-08-06 21:53:13 +02:00
George Peter Banyard
11274f53e7
Add type information to test-runner
...
Closes GH-5942
2020-08-06 20:37:36 +02:00
George Peter Banyard
196f8fdfc3
Promote warnings to Error in FileInfo extension
...
Closes GH-5914
2020-08-06 13:37:36 +02:00
Nikita Popov
b3f0f35fd7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file clash in zlib test
2020-08-06 12:35:37 +02:00
Derick Rethans
da56e87eca
Mention security in step 3, as otherwise it might be overlooked
2020-08-06 11:14:39 +01:00
Nikita Popov
fcff418411
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79934 : CRLF-only line in heredoc causes parsing error
2020-08-06 12:04:23 +02:00
Nikita Popov
84a080ef50
Avoid getThis() usages in zip extension
...
There isn't any magic going on here, we can just use ZEND_THIS
and assume it exists.
2020-08-06 11:28:35 +02:00
Nikita Popov
ab36540bdd
Explicitly validate popen mode
...
To avoid behavior differences due to libc.
2020-08-06 10:26:46 +02:00
Nikita Popov
0dda242bde
Add GLOB_BRACE skipif
2020-08-06 10:26:32 +02:00
Nikita Popov
069bd49b02
Temporarily disable s390x job
...
These aren't getting scheduled and just keep hogging jobs so
nothing else gets scheduled either.
2020-08-05 19:58:44 +02:00
Nikita Popov
2965c8f868
Prefer strtoll over atoll
...
Both are specified by C99, but strtoll has specified overflow
behavior while atoll does not, so prefer using it.
2020-08-05 18:40:23 +02:00
Nikita Popov
74b285d78c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check ps -p availability in process title test
Add privilege check in pcntl_unshare test
2020-08-05 18:18:51 +02:00
Nikita Popov
52047addc7
Only force log startup errors if display_startup_errors disabled
...
Otherwise this results in duplicate errors.
Closes GH-5941.
2020-08-05 18:17:00 +02:00
Nikita Popov
af64001dcb
Normalize error message capitalization
2020-08-05 16:44:06 +02:00
Nikita Popov
25d849d40b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak on socket_sendmsg() / socket_recvmsg() error
2020-08-05 16:42:55 +02:00
Nikita Popov
643145b59d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79930
Fix iov_base pointer type for illumos
Backport bless_tests.php changes from PHP 8
2020-08-05 15:44:04 +02:00
Nikita Popov
002908a5c5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Unset ai_canonname field in dump
2020-08-05 14:59:06 +02:00
Nikita Popov
7575340427
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check ps -p availability in proc_nice test
Set AI_CANONNAME flag in socket_addrinfo test
Add ipv6 skipif to test
Improve privilege check in pcntl_setpriority() test
2020-08-05 12:12:24 +02:00
Nikita Popov
879525efa8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Suppress warning in pcntl_unshare skipif
Use standard types in fopencookie test
Remove posix_kill() test
Relax error message check
Check whether setlocale -a is available
2020-08-05 10:42:08 +02:00
Nikita Popov
36a1197f12
Suppress warning in pcntl_unshare skipif
2020-08-05 09:46:07 +02:00
Nikita Popov
b0d139456a
Use standard types in fopencookie test
...
Instead of internal __size_t / __off64_t types use ssize_t and off64_t.
This makes it work on musl as well.
2020-08-05 09:45:51 +02:00
Nikita Popov
ed13fee971
Remove posix_kill() test
...
This test is doing something really dubious. There's a race
condition here that would kill some poor process that happens
to start at just the wrong time.
2020-08-05 09:45:42 +02:00
Nikita Popov
430137d82a
Relax error message check
2020-08-05 09:45:32 +02:00
Nikita Popov
b1ce3d29ff
Check whether setlocale -a is available
2020-08-05 09:45:21 +02:00
Gabriel Caruso
542ef74533
Update NEWS for 8.0.0beta2
2020-08-04 22:26:01 +02:00
Gabriel Caruso
7479ab9f80
Update API version numbers
...
In preparation for PHP 8.0.
2020-08-04 22:25:28 +02:00
Nikita Popov
0d836a39a7
Revert "Prepare for PHP 8.1"
...
This reverts commit 1ab4d0e6b7 .
This reverts commit a359635cb1 .
2020-08-04 22:24:44 +02:00
Jakub Zelenka
37a878b8c3
FPM: Prevent warning with raising pm.max_children for shared pool
2020-08-04 21:01:13 +01:00
Gabriel Caruso
a359635cb1
Prepare for PHP 8.1
2020-08-04 18:46:14 +02:00
Gabriel Caruso
1ab4d0e6b7
Update API version numbers
...
In preparation for PHP 8.0.
2020-08-04 18:07:16 +02:00
Nikita Popov
300d108a0e
Relax precision in atan test
2020-08-04 16:12:40 +02:00
Nikita Popov
feba69ce2d
Relax precision in hypot test
2020-08-04 16:12:33 +02:00
Nikita Popov
442cf83b5c
Add compatibility define for PHP_CHECK_GCC_ARG
...
This defines the m4 macro, but makes it always error.
2020-08-04 16:11:58 +02:00
Christoph M. Becker
9acabd8389
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
[ci skip] Fix 7.3.21 release date
2020-08-04 12:34:54 +02:00
David Carlier
362194165a
Fix opcache JIT on NetBSD with PaX
...
When PaX mprotect active, opcache JIT test fail as it needs
the PROT_MPROTECT macro to be able to allow further permission
promotion with mprotect.
Closes GH-5929.
2020-08-04 10:34:31 +02:00
Nikita Popov
4644a3ed8a
XFAIL status-listen FPM test
...
Has frequent intermittent failures with:
ERROR: The NOTICE does not match expected message:
- PATTERN: /^\[\d\d-\w\w\w-\d{4} \d\d:\d\d:\d\d\] NOTICE: Terminating ...$/
- MESSAGE: [04-Aug-2020 08:15:37] WARNING: [pool unconfined_status] server reached max_children setting (2), consider raising it
- EXPECT: 'Terminating ...'
- ACTUAL: '2020 08:15:37] WARNING: [pool unconfined_status] server reached max_children setting (2), consider raising it'
2020-08-04 10:27:33 +02:00
Nikita Popov
10cf18ce6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Manually build re2c on macos
2020-08-04 10:26:27 +02:00
Benjamin Eberlei
53ef244923
Add opcache.jit=tracing|function values, make on/yes/true synonym for tracing.
2020-08-04 10:15:22 +02:00
Remi Collet
1213907b83
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version to 7.2.34-dev
Update NEWS
2020-08-04 09:56:07 +02:00
Máté Kocsis
ae34a6539f
Fix Socket related tests on Windows
2020-08-04 09:25:41 +02:00
Máté Kocsis
2d32b633b2
Cleanup snmp after resource to object migration
2020-08-04 09:14:12 +02:00
Máté Kocsis
040b5e727a
Fix posix test
2020-08-04 09:11:55 +02:00
Christoph M. Becker
bfdbb90d30
Fix Windows build
2020-08-04 00:10:29 +02:00
Máté Kocsis
71bfa5344a
Add upgrading note for the resource to object migration in ext/sockets
2020-08-03 23:41:00 +02:00
Theodore Brown
e2b4687403
Minor grammar/consistency fixes in upgrade guide
...
[ci skip]
2020-08-03 15:34:10 -06:00
Máté Kocsis
77172c220a
Convert resources to objects in ext/sockets
...
Closes GH-5900.
2020-08-03 23:26:38 +02:00
Dik Takken
e0fa48f69d
Deprecate libxml_disable_entity_loader()
...
This method was used to protect code against XXE processing attacks.
Since PHP now requires libxml >= 2.9.0 external entity loading no longer
needs to be disabled to prevent these attacks. It is disabled by default.
Also, the method has an unwanted side effect that causes a lot of
confusion: Parsing XML data from resources like files is no longer possible.
Closes GH-5867.
2020-08-03 21:53:29 +02:00
Dik Takken
691a09f291
Bump libxml version requirement 2.7.6 => 2.9.0
...
Since libxml version 2.9.0 external entity loading is disabled by default.
Bumping the version requirement means that XML processing in PHP is no
longer vulnerable to XXE processing attacks by default.
2020-08-03 21:51:10 +02:00
Jakub Zelenka
44c7128fb7
FPM: Add pm.status_listen option
...
This option allows getting status from different endpoint (e.g. port
or UDS file) which is useful for getting status when all children are
busy with serving long running requests.
Internally a new shared pool with ondemand process manager is used. It
means that the status requests have reserved resources and should not
be blocked by other requests.
2020-08-03 19:14:13 +01:00
Máté Kocsis
4c89ed61fb
Promote warnings to exceptions in ext/gettext, ext/sysvmsg and ext/xml
...
Closes GH-5926
2020-08-03 20:09:28 +02:00
Tyson Andre
0c238ede01
[RFC] Only unserialize Phar metadata when getMetadata() is called
...
In other words, don't automatically unserialize when the magic
phar:// stream wrappers are used.
RFC: https://wiki.php.net/rfc/phar_stop_autoloading_metadata
Also, change the signature from `getMetadata()`
to `getMetadata(array $unserialize_options = [])`.
Start throwing earlier if setMetadata() is called and serialization threw.
See https://externals.io/message/110856 and
https://bugs.php.net/bug.php?id=76774
This was refactored to add a phar_metadata_tracker for the following reasons:
- The way to properly copy a zval was previously implicit and undocumented
(e.g. is it a pointer to a raw string or an actual value)
- Avoid unnecessary serialization and unserialization in the most common case
- If a metadata value is serialized once while saving a new/modified phar file,
this allows reusing the same serialized string.
- Have as few ways to copy/clone/lazily parse metadata (etc.) as possible,
so that code changes can be limited to only a few places in the future.
- Performance is hopefully not a concern - copying a string should be faster
than unserializing a value, and metadata should be rare in most cases.
Remove unnecessary skip in a test(Compression's unused)
Add additional assertions about usage of persistent phars
Improve robustness of `Phar*->setMetadata()`
- Add sanity checks for edge cases freeing metadata, when destructors
or serializers modify the phar recursively.
- Typical use cases of php have phar.readonly=1 and would not be affected.
Closes GH-5855
2020-08-03 13:28:51 -04:00
Rowan Tommins
f9f769d4b9
Make http stream wrapper advertise HTTP/1.1 by default
...
In practice, we always act as an HTTP/1.1 client, for compatibility
with servers which ignore protocol version. Sending the version in
the request will avoid problems with servers which don't ignore it.
HTTP/1.0 can still be forced using a stream context option.
Closes GH-5899.
2020-08-03 16:30:09 +02:00
Levi Morrison
9b975fe98e
Merge branch 'levim/assert-throw'
...
This changes assert.exception to default to 1, or on by default.
Closes GH-5925.
2020-08-03 08:04:48 -06:00
Nikita Popov
b7f281f09a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed space from bug55086.phpt
2020-08-03 15:15:04 +02:00
Santiago M. Mola
65713aaddd
Fix #79923 : fix socket_set_option_bindtodevice test
...
Closes GH-5924.
2020-08-03 15:03:07 +02:00
Nikita Popov
501db98e57
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79924
2020-08-03 14:56:57 +02:00
Nikita Popov
56f11e2d1f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
set -ex on travis/compile.sh
2020-08-03 14:48:40 +02:00
Nikita Popov
c48b745f00
Promote "undefined array key" notice to warning
...
This implements the last remaining part of the
https://wiki.php.net/rfc/engine_warnings RFC.
Closes GH-5927.
2020-08-03 14:40:50 +02:00
Christoph M. Becker
b9171d8a93
Fix fix for bug #79877 for PHP 8
...
PHP 8 is supposed to throw here.
2020-08-03 12:01:56 +02:00
Nikita Popov
b891adea8d
Don't suppress notices in rfc1867 tests
...
The references notices in debug builds don't seem to be present
anymore.
2020-08-03 11:58:59 +02:00
Christoph M. Becker
c169819750
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
[ci skip] Add missing NEWS entries
2020-08-03 11:21:39 +02:00
Nikita Popov
7a4b594c6f
Convert SPL illegal offset type into TypeError
...
Make this consistent with the corresponding engine behavior.
Also adjust the messages to match.
2020-08-03 11:17:49 +02:00
Christoph M. Becker
e1f55de8b9
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Fix #79877 : getimagesize function silently truncates after a null byte
Fix #79797 : Use of freed hash key in the phar_parse_zipfile function
Fix #79877 : getimagesize function silently truncates after a null byte
Fix #79797 : Use of freed hash key in the phar_parse_zipfile function
2020-08-03 11:15:24 +02:00
Gregor Harlan
a6e3ce4fd6
datetime: new format "p", same as "P" but returning "Z" for UTC
2020-08-03 10:44:48 +02:00
Nikita Popov
bb8b95be63
Fix bug #79925
...
If the expected return type of a magic method is "object", we also
need to allow class types and "static" to comply with covariance.
2020-08-03 10:35:26 +02:00
Nikita Popov
5d4659c25c
Enforce __set_state() parameter type
...
This fixes one of the issues reported in bug #79925 . The parameter
type check for this particular method was missed.
2020-08-03 10:23:06 +02:00
Nikita Popov
a4c015b4b2
Fix handling of nullsafe method in empty()
...
Fixes oss-fuzz #24627 .
2020-08-03 10:16:38 +02:00
Christoph M. Becker
05c5c93705
Fix #79877 : getimagesize function silently truncates after a null byte
...
We have to check for NUL bytes if `getimagesize()` has been called.
2020-08-03 01:10:24 -07:00
Christoph M. Becker
775385df0e
Fix #79797 : Use of freed hash key in the phar_parse_zipfile function
...
We must not use heap memory after we freed it.
2020-08-03 01:10:22 -07:00
Christoph M. Becker
24495ba778
Merge branch 'PHP-7.4' into master
...
* PHP-7.4:
Enable libxml entity loader test case on Windows
2020-08-03 09:15:50 +02:00
tangl163
7d4ae7fa23
Drop the unneeded pointer casting
...
The standard says that "A pointer to void may be converted to or from a
pointer to any object type". So the casting is unneeded.
REF:
* c11: http://port70.net/~nsz/c/c11/n1570.html#6.3.2.3p1
* c99: http://port70.net/~nsz/c/c99/n1256.html
Closes GH-5916
2020-08-03 02:05:14 +01:00
Derick Rethans
90434d7fe3
Fixed bug #60302 : DateTime::createFromFormat should new static(), not new self()
...
Also fixes similar issues for DateTimeImmutable::createFromFormat,
DateTime::createFromImmmutable, DateTime::createFromInterface,
DateTimeImmutable::createFromMutable, and
DateTimeImmutable::createFromInterface.
2020-08-03 00:43:41 +01:00
Máté Kocsis
6b7e2f0d15
Fix stub hash of ext/ldap
2020-08-03 01:06:21 +02:00
Máté Kocsis
79981a394e
Add a bunch of missing argument types to stubs
2020-08-03 00:45:51 +02:00
Máté Kocsis
6ba24e9615
Improve a few parameter names in ext/spl
...
Use the same names which are used by zend functions.
2020-08-03 00:45:12 +02:00
Máté Kocsis
156c1806db
Convert the $ttl parameter of ldap_exop_refresh() to int
2020-08-03 00:38:59 +02:00
Levi Morrison
853eb8373f
Default assert.exception to 1
2020-08-02 13:39:35 -06:00
Nikita Popov
00743f3fae
Bump timeouts, again
...
Now that we're testing an additional JIT configuration in nightly
builds, the jobs are running close to an hour.
[ci skip]
2020-08-02 10:11:33 +02:00
Gabriel Caruso
e3d06fc79d
Ensure correct signatures for magic methods
2020-08-02 01:29:56 +02:00
Tyson Andre
650801ce45
[skip ci] Fix grammar/typo nits in docs
...
The PHP error message says "well-formed", not "well formed"
Fixes GH-5920
2020-08-01 18:03:45 -04:00
Máté Kocsis
bdacd2ae8f
Add a few missing types to stubs
2020-08-01 23:55:08 +02:00
Nikita Popov
c10a406500
Bump timeout again
2020-08-01 23:50:56 +02:00
Máté Kocsis and Nikita Popov
9f44eca6b6
Convert resources to objects in ext/openssl
...
Closes GH-5860
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-08-01 22:47:20 +02:00
Tyson Andre
97f10fc341
Allow overriding completion in auto_prepend_file
...
Currently, it's possible to override `php -a`s completion
functionality to provide an alternative to the C implementation,
with `readline_completion_function()`.
However, that surprisingly gets overridden when called from
`auto_prepend_file`, because those scripts get run before the interactive shell
is started. I believe that not overriding it would be more consistent
with what happens when you override the completion function **after** the
interactive shell.
CLI is the only built-in API that uses this (See discussion in GH-5872).
I believe MINIT and RINIT will only run once when invoked with `php -a`.
Add documentation about the architecture of how php uses readline/libedit
Closes GH-5872
2020-08-01 11:39:08 -04:00
Máté Kocsis
ec22e5aa38
Get rid of empty function entries
...
Closes GH-5917
2020-08-01 10:07:05 +02:00
Nikita Popov
d92229d8c7
Implement named parameters
...
From an engine perspective, named parameters mainly add three
concepts:
* The SEND_* opcodes now accept a CONST op2, which is the
argument name. For now, it is looked up by linear scan and
runtime cached.
* This may leave UNDEF arguments on the stack. To avoid having
to deal with them in other places, a CHECK_UNDEF_ARGS opcode
is used to either replace them with defaults, or error.
* For variadic functions, EX(extra_named_params) are collected
and need to be freed based on ZEND_CALL_HAS_EXTRA_NAMED_PARAMS.
RFC: https://wiki.php.net/rfc/named_params
Closes GH-5357.
2020-07-31 15:53:36 +02:00
George Peter Banyard
9a71d47d73
Throw ValueError on empty tag in enchant_broker_request_dict()
2020-07-31 14:35:14 +01:00
George Peter Banyard
0ba31e19c6
Change leftover RETURN_FALSE to RETURN_THROWS() from 4095c0a
2020-07-31 14:11:10 +01:00
George Peter Banyard
4095c0a28d
Promote empty filename to ValueError in BZ2 extension
2020-07-31 14:01:05 +01:00
George Peter Banyard
c3105a1f8d
ValueError for empty path in stream code
...
Closes GH-5902
2020-07-31 13:39:58 +01:00
George Peter Banyard
f78a091014
Warning to ValueError promotion in Intl extension Part 1
...
Affects:
- IntlCalendar
- IntlGregorianCalendar
- IntlBreakIterator
Closes GH-5669
2020-07-31 13:27:22 +01:00
Nikita Popov
d3a9e1503f
Update i386 job to Ubuntu 20.04
2020-07-31 12:52:40 +02:00
Nikita Popov
91a1747ef7
Also run function jit tests on macos
2020-07-31 12:51:58 +02:00
Nikita Popov
a6e63b42c3
Make check in RECV_VARIADIC more precise
...
Fetch arg_info only once (it's always the same one...) and check
ZEND_TYPE_IS_SET on it, rather than checking if *any* parameter
has a type.
2020-07-31 12:02:28 +02:00
Dmitry Stogov
b3e12325f6
Fixed JIT when result of ASSIGN is in register, but the original variable might need to be destroyed
2020-07-31 12:31:46 +03:00
Christoph M. Becker
8c4f7d668e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79919 : Stack use-after-scope in define()
2020-07-31 10:59:17 +02:00
Máté Kocsis
02b03df91a
Document the signature change of zend_get_closure_method_def()
2020-07-31 10:04:49 +02:00
Máté Kocsis
d94d426f60
Fix the default value handling of imagegif()
2020-07-31 10:01:08 +02:00
Nikita Popov
47e4001976
Remove more unused func_info fields
2020-07-30 18:50:12 +02:00
Dmitry Stogov
8ea9e1ae4c
We check result type guard in FETCH_DIM_R/IS only if index is long or string.
2020-07-30 19:19:10 +03:00
Nikita Popov
9dacc85251
Add type inference support for RECV_VARIADIC
2020-07-30 17:14:34 +02:00
Nikita Popov
104b7addc4
Remove unused recv_arg_info from func_info
2020-07-30 17:04:56 +02:00
Nikita Popov
ce22cf5198
Remove some dead code in RECV type inference
...
We must always have arg_info corresponding to RECV.
2020-07-30 16:55:21 +02:00
Dmitry Stogov
28eaad0969
Clear result type for exit point caused by JMPZ_EX/NZ_EX
2020-07-30 17:01:08 +03:00
Dmitry Stogov
8b43976483
Fixed memory leaks caused by incorrect AVOID_REFCOUNTING flag
2020-07-30 16:59:41 +03:00
Máté Kocsis
5f25618f83
Add missing RETURN_THROWS()
2020-07-30 14:55:13 +02:00
Máté Kocsis
0d330e1a02
Add a few missing parameter types in stubs
...
Related to GH-5627
2020-07-30 14:26:45 +02:00
Dmitry Stogov
41de27ecc2
Skip tests leaking because of preloading failure.
2020-07-30 14:04:14 +03:00
Deus Kane
f475edc2f1
Fixed bug #79897 : Promoted constructor params with attribs cause crash
...
This was caused by the attribute AST being used twice, and was fixed by
creating a temporary copy of it (and destroying said copy) when neccesary.
2020-07-30 11:08:31 +02:00
Nikita Popov
3690a805c1
Check non-zero in is_power_of_two()
...
And assert non-zero in floor_log2().
Fixes DASM_S_RANGE_I in ext/simplexml/tests/021.phpt.
2020-07-30 10:17:37 +02:00
Nikita Popov
849c7415b5
Increase timeout on asan job
...
We now also run tests with function JIT here, which makes this
slower.
Probably, this job should be split up into asan and ubsan, and
possibly run with optimization.
[ci skip]
2020-07-30 09:59:08 +02:00
Theodore Brown
e8c4ae83cb
Improve wording and spelling consistency in UPGRADING
...
[ci skip]
2020-07-29 17:40:02 -06:00
Dmitry Stogov
bbbccf0811
Force type update if the previous value was in register only
2020-07-30 01:32:23 +03:00
Dmitry Stogov
713d3ea4e6
Don't skip fcall guard for method calls from trait
2020-07-30 00:31:46 +03:00
Dmitry Stogov
44384dfb3e
Fixed temporary register usage
2020-07-29 22:01:19 +03:00
Christoph M. Becker
59921aa9b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Amendment to OPcache base file removal
2020-07-29 18:45:03 +02:00
Christoph M. Becker
88a3bdd1e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #73060 : php failed with error after temp folder cleaned up
2020-07-29 18:31:28 +02:00
Nikita Popov
62cd52a41a
Update azure macos builds to 10.15
...
Closes GH-5908.
2020-07-29 18:22:06 +02:00
Nikita Popov
34fe1b91f6
Run function JIT tests in nightly build
...
Changing this for primary x64 and i386 jobs for now.
The different test configurations are now consolidated in one
file shared between both.
2020-07-29 18:20:46 +02:00
Nikita Popov
d8d2a7801a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Consider op1 literal of FETCH_OBJ_R
2020-07-29 17:05:42 +02:00
Dmitry Stogov
9e80558047
Load ptoper IP value
2020-07-29 17:37:01 +03:00
Dmitry Stogov
02fae1fc53
Fixed bug #79888 (Incorrect execution with JIT enabled)
2020-07-29 17:32:57 +03:00
Nikita Popov
ee7eecf321
Fix leak with nullsafe operator with constant LHS
...
Followup to 5303bcdd32 . We need to
perform the addref after emitting the opline, because that might
intern the string.
Fixes oss-fuzz #24479 .
2020-07-29 15:51:47 +02:00
Nikita Popov
c206c742d6
Fix bug #79900
...
Run debug build shutdown GC regardless even if GC has been disabled.
Of course, this only does something meaningful if the GC has been
disabled at runtime and root collection is still enabled. We cannot
prevent leaks if GC is disabled completely.
2020-07-29 15:27:48 +02:00
Nikita Popov
e2f39f84e2
Remove PHP_CHECK_GCC_ARG()
...
In favor of AX_CHECK_COMPILE_FLAG(), which we bundle since at least
PHP 7.
Closes GH-5904.
2020-07-29 15:07:53 +02:00
Nikita Popov
3a29da022b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test
2020-07-29 15:05:03 +02:00
Dmitry Stogov
0ef0ea5810
Temporary disable abstract test usage for inferring previous type of variables (previous value may be in CPU register and type of the stack slot may be inconsistent).
2020-07-29 14:58:41 +03:00
Christoph M. Becker
da0f3279ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Merge branch 'PHP-7.3' into PHP-7.4"
2020-07-29 13:38:53 +02:00
Christoph M. Becker
687e14ddc2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent test case from stalling
2020-07-29 12:47:41 +02:00
Nikita Popov
ae8dea0b10
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79895 : support = in PHP_CHECK_GCC_ARG m4 macro
2020-07-29 12:39:58 +02:00
Dmitry Stogov
5f2adfb690
Fixed live-range interval construction (close all frames)
2020-07-29 13:11:27 +03:00
twosee
ab9d10d023
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle bindto error
2020-07-29 17:48:01 +08:00
Nikita Popov
993be4b9bf
Fix STR_OR_OBJ_OF_TYPE stringable handling
2020-07-29 11:29:49 +02:00
Nikita Popov
213494f55d
Move patch to right place
...
This was supposed to be for laravel, not symfony.
[ci skip]
2020-07-29 11:01:57 +02:00
Christoph M. Becker
fc3439a7b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #73060 : php failed with error after temp folder cleaned up
2020-07-29 10:17:22 +02:00
Nikita Popov
9eb7990085
Try to fix laravel PHP 8 incompatibility
...
[ci skip]
2020-07-29 09:54:12 +02:00
Dmitry Stogov
709925a03a
Use inline function instead of macro
2020-07-29 10:42:12 +03:00
Dmitry Stogov
4b4869ffe3
Merge common "cold" part
2020-07-29 10:10:37 +03:00
George Peter Banyard
b2248789ed
Implement 'Saner Numeric Strings' RFC:
...
RFC: https://wiki.php.net/rfc/saner-numeric-strings
This removes the -1 allow_error mode from is_numeric_string functions and replaces it by
a trailing boolean out argument to preserve BC in a couple of places.
Most of the changes can be resumed to "numeric" strings which emitted a E_NOTICE now emit
a E_WARNING and "numeric" strings which emitted a E_WARNING now throw a TypeError.
This mostly affects:
- String offsets
- Arithmetic operations
- Bitwise operations
Closes GH-5762
2020-07-29 02:51:09 +01:00
Andrea Faulds
f759936591
Permit trailing whitespace in numeric strings
...
This is part 1 of the 'Saner Numeric Strings' RFC:
https://wiki.php.net/rfc/saner-numeric-strings
2020-07-29 02:22:38 +01:00
Dmitry Stogov
99ee73e6a9
Fixed incorrect reuse of exit_point
2020-07-28 23:31:58 +03:00
George Peter Banyard
73e070a614
Refactor user streams to use ZPP class check
...
Closes GH-5876
2020-07-28 17:12:40 +01:00
Dmitry Stogov
2a72778e2d
Check for EG(exception) after leaving function frame
2020-07-28 19:03:05 +03:00
Dmitry Stogov
251e667488
Prevent incorrect optimization
2020-07-28 19:02:08 +03:00
Máté Kocsis
ac0da090ae
Fix UNKNOWN default values in ext/mbstring and ext/gd
...
Closes GH-5598
2020-07-28 17:06:25 +02:00
David Carlier
118fa69e70
Check for shm_open() in libroot to support Haiku
...
Resides on libroot (system runtime) on this platform.
Closes GH-5892.
2020-07-28 16:33:17 +02:00
Nikita Popov
c434bbb344
Fix typo in test
2020-07-28 15:39:22 +02:00
Theodore Brown and Martin Schröder
470d1696d9
Implement Shorter Attribute Syntax
...
RFC: https://wiki.php.net/rfc/shorter_attribute_syntax
Closes GH-5796.
Co-authored-by: Martin Schröder <m.schroeder2007@gmail.com >
2020-07-28 15:28:57 +02:00
Christoph M. Becker
44ad2db15f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79806 : realpath() erroneously resolves link to link
2020-07-28 14:02:25 +02:00
Dmitry Stogov
f41bceb94e
Move asserts to better places
2020-07-28 13:38:43 +03:00
Côme Chilliet
b71b696826
Merge branch 'master' of git.php.net:/php-src
...
* 'master' of git.php.net:/php-src:
Replace ZEND_JIT_TRACE_MAX_EXIT_COUNTERS constant by opcache.jit_max_exit_counters configuration directive
Fix use-after-free when nullsafe used with constant LHS
2020-07-28 10:32:03 +02:00
Côme Chilliet
08dcb8e604
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Updated NEWS
fix memory leaks in ext/ldap/ldap.c
fix memory leaks in ext/ldap/ldap.c
2020-07-28 10:29:59 +02:00
Dmitry Stogov
8a42f357bf
Replace ZEND_JIT_TRACE_MAX_EXIT_COUNTERS constant by opcache.jit_max_exit_counters configuration directive
2020-07-28 11:18:18 +03:00
Nikita Popov
5303bcdd32
Fix use-after-free when nullsafe used with constant LHS
...
Fixes oss-fuzz #24436 .
2020-07-28 09:48:13 +02:00
Dmitry Stogov
2dbb4ecfa1
Avoid redundand EX(opline) initialization
2020-07-28 04:16:16 +03:00
Dmitry Stogov
fd56fd2279
Always record ZEND_JIT_TRACE_START and ZEND_JIT_TRACE_END
2020-07-28 03:23:28 +03:00
Dmitry Stogov
226617d358
Update abstarct stack before guard to keep proper type in side trace
2020-07-28 00:14:28 +03:00
Dmitry Stogov
274131e4af
Fixed incorrect side exit opline of "fake" init_fcall guard
2020-07-27 23:27:07 +03:00
Benjamin Eberlei and Thomas Weinert
eaeceb3293
Consolidate Parameter Names For ext/simplexml
...
Co-authored-by: Thomas Weinert <thomas@weinert.info >
2020-07-27 21:42:33 +02:00
Benjamin Eberlei and Thomas Weinert
8a6bc6767d
Consolidate Parameter Names For ext/dom
...
Co-authored-by: Thomas Weinert <thomas@weinert.info >
2020-07-27 21:42:33 +02:00
Dmitry Stogov
ee00f51e0a
Correct assertion
2020-07-27 21:53:58 +03:00
Dmitry Stogov
fbb18e4409
Fixed incorrect abstract stack size calculation
2020-07-27 21:11:07 +03:00
Nikita Popov
dc1a6dc0de
Remove unused func_info variable
2020-07-27 18:40:51 +02:00
Nikita Popov
d4c30ff99b
Automatically enable DASM_CHECKS in debug mode
2020-07-27 18:40:03 +02:00
Christoph M. Becker
592f70bc46
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix #79806 : realpath() erroneously resolves link to link"
2020-07-27 17:53:23 +02:00
Dmitry Stogov
b23188962e
Remove unused fields
2020-07-27 17:31:02 +03:00
Dmitry Stogov
04c3e3182a
More accurate checks to eliminate reloading
2020-07-27 17:22:03 +03:00
Nikita Popov
f9f6123941
Fix verify type jit for complex type masks
...
We should not try to check things like MAY_BE_CALLABLE in the fast
path, because those aren't real types. This is only actively wrong
for the concrete_type case, for the mask case it just uses an
unnecessarily large immediate.
2020-07-27 15:54:22 +02:00
Nikita Popov
e0aa2724c3
Emit diagnostic on dasm_link() failure
2020-07-27 15:54:22 +02:00
Tyson Andre
85d4b560df
[skip ci] Add zend.exception_string_param_max_len to UPGRADING
...
For GH-5769 (mentioned in 07db64156e )
2020-07-27 09:40:24 -04:00
Dmitry Stogov
8d773a768f
Properly cleanup in case of abort because too many functions in single trace.
2020-07-27 16:37:15 +03:00
Derick Rethans
d66a6ba58a
Mention that an API bump must be done with RC1
...
It's okay to change the API change up until the first release candidate only,
and it may not be changed afterwards.
There is a discussion at https://github.com/php/php-src/pull/4470/files that
never resulted in a fix.
/cc @sgolemon @carusogabriel
2020-07-27 14:19:21 +01:00
Christoph M. Becker
54e15dcd6f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79806 : realpath() erroneously resolves link to link
2020-07-27 15:11:39 +02:00
Nikita Popov
6d97e7f0e9
JIT internal functions with return type in debug mode
...
The return type check is just a debug assertion, it's okay if it
is not performed in JIT mode. We already don't perform all the
argument validation in that case. Just disable the one test that
checks for this.
This removes an annoying discrepancy between debug&release mode.
2020-07-27 15:02:59 +02:00
Dmitry Stogov
52cebf65f8
Prevent setting of incorrect continuation counters
2020-07-27 14:45:02 +03:00
Máté Kocsis
f62ec5cf6c
Fix microtime() test
2020-07-27 13:14:21 +02:00
Derick Rethans
cdc8523300
Last pass of 'More consistent parameter names for date/time functions'
2020-07-27 11:42:13 +01:00
Dmitry Stogov
c56c19cec3
Fixed incorrect reference counting (we shouldn't skip ADDREF for IS_CV result)
2020-07-27 13:18:34 +03:00
Christoph M. Becker
041cbec023
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77932 : File extensions are case-sensitive
2020-07-27 11:56:52 +02:00
Nikita Popov
08e6c20955
Fix null pointer deref in compile_return()
...
Fixes oss-fuzz #24387 .
2020-07-27 10:27:26 +02:00
Nikita Popov
3b5b288127
Add AST export support for nullsafe operator
...
Fixes oss-fuzz #24403 and variants.
2020-07-27 10:20:02 +02:00
Dmitry Stogov
d9f5c44d5f
type in comment
2020-07-27 11:13:23 +03:00
Dmitry Stogov
9aa5967a5f
Fixed memory leaks
2020-07-27 10:46:58 +03:00
Derick Rethans
f66627abff
Another pass of improving ext/date argument names
2020-07-26 10:38:53 +01:00
Derick Rethans
2b66cc95d9
Merge branch 'PHP-7.4'
2020-07-26 10:09:27 +01:00
Tyson Andre
07db64156e
[RFC] Make string length for getTraceAsString() configurable
...
Add a `zend.exception_string_param_max_len` ini setting.
(same suffix as `log_errors_max_len`)
Allow values between 0 and 1000000 bytes.
For example, with zend.exception_string_param_max_len=0,
"" would represent the empty string, and "..." would represent something
longer than the empty string.
Previously, this was hardcoded as exactly 15 bytes.
Discussion: https://externals.io/message/110717
Closes GH-5769
2020-07-25 09:50:57 -04:00
Máté Kocsis
8664ff7ae1
Cleanup argument handling in ext/reflection
...
Closes GH-5850
2020-07-24 17:47:42 +02:00
Nikita Popov
1f8a93abaa
Support class+mask union for internal argument
2020-07-24 16:40:14 +02:00
Derick Rethans
e96e4ac726
More consistent parameter names for date/time functions
2020-07-24 11:49:01 +01:00
Dmitry Stogov
0ef8e0c115
Result of branching opcode in side trace is unknown
2020-07-24 13:26:03 +03:00
Nikita Popov
d65d3f5298
Fix bug #79108
...
Don't expose references in debug_backtrace() or exception traces.
This is regardless of whether the argument is by-reference or not.
As a side-effect of this change, exception traces may now acquire
the interior value of a reference, which may be unexpected for
some internal functions. This is what necessitated the change in
the spl_array sort implementation.
2020-07-24 12:23:34 +02:00
Nikita Popov
27ad19c3e8
Validate collator earlier during sort
...
Check this once before the sort, instead of on every compare.
Also directly store the UCollator to make things more obvious.
2020-07-24 11:58:10 +02:00
Nikita Popov
7eec281b5e
Avoid UNKNOWN default in PDO::query()
2020-07-24 11:44:47 +02:00
Máté Kocsis
70a3a909cd
Add the Z_PARAM_PATH_OR_NULL() and Z_PARAM_ZVAL_OR_NULL() macros
2020-07-24 10:37:35 +02:00
Nikita Popov
0a5b7c81b7
Make nested ternary without parentheses a compile error
...
This was deprecated in PHP 7.4.
2020-07-24 10:35:42 +02:00
Ilija Tovilo and Nikita Popov
9bf119832d
Implement nullsafe ?-> operator
...
RFC: https://wiki.php.net/rfc/nullsafe_operator
Closes GH-5619.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-07-24 10:05:03 +02:00
George Wang
293d2f99f1
Address some compiler warnings.
2020-07-23 17:21:24 -04:00
George Wang
78fc12a37a
Merge branch 'PHP-7.4'
2020-07-23 16:08:54 -04:00
Dmitry Stogov
bc4201f6b7
Cleanup abstract test usage
2020-07-23 21:38:34 +03:00
Nikita Popov
86882060ab
Use zend_call_method in SoapFault::__toString()
2020-07-23 16:45:53 +02:00
Nikita Popov
a1ab7bbc3a
Simplify user_stream_create_object
2020-07-23 16:20:25 +02:00
Dmitry Stogov
b3e51b7675
Allow keeping result of FETCH_DIM_R in CPU register
2020-07-23 17:08:28 +03:00
Nikita Popov
dc30e1d812
Cleanup SPL instantiation code
2020-07-23 16:00:12 +02:00
Christoph M. Becker
fc4d462e94
Fix #78236 : convert error on receiving variables when duplicate [
...
When an input variable name contains a non matched open bracket, we not
only have to replace that with an underscore, but also all following
forbidden characters.
2020-07-23 15:48:09 +02:00
Christoph M. Becker
4293dd5d34
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79884 : PHP_CONFIG_FILE_PATH is meaningless
2020-07-23 15:43:02 +02:00
Dmitry Stogov
96a1b409df
Don't record "fake" closures
2020-07-23 15:18:28 +03:00
Nikita Popov
93594862f4
Remove no longer needed stdint compatibility defines
...
Closes GH-5886.
2020-07-23 13:00:04 +02:00
Dmitry Stogov
14400b50d3
We track only arguments of user functions on abstract stack
2020-07-23 13:39:49 +03:00
Dmitry Stogov
7de23662df
Fixed 32-bit build
2020-07-23 12:26:34 +03:00
Dmitry Stogov
f6164b8407
Revert "Fixed DynASM failure"
...
This reverts commit 62ca6b567c .
2020-07-23 12:16:58 +03:00
Dmitry Stogov
62ca6b567c
Fixed DynASM failure
2020-07-23 12:13:33 +03:00
Dmitry Stogov
b0c3ca0e52
Avoid register reloading
2020-07-23 12:08:07 +03:00
Nikita Popov
545928e4b8
Fix some clang warnings
2020-07-23 10:35:40 +02:00
Nikita Popov
b6b6e76937
Try to fix 32-bit NTS build
2020-07-23 09:58:17 +02:00
Christopher Jones
99d2b24b15
Make test decimal to binary conversion expectation more tolerant
2020-07-23 16:31:33 +10:00
Christopher Jones
b2d1736de8
Fix cut/paste error in expected test output
2020-07-23 16:29:51 +10:00
Christoph M. Becker
1e938e8eba
Fix build
...
MSVC is pretty picky there, so we add the `ZEND_VOIDP` cast.
2020-07-22 22:57:58 +02:00
Christoph M. Becker
dd30a3d8ce
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix brittle test
2020-07-22 20:47:16 +02:00
Christoph M. Becker
f1436c4832
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix minor memory leak of CG(script_encoding_list)
2020-07-22 20:34:21 +02:00
Dmitry Stogov
d05e88250a
Revert "Disable tracing JIT on AppVeyor"
...
This reverts commit a986933dde .
Tracing JIT for Windows is already fixed.
2020-07-22 20:03:50 +03:00
twosee
6e92487f66
Fix warnings of strict-prototypes
...
Closes GH-5887.
2020-07-23 00:59:00 +08:00
twosee
a65ec4c2db
Change type of max_num_args to uint32_t
...
Closes GH-5885.
2020-07-23 00:55:58 +08:00
twosee
e29ee65ec0
Export zend_register_error_notify_callback() with ZEND_API
2020-07-23 00:45:06 +08:00
Nikita Popov
5febd633b9
Accept unsigned instead of enum pdo_attribute_type
...
Driver-specific options get passed to these functions, which are
not part of the pdo_attribute_type enum. Newer GCC versions don't
like that. Accept a simple integr type instead.
2020-07-22 18:28:22 +02:00
Dmitry Stogov
bc1d7b6040
Reserve WIN64 shadow space
2020-07-22 17:49:51 +03:00
Nikita Popov
9250abfb04
php.ini cleanup
...
[ci skip]
2020-07-22 15:46:03 +02:00
Dmitry Stogov
c9434a4af2
Separate and fix deoptimization code generator
2020-07-22 15:04:17 +03:00
Nikita Popov
7a3dcc3e33
Treat namespaced names as single token
...
Namespace names are now lexed as single tokens of type
T_NAME_QUALIFIED, T_NAME_FULLY_QUALIFIED or T_NAME_RELATIVE.
RFC: https://wiki.php.net/rfc/namespaced_names_as_token
Closes GH-5827.
2020-07-22 12:36:05 +02:00
Nikita Popov
acbf7802af
Improved number to string comparison semantics
...
RFC: https://wiki.php.net/rfc/string_to_number_comparison
Closes GH-3886.
2020-07-22 12:23:49 +02:00
Dmitry Stogov
2940839d28
Prevent incorrect trasing JIT TSSA usage for range() result type inference
2020-07-22 13:01:11 +03:00
Nikita Popov
e6ae1bf489
Check dual_it validity in CallbackFilterIterator::accept()
...
Avoid accessing intern->u.cbfilter null pointer, though it's
harmless here.
2020-07-22 11:31:15 +02:00
Nikita Popov
f90c735957
Drop no-op dasm_growpc() call
...
This doesn't do anything, as maxpc=0 is passed. However, ubsan
complains about the memset of a null pointer, so avoid it.
2020-07-22 11:11:36 +02:00
Nikita Popov
aaedbde8b4
Mark zend_jit_patch memory accesses as unaligned
...
This prevents ubsan from complaining.
2020-07-22 11:02:24 +02:00
Nikita Popov
eb04cb5f20
Move checks after zpp in opcache_is_script_cached()
2020-07-22 10:52:50 +02:00
Nikita Popov
80b4d49f90
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79881
2020-07-22 10:21:29 +02:00
Christopher Jones
30073ac645
Update NEWS
2020-07-22 17:30:20 +10:00
George Peter Banyard
7a3375a08c
Use ZPP callable check for oci_register_taf_callback()
2020-07-22 17:29:30 +10:00
George Peter Banyard
0d146cb3eb
Some cleanup in OCI8 extension for PHP 8
2020-07-22 17:29:30 +10:00
Christoph M. Becker
a986933dde
Disable tracing JIT on AppVeyor
...
This is a temporary measure until the current issues[1] are resolved.
[1] <https://github.com/php/php-src/commit/0e1e991a89528b571a0271a3f24f9d3c2c36e23a#commitcomment-40805659 >
2020-07-22 08:55:52 +02:00
Dmitry Stogov
b5e2b64adc
Fix deoptimization info and corresponding memory leaks
2020-07-21 22:58:24 +03:00
Dmitry Stogov
b44169e9dd
Fixed bug #79864 (JIT segfault in Symfony OptionsResolver)
2020-07-21 20:54:33 +03:00
Tyson Andre
4cf8b6f1c9
Support optional comma in closure use list
...
RFC: https://wiki.php.net/rfc/trailing_comma_in_closure_use_list
Discussion: https://externals.io/message/110715
The release manager has agreed to allow merging of RFCs that have near-unanimous
votes. If an RFC ends up not achieving the required 2/3 majority at the time the
announced voting period closes, this implementation commit will be reverted
in time for the feature freeze.
Closes GH-5793
2020-07-21 13:01:27 -04:00
Máté Kocsis
69a5c561d0
Improve argument types and names in ext/ctype
...
Closes GH-5878
2020-07-21 16:40:47 +02:00
Nikita Popov
e079e753dc
Give zend_pass_function an arginfo
...
Now that the ZEND_ACC_VARIADIC flag is set, we should also make
sure there is a variadic arg that can be looked up.
2020-07-21 16:01:45 +02:00
Nikita Popov
df2749da70
Tweak zend_test arginfo/zpp
2020-07-21 15:33:01 +02:00
Nikita Popov
1d4e229ab7
Fix incorrect initialization in date_sunrise()
2020-07-21 15:33:01 +02:00
Dmitry Stogov
0e1e991a89
Switch to tracing JIT by default
2020-07-21 16:15:11 +03:00
Nikita Popov
f7f557926e
Fix arg/func info
...
* mysqli_get_server_info() cannot return null. The underlying API
is infallible.
* mysqli_select_db() func info is redundant.
* mb_detect_order() can only return array|true, not array|false.
Also make the func_info.phpt test that is supposed to catch these
kinds of issues actually work.
2020-07-21 15:00:33 +02:00
Máté Kocsis
5770b66722
Cleanup argument handling of Zend functions and methods
...
Closes GH-5847
2020-07-21 14:47:03 +02:00
Remi Collet
42226fcf03
add ZipArchive::CM_XZ constant (in upcoming libzip 1.8.0)
2020-07-21 14:43:52 +02:00
Dmitry Stogov
7686118212
Fix type recording and side exit information for FE_FETCH_* instructions
2020-07-21 15:39:13 +03:00
Nikita Popov
c9881fde7a
Run arginfo / zpp mismatch tests for methods as well
...
As a side-effect, this also catches issues where classes are not
prepared for use with newInstanceWithoutConstructor.
2020-07-21 14:17:29 +02:00
Nikita Popov
38fb1f8383
Check for missing arginfo arguments
...
Internal functions error when too many arguments are passed. Make
this part of the verification we do in debug builds. This will
help avoid cases where an argument is missing in the stubs,
as recently encountered in 6d96f0f .
2020-07-21 14:17:29 +02:00
Dmitry Stogov
be0d912674
Avoid recording of uninitialized variable
2020-07-21 14:11:19 +03:00
Nikita Popov
ae2b214be2
Check for redundant func info
2020-07-21 13:01:12 +02:00
Nikita Popov
ac56ca0dcc
Separate __call and __soapCall implementations
...
This is overly pedantic, but allows us to enable more arginfo
consistency checks.
2020-07-21 12:59:28 +02:00
Nikita Popov
4dd8fec073
Add stubs for PDO PGSql extension methods
2020-07-21 12:49:37 +02:00
Nikita Popov
1afcced1f0
Add stubs for PDO SQLite extension methods
...
Putting these under a dummy PDO_SQLite_Ext class.
2020-07-21 12:49:36 +02:00
Dmitry Stogov
047474c3b4
Disable JIT for PHPDBG
2020-07-21 13:26:32 +03:00
Nikita Popov
4ce9571978
Fix UConvert::getErrorMessage() leak on zpp failure
2020-07-21 12:05:44 +02:00
Nikita Popov
ae81549048
Move SOAP_SERVER_BEGIN_CODE() after zpp
...
This is still very dubious, because there are lots of other "returns"
between the BEGIN and END -- won't that end up not restoring the
original state?
2020-07-21 12:05:42 +02:00
Nikita Popov
b3ea6ce720
Make ReflectionGenerator final
...
This class is not safe against malicious extension / instantiation.
2020-07-21 11:53:00 +02:00
Nikita Popov
3a9036ac54
Stricter verification of func info against arg info
...
Make sure they're actually the same up to cases where func info
allows more accurate expressions. There are some awkward edge cases
around true/false/null limitations in union types.
2020-07-21 11:47:52 +02:00
Nikita Popov
6e09a3e203
Adjust Doctrine workaround in community job
...
[ci skip]
2020-07-21 11:28:41 +02:00
Dmitry Stogov
447a098ebb
Switch to tracing JIT by default
2020-07-21 12:22:36 +03:00
Dmitry Stogov
bb9e3dd6cc
Use different temporary register
2020-07-21 12:21:47 +03:00
Gabriel Caruso
d9227a1b44
Next is PHP 8.0.0beta1
2020-07-21 11:14:19 +02:00
Nikita Popov
e4c1366b63
Remove some redundant func info
...
This is fully covered by arginfo.
The array_merge_recursive() RC information was also wrong,
it should be the same as array_merge().
2020-07-21 11:10:07 +02:00
Gabriel Caruso
a1d88b193d
Update NEWS for PHP 8.0.0alpha3
2020-07-21 11:06:59 +02:00
Dmitry Stogov
e527478c3d
Fixed support for 64-bit constants
2020-07-21 11:49:15 +03:00
Nikita Popov
33ddc3bb96
Fix mb_ereg_search* arg and func info
2020-07-21 10:40:08 +02:00
Nikita Popov
da4262df6f
Fix readline test after callback changes
...
This one requires libedit and was probably missed for that reason.
2020-07-21 10:40:08 +02:00
Nikita Popov
be9c5daf28
Remove null from highlight_* return types
...
Also fix show_source() discrepancy in func_info.
2020-07-21 10:40:08 +02:00
Derick Rethans
69af5adc55
Merge branch 'PHP-7.4'
2020-07-21 09:24:27 +01:00
Nikita Popov
9d37a57411
Remove bool return type from assert_options
...
Not seeing any way this function can return bool.
2020-07-21 10:18:33 +02:00
Nikita Popov
fda78e5965
Fix iptcembed func info
...
This function can return true with $spool >= 2.
2020-07-21 10:18:33 +02:00
Nikita Popov
2160f5ce59
Call zpp_none in PharFileInfo::__destruct()
...
Using __destruct() with internal classes is dubious, but not so
simple to avoid here because the code extends SPL classes.
2020-07-21 10:18:33 +02:00
Christoph M. Becker
50de334d26
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3 is now 7.3.22-dev
2020-07-21 09:53:39 +02:00
Dmitry Stogov
91d4d2443f
Fixed pg_select() function info
2020-07-21 09:58:36 +03:00
George Peter Banyard
d9330fc67e
Use ZPP callable check in readline extension
2020-07-21 00:52:50 +01:00
George Peter Banyard
a1097677a5
Use ZPP callable for PDO Sqlite
2020-07-21 00:20:02 +01:00
Dmitry Stogov
7cfb141f9d
Fixed tracing JIT exception handling
2020-07-21 01:49:01 +03:00
Máté Kocsis
19bf66a9e4
Explode _php_image_output_ctx() into multiple functions
...
Closes GH-5844
2020-07-20 23:25:02 +02:00
Dmitry Stogov
774bc760af
Fixed VM interrupt handling
2020-07-20 23:14:23 +03:00
Dmitry Stogov
4b13985f25
Keep CPU regesters used by deoptimizer
2020-07-20 21:04:14 +03:00
Dmitry Stogov
2b7035e824
Fixed tracing JIT for VM without global register variables
2020-07-20 20:59:31 +03:00
Nikita Popov
236ddc56a2
Preserve original ce_flags when registering class
...
Bug that regularly sneaks in: ZEND_ACC_FINAL is set before calling
zend_register_internal_class() and promptly gets ignored. Remove
this footgun by preserving flags from the original CE.
2020-07-20 17:00:04 +02:00
Nikita Popov
777aa9163d
Fetch pdo stmt after zpp
2020-07-20 16:27:46 +02:00
Nikita Popov
9ee16a3c12
Update method signature in test
2020-07-20 16:16:37 +02:00
Nikita Popov
7d3e530f4e
Use zpp for PDO fetch mode
...
Also changing the function signatures to accept variadic args
for the fetch params. If we're already breaking Doctrine anyway,
we may as well do it properly.
2020-07-20 16:05:33 +02:00
Nikita Popov
e3827cea4e
Fix bug #79857 : Add upgrading note for exit dtor change
...
[ci skip]
2020-07-20 15:30:20 +02:00
Nikita Popov
6f8d0ba0dd
Fix bug #79868
...
This simply restores the code from PHP 7.4 which I incorrectly
"simplified" in master.
2020-07-20 15:15:23 +02:00
Nikita Popov
7fd4212cc0
Add common code for magic method assignment
...
This was repeated three times.
2020-07-20 14:57:10 +02:00
Christoph M. Becker
05e9197c51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #63527 : DCOM does not work with Username, Password parameter
2020-07-20 14:45:42 +02:00
Dmitry Stogov
d67adc39a0
Fixed incorrect deoptimization info
2020-07-20 13:49:46 +03:00
Nikita Popov
efce3694b7
Directly assign magic methods
...
Instead of going through intermediary variables.
2020-07-20 11:22:47 +02:00
Nikita Popov
91e5452b95
Remove unused lc_class_name variable
...
This is probably a leftover from "old style constructor" support.
2020-07-20 11:15:58 +02:00
Nikita Popov
19de727e04
Report magic method names as written
...
Report the name the way the user has written it, the same way we
always do.
2020-07-20 11:12:47 +02:00
Nikita Popov
149029b9d6
Unify magic method visibility check
...
This was missing entirely for the internal function case.
2020-07-20 11:12:47 +02:00
Dmitry Stogov
9f0213fff3
Remove old code (BP_VAR_RW warning)
2020-07-20 11:57:19 +03:00
Nikita Popov
015fc638fb
Fix tests I missed before
2020-07-20 10:54:59 +02:00
Nikita Popov
312fe2bdce
Unify magic method return type checks
2020-07-20 10:51:48 +02:00
Nikita Popov
fbbcf82ab7
Unify static/non-static check for magic methods
...
And promote it to be fatal.
2020-07-20 10:39:43 +02:00
Nikita Popov
b466e8b754
Add missing arg num check for __set_state
2020-07-20 10:20:29 +02:00
Nikita Popov
dcaf62f3d3
Clean up zend_check_magic_method_implementation
...
Let everything go through a common function, which fixes some
consistency issues.
2020-07-20 10:17:40 +02:00
Christopher Jones
9dc08f7396
Merge branch 'oci8-3.0'
...
* oci8-3.0:
Rename OCI8 classes to use standard names so arg stub parsing works
Bump OCI8 version to 3.0 so a PHP 8 PECL release can be made
2020-07-20 18:09:09 +10:00
Christopher Jones
74ca2a39a7
Rename OCI8 classes to use standard names so arg stub parsing works
2020-07-20 18:06:20 +10:00
Christopher Jones
8058776295
Bump OCI8 version to 3.0 so a PHP 8 PECL release can be made
2020-07-20 18:06:19 +10:00
Nikita Popov
59536d5baa
Revert "Switch to tracing JIT by default"
...
This reverts commit 10b09578a8 .
This seems to cause many test failures:
Test === operator : different types [tests/lang/operators/operator_identical_basic.phpt]
Test <=> operator : different types [tests/lang/operators/operator_spaceship_basic.phpt]
comparing different variables for equality [Zend/tests/compare_001_64bit.phpt]
comparing different variables for identity [Zend/tests/compare_002_64bit.phpt]
Rebinding of ::getClosure()s [Zend/tests/closure_061.phpt]
comparing different variables (greater than) [Zend/tests/compare_003_64bit.phpt]
comparing different variables (less than) [Zend/tests/compare_004_64bit.phpt]
comparing different variables (greater or equal than) [Zend/tests/compare_005_64bit.phpt]
comparing different variables (smaller or equal than) [Zend/tests/compare_006_64bit.phpt]
Invalid numeric string E_WARNINGs and E_NOTICEs, combined assignment operations [Zend/tests/numeric_string_errors_assign.phpt]
Bug #51819 (Case discrepancy in timezone names cause Uncaught exception and fatal error) [ext/date/tests/bug51819.phpt]
Test all filters returned by filter_list() [ext/filter/tests/033.phpt]
filter_var() and FILTER_VALIDATE_MAC [ext/filter/tests/055.phpt]
Test strrpos() function : usage variations - unexpected inputs for 'needle' argument [ext/standard/tests/strings/strrpos_variation10.phpt]
Test strtr() function : usage variations - empty string & null for 'str' argument [ext/standard/tests/strings/strtr_variation4.phpt]
Test strtr() function : usage variations - unexpected inputs for 'from' argument [ext/standard/tests/strings/strtr_variation6.phpt]
Test strstr() function [ext/standard/tests/strings/strstr.phpt]
2020-07-20 09:45:09 +02:00
Dmitry Stogov
10b09578a8
Switch to tracing JIT by default
2020-07-20 09:17:04 +03:00
Tyson Andre
0d519fa493
Skip upload_2G.phpt if disk_free_space() <= 2GB
...
This test failed when the free disk space is close to 2.15GB.
I see the file size in the .out file as 0.
PHP has to save the full file contents to disk (the path is in `$_FILES`)
Related to GH-5283
Closes GH-5873
2020-07-19 09:21:53 -04:00
Nikita Popov
9002e95f7c
Use proper methods for php_user_filter implementation
...
These are dummy methods, but should at least check zpp for
arginfo consistency.
2020-07-17 17:01:47 +02:00
Nikita Popov
952222d067
Move SessionHandler sanity checks after zpp
2020-07-17 16:56:50 +02:00
Nikita Popov
9d2af91033
Only set DIT type on successful initialization
2020-07-17 16:42:56 +02:00
Nikita Popov
d625c29df7
Remove spurious return true from DOMXPath::registerPhpFunctions()
...
Only one of three identical cases returned true, and the function
is documented to return void. Remove the outlier.
2020-07-17 16:11:30 +02:00
Nikita Popov
d449d1dbbf
Use string|array type in DOMXPath::registerPhpFunctions()
2020-07-17 16:10:49 +02:00
Nikita Popov
f9ced0d4f7
Add missing zpp_none call in Exception::__wakeup
2020-07-17 16:06:54 +02:00
Nikita Popov
954244b3cb
Convert SPL fatal error to Error exception
2020-07-17 16:06:54 +02:00
George Peter Banyard
a1fee87c9a
Drop useless zend_accel_script_persistable() function
2020-07-17 17:00:42 +02:00
George Peter Banyard
fa60f57be4
Drop unused param in zend_parse_arg_class_name_or_obj()
2020-07-17 17:00:27 +02:00
Benjamin Eberlei
4890bf19aa
Add error notification callbacks to UPGRADING.INTERNALS
2020-07-17 15:51:15 +02:00
Nikita Popov
6744ead1c9
Parse parameters in zend_test_void_return()
2020-07-17 15:43:40 +02:00
Nikita Popov
6ff31eebb1
Fix some pgsql arginfos
...
And make sure too few/many arguments throws, to satisfy the
function signature.
2020-07-17 15:43:37 +02:00
Nikita Popov
658e861fbb
Some zpp cleanup in pgsql
2020-07-17 15:31:22 +02:00
Nikita Popov
a20f07ee59
Remove some zpp quiet uses in pgsql
...
These functions don't do anything special, just use normal zpp.
2020-07-17 15:24:46 +02:00
Nikita Popov
895a22c03c
Add missing image_type_to_extension() argument
2020-07-17 15:24:41 +02:00
Nikita Popov
86a62eb1fc
Fixed bug #79867
...
In line with usual rules, give untyped properties a null default
value. Otherwise constructor promotion would give you a property
declaration that cannot be achieved through any other means.
2020-07-17 15:10:45 +02:00
Benjamin Eberlei
6c8b94eb42
Introduce error notification callbacks that are run independant of zend_error_cb
2020-07-17 15:08:11 +02:00
Nikita Popov
857166c351
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79839
2020-07-17 14:51:16 +02:00
Nikita Popov
4903f7c5fd
Fix IntlGregorianCalendar constructor signature
...
Give these conversative UNKNOWN defaults and no types, as the
overload is something of a mess.
2020-07-17 12:47:25 +02:00
Dmitry Stogov
83478d4fe0
Side exit on overflow
2020-07-17 13:03:35 +03:00
Nikita Popov
1cba736470
Throw correct exception from ArrayObject sort methods
...
Let normal zpp throw ArgumentCountErrors.
2020-07-17 10:46:11 +02:00
Nikita Popov
81d8d60250
Add missing param to DatePeriod::__construct()
...
The signature is very overloaded, but takes at most four params,
not three.
2020-07-17 10:46:11 +02:00
Dmitry Stogov
6b2c4be48a
JMP optimization
2020-07-17 11:07:22 +03:00
Dmitry Stogov
e0af92c16e
Eliminate useless exception checks
2020-07-17 10:13:23 +03:00
Dmitry Stogov
a167e0426d
Eliminate some reference-counting
2020-07-17 00:40:10 +03:00
Nikita Popov
d097dfca72
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Drop freetype from i386"
2020-07-16 22:41:28 +02:00
Nikita Popov
a69d9f2039
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix azure i386 build
2020-07-16 21:16:30 +02:00
Nikita Popov
6d96f0f9ce
Fix WeakReference::create() stub
2020-07-16 20:46:45 +02:00
Dmitry Stogov
925909dc46
cleanup
2020-07-16 20:07:51 +03:00
Christoph M. Becker
ae7554270f
Fix #79805 : sapi_windows_vt100_support throws TypeError
...
It does not make sense to throw a `TypeError` when the stream can't be
analyzed. If `sapi_windows_vt100_support()` is used as getter, we just
return `false` in that case; if the function is used as setter, we
additionally trigger a warning.
We also fix the test cases for this function, which have been broken
before. Note that these tests are still whitespace sensitive.
2020-07-16 18:36:02 +02:00
Christoph M. Becker
4659c12ae0
Fix #79846 : 8c67c16699 broke simple regexp
...
We backport the respective upstream fix[1].
[1] <https://vcs.pcre.org/pcre2?view=revision&revision=1267 >
2020-07-16 18:32:26 +02:00
Dmitry Stogov
03a98d9420
cleanup
2020-07-16 17:09:14 +03:00
Christoph M. Becker
7e357f470d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable further tests on Windows
2020-07-16 16:08:07 +02:00
Dmitry Stogov
d50919a03b
Check type guard on result of FETCH_OBJ_R/IS instructions
2020-07-16 15:14:11 +03:00
Remi Collet
50fb12c39b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
#79657 was cherry-picked in 7.4.7
2020-07-16 12:05:58 +02:00
Christoph M. Becker
b31c787401
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix readlink related memory leak
2020-07-16 09:18:45 +02:00
Dmitry Stogov
ebb94af754
Fixed tracing JIT for ASSIGN to typed reference
2020-07-16 00:19:00 +03:00
Pedro Magalhães
272b887b7b
Ignore inheritance rules on private methods
...
Closes GH-5401
2020-07-15 17:09:57 +01:00
Christoph M. Becker
371e29ef3a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests regarding negative fileinode()
2020-07-15 16:39:54 +02:00
Dmitry Stogov
f74e9a4dd3
Check type guard on result of FETCH_DIM_R/IS instructions
2020-07-15 17:28:46 +03:00
Nikita Popov
1c0ee68b83
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78008 : dns_check_record() always return true on Alpine
2020-07-15 15:10:50 +02:00
Nikita Popov
5785a15f4e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79862
2020-07-15 15:00:45 +02:00
Nikita Popov
9a1a94e9b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79820
2020-07-15 10:59:32 +02:00
Nikita Popov
f60cf0cfe7
Remove type argument from zend_get_zval_ptr
...
As pointed out by Levi, this is unused, and we already changed
the signature of this function for PHP 8.
2020-07-15 09:51:51 +02:00
Christopher Jones
3804858c47
Retrofit description of recent PR changes
2020-07-15 13:44:32 +10:00
Nikita Popov
27800441b5
Reduce scope of preload compiler_options
...
Only set preloading compiler_options while executing the preload
file, not when performing linking afterwards. Otherwise options
like IGNORE_INTERNAL_CLASSES will hide classes from inheritance
verification.
2020-07-14 16:10:04 +02:00
Nikita Popov
b702ad14c9
Fix preloading of union typed property inherited from internal class
...
Tricky edge case: We inherit a property from an internal class,
in which case no property duplication takes place. We should not
try to persist the property info in that case. This didn't really
matter previously, but now that the property has some non-interned
owned data (the type), we need to make sure we don't try to free
that.
2020-07-14 15:24:58 +02:00
Nikita Popov
7e6b2e2e23
Check for name vs ce in a few more places
...
The type lists may contain CEs, we should not assume they only
contain names.
2020-07-14 14:47:47 +02:00
Dmitry Stogov
7c16d11e3c
Tracing JIT for SWITCH instructions
2020-07-14 15:15:08 +03:00
Dmitry Stogov
ddba2a705e
Better support for 64-bit .aword constants
2020-07-14 15:14:21 +03:00
Nikita Popov
06162194d6
Fix preloading property type resolution
...
This was causing many failures under --preload...
2020-07-14 12:59:04 +02:00
Nikita Popov
e5cb53ec68
Merge branch 'PHP-7.4'
...
* PHP-7.4:
2020-07-14 12:44:06 +02:00
Nikita Popov
745bc4c2ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79849
2020-07-14 12:43:03 +02:00
Nikita Popov
70501b81a7
Fixed bug #79852
2020-07-14 12:31:06 +02:00
Nikita Popov
8c89f23c45
Use different scratch register
...
r1 clashes with FCARG1a on Windows, so use a different scratch
register. FCARG2a should be free here. Hopefully fixes the
AppVeyor build.
2020-07-14 10:52:50 +02:00
Martin Schröder
547d98b81d
Support socketpairs in proc_open()
...
Closes GH-5777.
2020-07-14 10:35:45 +02:00
Christoph M. Becker
1a00d015be
Remove out-dated comment
...
ZTS support has been added around ~7.2.
2020-07-13 19:14:59 +02:00
Christoph M. Becker
11a628d96c
Fix typos
2020-07-13 19:13:45 +02:00
Nikita Popov
e59efb3740
Put debug function behind ifdef
2020-07-13 17:24:31 +02:00
Nikita Popov
2edc5e00ac
Add user upgrading note for no_separation change
...
I added this to UPGRADING.INTERNALS, but it should also be
mentioned in UPGRADING, as it affects user-visible behavior.
[ci skip]
2020-07-13 14:50:25 +02:00
Nikita Popov
0cab3fa10e
Add upgrading note for crypt change
...
[ci skip]
2020-07-13 14:44:17 +02:00
Nikita Popov
2d98f0cad2
Restore warning
2020-07-13 14:40:19 +02:00
George Peter Banyard
4f3eccfd4d
Use consistent types
...
uint32_t type for argument count
size_t for length of char*
zend_bool for a zval bool arg
Closes GH-5845
2020-07-13 13:30:54 +02:00
Dmitry Stogov
48963378c1
Improved reference-counting inference
2020-07-13 13:08:32 +03:00
Nikita Popov
0280c64a2e
Add upgrading note
...
[ci skip]
2020-07-13 11:47:25 +02:00
Remi Collet
4884f1be85
define COMPILER and ARCHITECTURE from environment
2020-07-13 11:14:02 +02:00
Rowan Tommins
55a15f32ce
Improve output of tokens in Parse Errors
...
Currently, unexpected tokens in the parser are shown as the text
found, plus the internal token name, including the notorious
"unexpected '::' (T_PAAMAYIM_NEKUDOTAYIM)".
This commit replaces that with a more user-friendly format, with
two main types of token:
* Tokens which always represent the same text are shown like
'unexpected token "::"' and 'expected "::"'
* Tokens which have variable text are given a user-friendly
name, and show like 'unexpected identifier "foo"', and
'expected identifer'.
A few tokens have special cases:
* unexpected token """ -> unexpected double-quote mark
* unexpected quoted string "'foo'" -> unexpected single-quoted
string "foo"
* unexpected quoted string ""foo"" -> unexpected double-quoted
string "foo"
* unexpected illegal character "_" -> unexpected character 0xNN
(where _ is almost certainly a control character, and NN is the
hexadecimal value of the byte)
The \ token has a special case in the implementation just to stop
bison making a mess of escaping it and it coming out as \\
2020-07-13 11:07:40 +02:00
Dmitry Stogov
d4fdf79add
JIT for array merging
2020-07-13 12:04:08 +03:00
Nat Wyatt
6f48ccf51c
Fix compilation errors when EXIF_DEBUG is defined
...
Fix warnings and error when compiling with EXIF_DEBUG defined.
Closes GH-5838.
2020-07-13 11:00:02 +02:00
Christoph M. Becker
99c78963c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test for x86 Windows
2020-07-13 10:53:55 +02:00
Nikita Popov
000f609c26
Add another doctrine workaround
...
This has been fixed a few months ago, but apparently Doctrine
doesn't do releases.
2020-07-13 10:27:44 +02:00
Nikita Popov
1c5f0b8a16
Check for undef var in verify return jit
2020-07-13 10:05:39 +02:00
Nikita Popov
213852de78
Fixed bug #79828
2020-07-13 09:55:13 +02:00
Nikita Popov
86e2b7bb70
Fixed bug #79841
2020-07-13 09:41:05 +02:00
Christoph M. Becker
c9639cffdb
Fix PDO_Firebird numeric to string conversion on Windows
...
Commit aaa1f90[1] dropped support for the `snprinf()` `I` modifier, so
we use the standard `ll` modifier which is suitable for 32bit and 64bit
Windows. We also replace the deprecated `I64` suffix[2] with the `LL`
suffix.
This fixes ext/pdo_firebird/tests/bug_64037.phpt.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=aaa1f90e3f90c24098fa55a7b868fdca0b89ee25 >
[2] <https://docs.microsoft.com/en-us/cpp/cpp/numeric-boolean-and-pointer-literals-cpp?view=vs-2019#integer-literals >
2020-07-12 23:52:22 +02:00
Christoph M. Becker
b6e70e14bd
Fix PDO_Firebird tests which assume ERRMODE_SILENT
...
These have apparently been missed when PR 5388[1] had been merged.
[1] <https://github.com/php/php-src/pull/5388 >
2020-07-12 18:15:56 +02:00
Christoph M. Becker
6c7b5c0760
Unbork tests for PDO_Firebird
...
PDO_Firebird raises a warning regarding the unknown SQL syntax, which
we have to silence to avoid run-tests.php to mark the test as borked.
2020-07-12 17:51:29 +02:00
Ilija Tovilo
1c967df5a0
Fix free of uninitialized memory in MATCH_ERROR
...
As suggested by Tyson Andre:
https://github.com/php/php-src/pull/5371#issuecomment-657081464
Also fix line number of unhandled match error
Closes GH-5841.
2020-07-12 13:33:36 +02:00
twosee
c0172aa2bd
debug_zval_dump(): Don't skip recursion detection on first level
...
A complement to ae6f45ad45
Closes GH-5843.
2020-07-12 03:08:42 +08:00
Máté Kocsis
6cf22529b9
Addd upgrading notes about OCI8
2020-07-11 20:04:40 +02:00
Jens de Nies
11f4a5e563
Removed the "oci_internal_debug" function and its alias. Also deprecated the "ocifetchinto" function.
...
Closes GH-5810
2020-07-11 19:57:30 +02:00
Chuck Adams
f06a6b4697
(ffi) fix ifdefs for non-windows systems without long double
...
Closes GH-5840
2020-07-11 19:50:15 +02:00
Christoph M. Becker
340e2ead77
Export php_gd_libgdimageptr_from_zval_p()
...
Some extension may need to retrieve the `gdImagePtr` from an `GdImage`
object; thus, we export the respective function. To not being forced
to include gd.h in php_gd.h, we use the opaque `struct gdImageStruct *`
as return type.
We also rename php_gd2.dll to php_gd.dll, since there's not really much
point in giving the DLL a version number, since there is no php_gd.dll
for years (if there ever has been). Renaming, on the other hand,
matches the name on other systems (gd.so), and allows to actually use
`ADD_EXTENSION_DEP()`.
2020-07-11 19:33:20 +02:00
Ilija Tovilo
d5a0370828
[skip ci] Consistent match test closing tags
2020-07-11 16:50:51 +02:00
twosee
614b2191bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed BC break of php_debug_zval_dump
2020-07-11 18:32:18 +08:00
twosee
40efb7ad61
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79830 introduced by fixing bug #79821
# Conflicts:
# ext/standard/var.c
2020-07-11 14:40:17 +08:00
twosee
342fe094b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79821
2020-07-11 06:19:41 +08:00
codinghuang
7817ff8ce1
Don't generate JSON scanner and parser during configure
2020-07-10 23:32:01 +02:00
Máté Kocsis
95cff3ebf2
Retain the original formatting character in test
2020-07-10 23:15:08 +02:00
Máté Kocsis
d30cd7d7e7
Review the usage of apostrophes in error messages
...
Closes GH-5590
2020-07-10 21:05:28 +02:00
Christoph M. Becker
2ad75ba784
Fix test cases
...
These tests are not supposed to check the result of `fclose(false)`.
2020-07-10 18:27:18 +02:00
George Peter Banyard
2297a6d364
Use dedicated function for illegal offset type error
2020-07-10 16:49:52 +02:00
Nikita Popov
5fc70243d7
Add missing addref for MATCH_ERROR operand
2020-07-10 15:58:42 +02:00
George Peter Banyard
3f286fa89a
Promote Notice to Warning in libmagic
...
The current behaviour makes little to no sense, having a notice which starts with 'Warning:' should just be a warning
Closes GH-5824
2020-07-10 14:43:43 +02:00
Nikita Popov
6556846754
Fixed bug #79818
...
Only destroy the variable directly before reassigning it. The
value could be read in the meantime.
2020-07-10 14:36:50 +02:00
Máté Kocsis
f328594072
Add stubs for SAPIs
...
Closes GH-5295.
2020-07-10 14:20:18 +02:00
Nikita Popov
db43a93fc2
Fix warning in embed sapi
2020-07-10 14:10:02 +02:00
Nikita Popov
12214e1d46
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79817
2020-07-10 14:07:59 +02:00
Christoph M. Becker
9a5695bfc3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable further ext/standard/tests/file tests on Windows
2020-07-10 13:42:13 +02:00
Dmitry Stogov
b7dd8679df
Fixed tracing JIT miss-compilation
2020-07-10 14:13:53 +03:00
Dmitry Stogov
8d15a2bc8e
Restore registers
2020-07-10 12:51:19 +03:00
Christoph M. Becker
ef1de5e973
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix skip reasons
2020-07-10 11:28:28 +02:00
Nikita Popov
c1e792e1aa
Drop dead prototype
2020-07-10 10:23:19 +02:00
twosee
b284ba3943
Add zend_wrong_parameter_error to reduce the size of ZPP macro
...
Closes GH-5831.
2020-07-10 10:12:23 +02:00
Christoph M. Becker
bdcda50304
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable symlink_link_linkinfo_is_link_* tests on Windows
2020-07-10 10:10:30 +02:00
Nikita Popov
bc68f10b76
Merge branch 'PHP-7.4'
...
* PHP-7.4:
enable ext/ldap/tests on azure
fix some ext/ldap/tests
2020-07-10 09:57:13 +02:00
Nikita Popov
bee2cf0899
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix some memory bugs in ldap.c
2020-07-10 09:50:12 +02:00
Christoph M. Becker
d59709d1ad
Mark test as XFAIL for Windows/JIT/Release builds
2020-07-10 09:32:28 +02:00
Ilija Tovilo
9fa1d13301
Implement match expression
...
RFC: https://wiki.php.net/rfc/match_expression_v2
Closes GH-5371.
2020-07-09 23:52:17 +02:00
Dmitry Stogov
c60d0dc2f4
Make tracing JIT to support operator overloading independently from opcache.optimization_level ini directive.
2020-07-09 19:39:12 +03:00
Dmitry Stogov
31258e4550
Fixed register allocation for tests/lang/operators/preinc_basiclong_64bit.phpt
2020-07-09 18:54:36 +03:00
Dmitry Stogov
9d14bdb377
Bad function detection
2020-07-09 17:24:35 +03:00
Dmitry Stogov
0d9bebac00
Fixed mysqli_fetch_row() function info
2020-07-09 17:24:06 +03:00
Dmitry Stogov
5fec1558b5
Prevent trace recorder reenterancing
2020-07-09 16:33:11 +03:00
Dmitry Stogov
b4ae5a20b6
Move assert() to right place
2020-07-09 15:56:24 +03:00
Dmitry Stogov
6d8d08f13b
Fixed tracing JIT support for extract()
2020-07-09 15:36:25 +03:00
George Peter Banyard
af1de14802
Use ZPP string|array union check in PCRE extension
2020-07-09 14:17:19 +02:00
George Peter Banyard
9839752a9c
Voidify some ZEND_API functions
...
Closes GH-5805
2020-07-09 14:15:57 +02:00
Dmitry Stogov
92448d9db2
Merge branch 'jit-jumptable-x64'
...
* jit-jumptable-x64:
Use RIP-relative addressing
Align jumptables
Fix jumtable index calculation
Support JIT jumptables on x64
2020-07-09 13:40:19 +03:00
Christoph M. Becker
e33dd6ab1f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent parallel test conflicts
2020-07-09 12:36:57 +02:00
Nikita Popov
613a56d1cb
Remove FREE_UNFETCHED concept
...
In master normal FREE_OPs work like FREE_UNFETCHED_OP used to, so
there is no point in keeping this distinction anymore, it's just
confusing.
2020-07-09 11:58:33 +02:00
Nikita Popov
c05bfa362b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Switch back to FREE_UNFETCHED_OP_DATA
2020-07-09 11:54:44 +02:00
Dmitry Stogov
5872bfc481
Use RIP-relative addressing
2020-07-09 12:40:56 +03:00
Nikita Popov
04b17217b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79599 in a different way
Revert "Fixed bug #97599 (coredump in set_error_handler)"
2020-07-09 11:18:03 +02:00
Derick Rethans
fc7650944a
Merge branch 'PHP-7.4'
2020-07-09 09:51:15 +01:00
Dmitry Stogov
67828abca7
Align jumptables
2020-07-09 11:31:53 +03:00
Dmitry Stogov
15c6b673a2
Fix jumtable index calculation
2020-07-09 11:28:48 +03:00
Nikita Popov
ad6605317c
Support JIT jumptables on x64
2020-07-09 11:22:53 +03:00
George Peter Banyard
7ac9e9bf64
Use ZPP callable check in zend built in functions
2020-07-08 19:38:46 +02:00
George Peter Banyard
51917241e4
[skip ci] Add info on how to check for PHP NULL when using the ZPP callable check
2020-07-08 19:38:35 +02:00
Ondřej Mirtes
b4dc8901c7
UPGRADING - note about ReflectionType::isBuiltin()
...
Closes GH-5822.
2020-07-08 17:15:29 +02:00
Dmitry Stogov
a75cf0c7e1
JIT support for opcache restart
2020-07-08 18:14:11 +03:00
George Peter Banyard
06da048622
Use HashTable directly instead of zval
2020-07-08 16:25:49 +02:00
Dmitry Stogov
69b1f3d53d
Use small counter values for testing
2020-07-08 16:49:51 +03:00
Dmitry Stogov
ad52e4cad9
Fixed tracing JIT support for $http_response_header
2020-07-08 16:33:46 +03:00
Dmitry Stogov
9e8a8e6ab9
Use information about recorded classes for speculative FETCH_OBJ optimization
2020-07-08 14:09:28 +03:00
Nikita Popov
0e71446e7a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79787
2020-07-08 11:22:47 +02:00
Dmitry Stogov
fa5355ba08
Change zend_get_known_property_offset() into zend_get_known_property_info() and cleanup
2020-07-08 12:02:37 +03:00
Christoph M. Becker
0e5d19bc96
[ci skip] Merge branch 'PHP-7.4'
...
* PHP-7.4:
Report len as -1 instead of INT_MAX
2020-07-08 10:43:21 +02:00
Nikita Popov
22be60bb25
Add declared properties to LibXMLError
...
Partially addresses bug #79804 .
2020-07-08 10:41:46 +02:00
Nikita Popov
2af1d36bc5
Skip special function optimization for redeclared disabled functions
...
As pointed out on GH-5817.
2020-07-08 10:11:00 +02:00
Sara Golemon
f1a343439d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prep for 7.2.33
Prep NEWS for 7.2.32 release
2020-07-07 19:35:17 +00:00
Dmitry Stogov
ab5f8f4baf
More accurate reference-counter inference (with support for ext/intl/tests/bug72241.phpt)
2020-07-07 19:11:27 +03:00
Nikita Popov
15c265b789
Revert "More accurate reference-counter inference"
...
This reverts commit b35255ad21 .
Temporarily revert this, because it causes a memory leak on the
ext/intl/tests/bug72241.phpt test case, because temporary arrays
are not handled correctly.
2020-07-07 16:53:00 +02:00
Nikita Popov
e45f7053cf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79793
2020-07-07 16:33:06 +02:00
Nikita Popov
beb002a867
Fixed bug #79791
...
First throw the undefined variable warning, and then set the
variable to null. Otherwise we're not guaranteed that it's
actually null afterwards.
2020-07-07 16:00:50 +02:00
Nikita Popov
6259eff352
Handle dim_w undefined variable notice in JIT as well
2020-07-07 15:30:43 +02:00
Nikita Popov
0e6ec974fb
Check for undef variable exception in SEND_VAR JIT
...
Add a return value to zend_jit_undefined_op_helper(), so we can
check for exception based on the return value, instead of fetching
EG(exception).
2020-07-07 15:22:46 +02:00
Nikita Popov
cdc4ea2a5c
JIT support for undefined index/offset handling
2020-07-07 15:13:03 +02:00
Nikita Popov
f497b69944
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79784
2020-07-07 14:24:39 +02:00
Christoph M. Becker
3595ebcd26
[ci skip] Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use deprecated curly brace offset syntax
2020-07-07 13:57:58 +02:00
Christoph M. Becker
af32f96c23
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use deprecated curly brace offset syntax
2020-07-07 13:26:42 +02:00
Nikita Popov
2c73bf7e3f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78598
2020-07-07 12:28:35 +02:00
Nikita Popov
ecf368b8f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79792
2020-07-07 12:00:34 +02:00
Nikita Popov
b48bd671b8
Assert no exception if using NEXT_OPCODE()
...
When NEXT_OPCODE() is used instead of NEXT_OPCODE_CHECK_EXCEPTION(),
assert that there is indeed no exception.
2020-07-07 11:34:43 +02:00
Nikita Popov
5d0687e895
Assert exception set in HANDLE_EXCEPTION()
...
Some code paths were checking this manually, but we can turn this
into a general assertion to avoid surprises (functions returning
failure without throwing).
2020-07-07 11:31:05 +02:00
Nikita Popov
fb91611276
Remove #undefs from vm_gen
...
Possibly these were needed for VM_EXPORT, but they don't serve a
purpose now.
2020-07-07 11:25:28 +02:00
Nikita Popov
002c264d07
Remove ZEND_VM_EXPORT functionality
...
This hasn't been used since forever and makes things more confusing
than they already are.
2020-07-07 11:23:28 +02:00
Nikita Popov
eaf6303a74
Fixed bug #79790
...
I haven't tracked down in detail where the interaction with
increment_function comes from, but the root problem here is failure
to handle the illegal offset type exception.
2020-07-07 10:56:55 +02:00
Nikita Popov
e0743d0f91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79779
2020-07-07 10:27:53 +02:00
Nikita Popov
7da8c48a9b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79778
2020-07-07 10:20:31 +02:00
Nikita Popov
1e39469678
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79783
2020-07-07 09:57:07 +02:00
Nikita Popov
302933daea
Remove no_separation flag
2020-07-07 09:30:24 +02:00
Nikita Popov
e93aca7167
Explicitly create references in UConverter callbacks
...
And don't allow separation.
2020-07-07 09:29:21 +02:00
Nikita Popov
5b4bf4d3e9
Fixup test
2020-07-07 09:23:05 +02:00
Nikita Popov
dadb92ea35
Don't allow separation in array functions
...
The only case here that might be *somewhat* sensible is the userdata
argument of array_walk(), which could be used to keep persistent state
between callback invokations -- with the WTF moment that the final
result after the walk finishes will be unchanged. Nowdays, this is
much better achieved using a closure with a use-by-reference.
2020-07-07 09:15:43 +02:00
Nikita Popov
df8119d3e1
Don't allow separation in CallbackFilterIterator
...
As the name might suggest, this is a *filter* iterator. If you want
to have a *map* iterator, write one, or use a generator.
2020-07-07 09:04:20 +02:00
Nikita Popov
632766a561
Disallow separation in a number of callbacks
...
All of these clearly do not need separation support.
2020-07-07 09:02:24 +02:00
Nikita Popov
b406b3d624
Don't allow separation in callback filter
...
This causes some tests to fail. Those tests are specifically about
the callback not being able to modify the data though, so this is
clearly not supposed to be a supported use-case.
2020-07-07 08:57:05 +02:00
Gabriel Caruso
829a1e653a
Update NEWS for 8.0.0alpha3
2020-07-07 02:32:35 +00:00
Gabriel Caruso
73f4441d0f
Update NEWS for PHP 8.0.0alpha2
2020-07-07 02:23:24 +00:00
George Peter Banyard
c4a0ba8d6e
Refactor levenshtein()
...
Closes GH-5816
2020-07-07 00:41:10 +02:00
Máté Kocsis
91fbd12d57
Fix a few comments
2020-07-06 21:23:35 +02:00
Max Semenik
2b5de6f839
Remove proto comments from C files
...
Closes GH-5758
2020-07-06 21:13:34 +02:00
Max Semenik
4757998650
Remove requirements for proto comments from CODING_STANDARDS
...
They've been made obsolete by .stub.php files and are often
outdated as they're not the source of truth.
2020-07-06 21:13:14 +02:00
Nikita Popov
0280b83e11
Avoid some unnecessary uses of no_separation=0
...
For the rare cases where references are part of the API,
construct them explicitly. Otherwise do not allow separation.
2020-07-06 19:05:57 +02:00
moliata
4a0d6901bb
refactor: class constants parsing
...
As part of my work on typed class constants, I wanted to make a
separate pull request for unrelated changes.
These include:
* Moving from ast->child[0]->attr to ast->attr
* Making zend_ast_export_ex() export class constants' visibility
* Extracting an additional zend_compile_class_const_group() function
Closes GH-5812.
2020-07-06 18:34:41 +02:00
Dmitry Stogov
ff3c40206c
More accurate reference-counter inference
2020-07-06 17:55:23 +03:00
Dmitry Stogov
b35255ad21
More accurate reference-counter inference
2020-07-06 15:53:28 +03:00
Tiffany
48eb635a0f
[skip-ci] Add README for ext/mysqli tests
...
Closes GH-5804
2020-07-06 14:35:53 +02:00
Máté Kocsis
b18b2c8fe5
Add string or object ZPP macros
...
Closes GH-5788
2020-07-06 12:42:02 +02:00
Nikita Popov
a4b253c40b
ReflectionMethod::invoke() object is not optional
2020-07-06 11:53:57 +02:00
Nikita Popov
75c4e613e4
Correctly determine arg name of USER_ARG_INFO functions
2020-07-06 11:51:10 +02:00
Remi Collet
8d1a1120bf
[skip ci] add upgrade note
...
Closes GH-5798
2020-07-06 10:57:55 +02:00
Christoph M. Becker
6cef9331fd
define build system and provider on Windows
2020-07-06 10:54:43 +02:00
Remi Collet
ad0d2e438f
display info about system used to build and its provider
2020-07-06 10:54:43 +02:00
Christoph M. Becker
fecea7b89c
Fix sapi_windows_vt100_support() arginfo
2020-07-06 10:48:10 +02:00
Nikita Popov
795d2cbd71
Reuse warning function
2020-07-06 10:38:02 +02:00
Jens de Nies
58f51f8c75
Added stubs for ext/oci8
...
Closes GH-5701
2020-07-04 10:56:48 +02:00
Nikita Popov
49396f817a
Fixed bug #79777
2020-07-04 09:59:42 +02:00
Nikita Popov
344c077400
Use zend_string_equals API in a couple places
2020-07-03 17:02:28 +02:00
Dmitry Stogov
2ecc597259
Removed already implemented TODO comment
2020-07-03 13:40:11 +03:00
Christoph M. Becker
62f05ac01f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests for x86 Windows
2020-07-03 10:39:00 +02:00
Dmitry Stogov
ca159561db
Fixed IS_UNDEF handling
2020-07-03 10:52:03 +03:00
Christoph M. Becker
807d6c0418
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test if SeCreateSymbolicLinkPrivilege is not given
2020-07-03 09:10:37 +02:00
Dmitry Stogov
eee9a05015
Fixed IS_INDIRECT handling
2020-07-03 00:14:09 +03:00
Dmitry Stogov
fe1052b177
Better instruction selection
2020-07-02 23:41:15 +03:00
Christoph M. Becker
e2be50001b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable readlink_realpath_* tests on Windows
2020-07-02 18:31:43 +02:00
Nikita Popov
16cb88f31a
Fix func info for get_class_methods()
2020-07-02 17:23:57 +02:00
Dmitry Stogov
f1536ebbb2
JMP optimization
2020-07-02 17:42:15 +03:00
Christoph M. Becker
1f12d9da5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable most lstat_stat_* tests on Windows
2020-07-02 15:36:43 +02:00
Christoph M. Becker
1eefa09e90
[ci skip] Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update php_version.h
2020-07-02 15:33:35 +02:00
Nikita Popov
6a195cacf3
Treat attribute argument lists like normal argument lists
...
Allow trailing comma. Syntactically allow unpacking, but forbid it
during compilation.
The trailing comma test-case is adopted from GH-5796.
2020-07-02 15:27:45 +02:00
Máté Kocsis
d8dfb21b51
Add support for forcing regeneration of arginfo files
...
Closes GH-5795
2020-07-02 14:54:52 +02:00
Dmitry Stogov
fe9b5ce322
Load constant value only if necessary
2020-07-02 14:43:17 +03:00
Christoph M. Becker
66a5f9fb18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extract test helper function for SeCreateSymbolicLinkPrivilege check
2020-07-02 12:24:49 +02:00
Christoph M. Becker
8c67c16699
Update to PCRE2 10.35
...
We also port a fix for the build system regarding the `-fcf-protection`
gcc flag; cf. <https://bugs.exim.org/show_bug.cgi?id=2578 >.
2020-07-02 12:15:04 +02:00
Nikita Popov
9b41f22fb2
Remove leftover debug comment
2020-07-02 11:51:51 +02:00
Nikita Popov
b0dc325bba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle SO_ options only at SOL_SOCKET level
Allow different error message for errno 58
2020-07-02 11:44:34 +02:00
Dmitry Stogov
2068f019e3
Eliminate useless exception checks
2020-07-02 12:42:09 +03:00
codinghuang
5ea28fe6c4
Use correct ZPP mechanism in get_class_methods()
...
From now on, instead of returning null, an exception is thrown when
not a string or an object is passed to the function.
Closes GH-5792
2020-07-02 11:40:05 +02:00
Nikita Popov
4500309f10
Skip enchant test under asan
...
There is a known memory leak here:
https://bugs.launchpad.net/ubuntu/+source/enchant/+bug/305468
2020-07-02 11:37:09 +02:00
Nikita Popov
1ed5a63c86
Check that "tokenizer" extension is available in gen_stub.php
2020-07-02 10:37:14 +02:00
Nikita Popov
271bc689ea
Add iterator get_gc function for generators
...
Closes GH-5787.
2020-07-01 15:17:26 +02:00
Nikita Popov
312201dce4
Add get_gc handle for object iterators
...
Optional handler with the same semantics as the object handler.
2020-07-01 15:17:22 +02:00
Christoph M. Becker
8d9637bdac
[ci skip] (Hopefully) clarify meaning
2020-07-01 12:04:54 +02:00
Christoph M. Becker
942f341b4e
Document zend_hash_sort and zend_ts_hash_sort signature change
...
Cf. <https://github.com/php/php-src/pull/3936 >.
2020-07-01 10:11:58 +02:00
Paweł Tomulik
915abeb699
Add ldap_count_references()
...
Closes GH-5784
2020-07-01 09:29:46 +02:00
Fabien Villepinte
3190282f09
Fix typos in comments
2020-07-01 09:08:28 +02:00
Christoph M. Becker
3516a9c8f0
Replace ISO_8859-* with ISO8859-* aliases for MBString
...
We also remove the mbregex ISO 8859 aliases with underscores.
2020-06-30 18:43:40 +02:00
Nikita Popov
89b2483edd
Remove generator iterator member
...
This is probably a leftover from the PHP 5 implementation, where
the iterator was embedded directly in the generator.
2020-06-30 18:26:29 +02:00
Nikita Popov
e2a407c2fe
Revert "Update to PCRE2 10.35"
...
This reverts commit b419f96c62 .
This breaks the GCC build with -fcf-protection (default on Ubuntu
at least).
2020-06-30 18:24:48 +02:00
Nikita Popov
af4ff75c98
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove bogus generator iterator dtor
2020-06-30 17:33:51 +02:00
Christoph M. Becker
b419f96c62
Update to PCRE2 10.35
2020-06-30 16:19:02 +02:00
Paweł Tomulik
b3698ed9eb
Promote warning to exception in ldap_set_rebind_proc()
...
From now on, ldap_set_rebind_proc() will only accept callable or null
as argument 2.
Closes GH-5763
2020-06-30 16:08:34 +02:00
Máté Kocsis
30067894fc
Update outdated arginfo hashes
2020-06-30 16:02:11 +02:00
Nikita Popov
917e28d77e
Assume offsetof() exists
...
This is a standard C macro. Define XtOffsetOf as an alias for
compatibility, as this is the name we use in most code right now.
2020-06-30 15:55:50 +02:00
Nikita Popov
6838ebb1a8
Remove unnecessary ieeefp.h include
...
This was needed when php_config.h also declare compatibility
shims for isinf() and friends. These are no longer present in
master, so drop this include.
2020-06-30 15:54:47 +02:00
Nikita Popov
41d9423988
Add upgrading note for apache module name
...
[ci skip]
2020-06-30 15:53:55 +02:00
Nikita Popov
b0b836175c
Extract some common fuzzer code
2020-06-30 15:05:02 +02:00
Eddie Kohler and Nikita Popov
75ada661b9
Add unserializehash fuzzer.
...
Unlike the straight unserialize fuzzer, this runs only on HashContexts,
and it does an update and finalize on the contexts it creates.
Co-authored-by: Nikita Popov <nikic@php.net >
2020-06-30 14:30:33 +02:00
Eddie Kohler
ada776c84c
Make HashContexts serializable.
...
* Modify php_hash_ops to contain the algorithm name and
serialize and unserialize methods.
* Implement __serialize and __unserialize magic methods on
HashContext.
Note that serialized HashContexts are not necessarily portable
between PHP versions or from architecture to architecture.
(Most are, though Keccak and slow SHA3s are not.)
An exception is thrown when an unsupported serialization is
attempted.
Because of security concerns, HASH_HMAC contexts are not
currently serializable; attempting to serialize one throws
an exception.
Serialization exposes the state of HashContext memory, so ensure
that memory is zeroed before use by allocating it with a new
php_hash_alloc_context function. Performance impact is
negligible.
Some hash internal states have logical pointers into a buffer,
or sponge, that absorbs input provided in bytes rather than
chunks. The unserialize functions for these hash functions
must validate that the logical pointers are all within bounds,
lest future hash operations cause out-of-bounds memory accesses.
* Adler32, CRC32, FNV, joaat: simple state, no buffer positions
* Gost, MD2, SHA3, Snefru, Tiger, Whirlpool: buffer positions
must be validated
* MD4, MD5, SHA1, SHA2, haval, ripemd: buffer positions encoded
bitwise, forced to within bounds on use; no need to validate
2020-06-30 14:30:33 +02:00
Eddie Kohler
dc85be5456
Mark Keccak functions that contain expected misaligned accesses.
...
To avoid undefined behavior warnings for those accesses.
2020-06-30 14:26:48 +02:00
Eddie Kohler
ff69a8a789
Move __alignof__ support check into main configure.ac.
2020-06-30 14:26:48 +02:00
Eddie Kohler
1e9ff7e757
SHA-3 Keccak_Hash: Store Keccak_HashInstance in the main context.
...
Previously, the Keccak_HashInstance was separately allocated.
This could cause memory leaks on errors. For instance,
in php_hash_do_hash_hmac, the following code cleans up after
a file read error:
if (n < 0) {
efree(context);
efree(K);
zend_string_release(digest);
RETURN_FALSE;
}
This does not call the context's hash_final operation, which
was the only way to free the separately-allocated Keccak state.
The simplest fix is simply to place the Keccak_HashInstance state
inside the context object. Then it doesn't need to be freed.
As a result, there is no need to call hash_final in the
HashContext destructor: HashContexts cannot contain internally
allocated resources.
2020-06-30 14:26:48 +02:00
Christoph M. Becker
815a2be2ed
Improve "VirtualProtect() failed" error messages
...
When `mprotect()` fails, the error message contains `errno` and the
respective `strerror()`; we add basically the same info on Windows.
2020-06-30 13:23:41 +02:00
Nikita Popov
c5e8c9865e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak when setting cyclic previous exception in finally
2020-06-30 12:26:03 +02:00
Máté Kocsis
e93d20ad7e
Add ZPP macros for class name or object parameters
...
Closes GH-5647
2020-06-30 11:19:30 +02:00
Nikita Popov
c2b23d8cbe
Fix leak in isDefaultValueAvailable()
...
Exposed in Symfony due to exit changes.
2020-06-30 11:16:56 +02:00
Christoph M. Becker
8c11d8fedb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #70362 : Can't copy() large 'data://' with open_basedir
2020-06-30 10:48:58 +02:00
Xinchen Hui
c3af355755
Move to alpha2 section
2020-06-30 14:21:33 +08:00
Fabien Villepinte
0c6d06ecfa
Replace EXPECTF when possible
...
Closes GH-5779
2020-06-29 21:31:44 +02:00
Dmitry Stogov
24a8065f8b
Tracing JIT support for include() and generators
2020-06-29 21:40:49 +03:00
Dmitry Stogov
1ca2fd2b16
Don't record "fake" closures
2020-06-29 20:37:50 +03:00
Christoph M. Becker
07ff243f07
Fix macro redifinition warnings in debug builds
...
MSVC considers these warnings[1] to be severe (level 1), so we better
fix the respective code.
[1] <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4005?view=vs-2019 >
2020-06-29 19:11:22 +02:00
Christoph M. Becker
bf6720d582
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #63208 : BSTR to PHP string conversion not binary safe
2020-06-29 19:06:56 +02:00
Christoph M. Becker
43b5d58341
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79756 : finfo_file crash (FILEINFO_MIME)
2020-06-29 17:47:21 +02:00
Christoph M. Becker
aca621cf92
Fix #79749 : Converting FFI instances to bool fails
...
Casting objects to bool is supposed to yield `true`. Since the
`cast_object` handler is required now, we have to implement the
`_IS_BOOL` conversion there.
2020-06-29 16:02:58 +02:00
Nikita Popov
6e1990dea6
Don't accept objects instead of arrays in curl
...
This properly addresses the issue from bug #79741 . Silently
interpreting objects as mangled property tables is almost
always a bad idea.
Closes GH-5773.
2020-06-29 15:56:22 +02:00
Nikita Popov
75a04eac97
Make exit() unwind properly
...
exit() is now internally implemented by throwing an exception,
performing a normal stack unwind and a clean shutdown. This ensures
that no persistent resource leaks occur.
The exception is internal, cannot be caught and does not result in
the execution of finally blocks. This may be relaxed in the future.
Closes GH-5768.
2020-06-29 15:50:12 +02:00
Xinchen Hui
d005a8e92b
Fixed bug #79743 (Fatal error when assigning to array property with JIT enabled)
...
simple typo
2020-06-29 17:47:21 +08:00
Martin Schröder
053ef28b8d
Implement Attribute Amendments.
...
RFC: https://wiki.php.net/rfc/attribute_amendments
Support for attribute grouping is left out, because the short
attribute syntax RFC will likely make it obsolete.
Closes GH-5751.
2020-06-29 10:45:51 +02:00
Dmitry Stogov
46e38a1927
Fixed bug #79737 (Building embed as static fails during install step).
2020-06-29 11:14:20 +03:00
Nikita Popov
315ea609da
Remove restriction on method call inlining
...
In PHP 8, we are guaranteed that $this exists, so we no longer have
to forbid this case.
2020-06-29 09:54:31 +02:00
Nikita Popov
bc62acf874
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't inline static call to instance method
2020-06-29 09:53:09 +02:00
George Peter Banyard
562ceae7bc
Drop non-well formed numeric strings from math function tests
2020-06-28 19:32:11 +02:00
George Peter Banyard
892b32d839
Drop non-well numeric string in Intl test
2020-06-28 19:30:07 +02:00
George Peter Banyard
a9625f8b35
Drop non-well formed numeric strings in array function tests
2020-06-28 19:29:37 +02:00
George Peter Banyard
76643cd4f3
Drop non-well formed numeric strings in strings function tests
2020-06-28 19:29:14 +02:00
Nikita Popov
956dde0bc0
Simplify and fix php-cgi detection
...
Make it work for installed PHP binaries.
2020-06-26 14:17:56 +02:00
Nikita Popov
f930978b70
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79741
2020-06-26 12:29:43 +02:00
David Carlier
1cbb62e82d
Haiku proc_open build fix, *pty api resides on the BSD library
...
Closes GH-5770.
2020-06-26 12:06:21 +02:00
Nikita Popov
f89d84d622
Better leak fix for cgi -s / -w
...
We also need to go through request shutdown. The naming is a bit
confusing, but it's fine to go through fastcgi_request_done even
if not using fastcgi. Whether we loop or not is checked separately.
2020-06-26 11:07:55 +02:00
Nikita Popov
1314ccbf8c
Cache __unserialize() instead of unserialize()
...
We should use these cache slots for the new object serialization
mechanism rather than the old one.
2020-06-26 10:54:40 +02:00
Nikita Popov
b6deace022
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79740
2020-06-26 10:33:12 +02:00
Dmitry Stogov
9617c2a2f6
Use cheaper zend_hash_find_ex() to handle IS_CONST index
2020-06-26 11:18:04 +03:00
Nikita Popov
bcd7352b0c
Fix uninitialized reads in min/max
...
We need to use the unstable comparison function here, the fallback
order is not initialized in this context.
2020-06-26 09:36:17 +02:00
Nikita Popov
afafe5443c
Clear last error before shutting down memory manager
...
The last error is allocated using ZMM, make sure it's cleared
beforehand.
It would probably be better to allocate it persistently outside
of requests.
2020-06-26 09:30:08 +02:00
Ayesh Karunaratne
d114812faf
[ci skip] Various typo fixes in stub comments and CHANGES file
2020-06-25 23:32:40 +02:00
Dmitry Stogov
7e940823d5
Fixed incorrect type guard
2020-06-25 21:59:48 +03:00
Dmitry Stogov
4e7cac810f
Move exception check to cold path.
2020-06-25 20:11:23 +03:00
Dmitry Stogov
037bfabd75
Optimization for +/- int(0)
2020-06-25 19:09:54 +03:00
Dmitry Stogov
50af4de0fe
Improve tracing JIT for FETCH_THIS + FETCH_OBJ_*
2020-06-25 17:33:53 +03:00
Nikita Popov
a1c6a7a3f2
Fix leaks in cgi strip/highlight mode
2020-06-25 16:06:33 +02:00
Nikita Popov
785497c8ba
Fix leaks in Phar::webPhar()
2020-06-25 15:42:56 +02:00
Nikita Popov
c9bc7dd110
Don't throw warning if exception thrown during dom validation
2020-06-25 15:24:35 +02:00
Nikita Popov
049467d365
Avoid warning on exception in xsl ext
2020-06-25 15:07:38 +02:00
Remi Collet
5c37715dfd
ensure all files have same date in official archives
2020-06-25 14:59:10 +02:00
Dmitry Stogov
94b637de5b
Avoid $this check
2020-06-25 14:08:21 +03:00
Dmitry Stogov
1434983ad1
Cheaper exception checks
2020-06-25 13:23:43 +03:00
Nikita Popov
47cf18ba4e
Don't include trailing newline in comment token
...
Don't include a trailing newline in T_COMMENT tokens, instead leave
it for a following T_WHITESPACE token. The newline does not belong
to the comment logically, and this makes for an ugly special case,
as other tokens do not include trailing newlines.
Whitespace-sensitive tooling will want to either forward or backward
emulate this change.
Closes GH-5182.
2020-06-25 11:25:22 +02:00
Nikita Popov
e12b9df05d
Make sorting stable
...
Make user-exposed sorts stable, by storing the position of elements
in the original array, and using those positions as a fallback
comparison criterion. The base sort is still hybrid q/insert.
The use of true/false comparison functions is deprecated (but still
supported) and should be replaced by -1/0/1 comparison functions,
driven by the <=> operator.
RFC: https://wiki.php.net/rfc/stable_sorting
Closes GH-5236.
2020-06-25 10:49:34 +02:00
Nikita Popov
f9462fe6e4
Increase timeout on sanitizer job
...
This is starting to hit the limit. Let it run for 3:30 hours.
2020-06-25 10:36:19 +02:00
Nikita Popov
f37138d2c5
Don't use iterator_funcs_ptr if it is null
...
This avoids ubsan warnings. Alternatively we could always initialize
iterator_funcs_ptr for aggregates, instead of doing so only for
non-internal ones.
2020-06-25 10:30:40 +02:00
Alex Dowad
47fae8425f
Remove useless prototype for spl_heap_get_iterator
2020-06-24 22:29:07 +02:00
Alex Dowad
c4f716a20d
Fix {{{ comment to match function name for php_replace_controlchars_ex
2020-06-24 22:26:00 +02:00
Alex Dowad
e673c63989
Correct comment in plain_wrapper.c (refers to microseconds, not milliseconds)
2020-06-24 22:26:00 +02:00
Alex Dowad
7b4179e8da
Update UPGRADING.INTERNALS re: removed --disable-inline-optimization switch
...
This build configuration switch was removed in 3a19726bce .
2020-06-24 20:25:11 +02:00
Nikita Popov
4c8ba98751
Sort extensions alphabetically
...
This makes it easier to compare mime data from different sources.
2020-06-24 16:59:42 +02:00
Nikita Popov
5889c41c76
Generate tabs in generate_mime_type_map.php
...
The PHP file is space indented, but we need the C file to be tab
indented.
2020-06-24 16:31:46 +02:00
Nikita Popov
ff19ec2df3
Introduce InternalIterator
...
Userland classes that implement Traversable must do so either
through Iterator or IteratorAggregate. The same requirement does
not exist for internal classes: They can implement the internal
get_iterator mechanism, without exposing either the Iterator or
IteratorAggregate APIs. This makes them usable in get_iterator(),
but incompatible with any Iterator based APIs.
A lot of internal classes do this, because exposing the userland
APIs is simply a lot of work. This patch alleviates this issue by
providing a generic InternalIterator class, which acts as an
adapater between get_iterator and Iterator, and can be easily
used by many internal classes. At the same time, we extend the
requirement that Traversable implies Iterator or IteratorAggregate
to internal classes as well.
Closes GH-5216.
2020-06-24 15:31:41 +02:00
Nikita Popov
4730b06f1d
Make SimpleXMLElement a RecursiveIterator
...
Context: https://externals.io/message/108789
This essentially moves the functionality of SimpleXMLIterator into
SimpleXMLElement, and makes SimpleXMLIterator a no-op extension.
Ideally SimpleXMLElement would be an IteratorAggregate, whose
getIterator() method returns SimpleXMLIterator. However, because
SimpleXMLIterator extends SimpleXMLElement (and code depends on
this in non-trivial ways), this is not possible.
The only way to not keep SimpleXMLElement as a magic Traversable
(that implements neither Iterator nor IteratorAggregate) is to
move the SimpleXMLIterator functionality into it.
Closes GH-5234.
2020-06-24 15:09:21 +02:00
Máté Kocsis
bcb9658b87
Add the ZEND_ACC_NO_DYNAMIC_PROPERTIES flag to Shmop
2020-06-24 14:56:06 +02:00
Nikita Popov
1af78bc8a4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79030 Use usec from apache request time
2020-06-24 14:43:13 +02:00
Christoph M. Becker
18f58080dc
Convert shmop resources to opaque objects
...
We make `shmop_close()` a NOP, and deprecate the function right away;
detaching from SHM now happens when the wrapper object is freed.
2020-06-24 13:59:29 +02:00
Alex Dowad
19d3e29bf5
Clean house in cryptographic hashing code
...
- Remove dead code from php_crypt_r.c
This code has been commented out since the file was added in 2008. It's safe to say
that no-one is ever going to use it.
- Fix typo in comment in php_crypt_r.c
- Remove redundant Windows-only implementation of php_md5_crypt_r
There is a portable implementation in the same file, which is selected if not
building for Windows. But why should Windows have its own special implementation
of this function at all? There doesn't seem to be any good reason.
Better to use the portable implementation on all platforms.
- Don't define useless __CONST macro in php_crypt_r.h
This preprocessor macro is not used anywhere.
- Add comment on functions for encoding data as Base64
- Remove dead code from crypt_blowfish.h
- Remove unneeded junk comments from crypt_freesec.c
- Remove dead code from crypt_blowfish.c
This function has been commented out since 2011.
2020-06-24 13:40:27 +02:00
Alex Dowad
e94afec700
Fix typos in test cases for crypt_sha{256,512}
2020-06-24 13:37:26 +02:00
Máté Kocsis
b5c7a83dca
Remove unnecessary PHPDoc-alike blocks from tests
...
Closes GH-5759
2020-06-24 13:13:44 +02:00
Nikita Popov
187d7f05c2
Fix potential use-after-scope if crypt_r is used
2020-06-24 13:07:00 +02:00
Nikita Popov
d579b10c84
Remove deprecated DES fallback in crypt()
2020-06-24 12:57:04 +02:00
Nikita Popov
8a8c8d4d6a
Enforce min/max rounds in sha256/sha512 crypt
...
This brings our implementation in line with glibc behavior.
2020-06-24 12:41:56 +02:00
Nikita Popov
4c4af2b2e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle *0 / *1 more consistently
2020-06-24 12:22:44 +02:00
Nikita Popov
7d05bc8630
Fix crypt_r detection
...
And force use of our own php_crypt_r implementation to keep
previous behavior despite that.
2020-06-24 12:09:49 +02:00
Christoph M. Becker
38177dcb42
Properly initialize displaysize
...
From Microsoft's `SQLColAttribute()` documentation[1]:
| Please note that some drivers may only write the lower 32-bit or
| 16-bit of a buffer and leave the higher-order bit unchanged.
| Therefore, applications should initialize the value to 0 before
| calling this function.
[1] <https://docs.microsoft.com/en-us/sql/odbc/reference/syntax/sqlcolattribute-function >
2020-06-24 12:07:58 +02:00
Máté Kocsis
16fe64d3ed
Add ZEND_ACC_NO_DYNAMIC_PROPERTIES flag to SysvMessageQueue
2020-06-24 12:04:10 +02:00
Nikita Popov
653e4ea1c5
Add flag to forbid dynamic property creation on internal classes
...
While performing resource -> object migrations, we're adding
defensive classes that are final, non-serializable and non-clonable
(unless they are, of course). This path adds a ZEND_ACC_NO_DYNAMIC_PROPERTIES
flag, that also forbids the creation of dynamic properties on these objects.
This is a subset of #3931 and targeted at internal usage only
(though may be extended to userland at some point in the future).
It's already possible to achieve this (what the removed
WeakRef/WeakMap code does), but there's some caveats: First, this
simple approach is only possible if the class has no declared
properties, otherwise it's necessary to special-case those
properties. Second, it's easy to make it overly strict, e.g. by
forbidding isset($obj->prop) as well. And finally, it requires a
lot of boilerplate code for each class.
Closes GH-5572.
2020-06-24 11:52:36 +02:00
Christoph M. Becker
2a28589c7d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix potential environment variable deadlock
2020-06-24 11:44:47 +02:00
Christoph M. Becker
cbce0cbacb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #69804 : ::getStaticPropertyValue() throws on protected props
2020-06-24 11:19:17 +02:00
Nikita Popov
59c4c8297b
Add test case for previous commit
...
Forgot to "git add".
2020-06-24 10:51:51 +02:00
Nikita Popov
d071ab1928
Fix verify arg jit for references
2020-06-24 10:47:37 +02:00
Christoph M. Becker
26badd58b5
Mark phpdbg test as XFAIL on Windows with JIT enabled
...
The test fails as of commit 8b12ea04ee .
2020-06-24 10:34:16 +02:00
Nikita Popov
c008fde961
Skip two curl tests under asan
...
These tests leak with the curl version on ubuntu 20.04. This should
be fixed when we switch exit to use an exception.
2020-06-24 10:13:25 +02:00
Christoph M. Becker
1dfeb70e6b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79487 : ::getStaticProperties() ignores property modifications
2020-06-24 10:08:51 +02:00
Nikita Popov
c9b9f525a9
Include stub hash in generated arginfo files
...
The hash is used to check whether the arginfo file needs to be
regenerated. PHP-Parser will only be downloaded if this is actually
necessary.
This ensures that release artifacts will never try to regenerate
stubs and thus fetch PHP-Parser, as long as you do not modify any
files.
Closes GH-5739.
2020-06-24 09:55:19 +02:00
Alex Dowad
d1ebc3ab21
Increase failure threshold for 'extensive backtracking' fileinfo test
...
A spurious failure for this test was seen on Travis CI (S390X):
https://travis-ci.org/github/alexdowad/php-src/jobs/701533828
(The test is expected to finish within 1 second, but it took 1.06 seconds.)
Therefore, increase the threshold a bit.
2020-06-24 08:46:19 +02:00
Máté Kocsis
ba434fb5a6
Remove outdated PHPDoc from ext/enchant's stub
2020-06-23 22:35:27 +02:00
Dmitry Stogov
8b12ea04ee
Improved JIT for RECV and RECV_INIT instructions
2020-06-23 23:21:56 +03:00
George Peter Banyard
6079bdb287
Use standard bool type in EXIF extension
2020-06-23 20:57:26 +02:00
Christoph M. Becker
cf70026ebc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix #79487 : ::getStaticProperties() ignores property modifications"
2020-06-23 19:30:12 +02:00
Christoph M. Becker
f1d0eadc4d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79487 : ::getStaticProperties() ignores property modifications
2020-06-23 18:52:16 +02:00
Máté Kocsis
f3b1f342c8
Deprecate the procedural API of ext/zip
...
Closes GH-5746
2020-06-23 17:39:29 +02:00
Dmitry Stogov
da1c672424
Replace exceptional code by side exit to VM
2020-06-23 18:31:42 +03:00
Dmitry Stogov
e2a8b3e120
Cleanup and better register usage
2020-06-23 17:51:02 +03:00
Dmitry Stogov
6ac16882d4
Reduce amount of "cold" code generated for FETCH_OBJ_* instructions
2020-06-23 17:16:44 +03:00
Alex Dowad
7a9f0cc3d0
Simplify _crypt_extended_init_r, and fix redundant initialization on Win32/Solaris
...
Looking at the history of this function, the original implementation had a bug where
it would return from the middle of the function without unlocking the mutex first.
The author attempted to fix this by incrementing the `initialized` flag atomically,
which is not necessary, since the section which modifies the flag is protected by a
mutex.
Coincidentally, at the same time that all this unnecessary 'atomic' machinery was
introduced, the code was also changed so that it didn't return without unlocking the
mutex. So it looks like the bug was fixed by accident.
It's not necessary to declare the flag as `volatile` either, since it is protected
by a mutex.
Further, the 'fixed' implementation was also wrong in another respect: on Windows
and Solaris, the `initialized` flag was not even declared as `static`!! So the
initialization of the static tables for S-boxes, P-boxes, etc. was repeated on
each call to `php_crypt`, completely defeating the purpose of this function.
2020-06-23 16:10:54 +02:00
Christoph M. Becker
9bd648ba1e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #55857 : ftp_size on large files
2020-06-23 16:02:19 +02:00
Máté Kocsis
b981662855
Fix a couple of UNKNOWN default values in ext/session
...
Closes GH-5752
2020-06-23 15:42:59 +02:00
Nikita Popov
35729b7604
Remove unnecessary initialization in phpdbg webhelper
...
This whole code is very dubious and should possibly be dropped. For
now just fix the build warning.
2020-06-23 14:29:24 +02:00
Nikita Popov
361aa1ea48
Enable dba on azure
...
Closes GH-5756.
2020-06-23 14:29:24 +02:00
Máté Kocsis
8d93ae1a23
Fix UNKNOWN default values in ext/readline
...
Closes GH-5755
2020-06-23 12:52:12 +02:00
Dmitry Stogov
bdac60d2c0
Improve JIT for SEPARATE_ARRAY
2020-06-23 13:46:56 +03:00
Nikita Popov
5794fbf5f8
Fix missing initializers in dba inifile
2020-06-23 12:41:10 +02:00
Nikita Popov
40d162e423
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Restore XFAIL on fpm test
2020-06-23 12:36:04 +02:00
Nikita Popov
f7a3cb4c39
Avoid convert_to_long_ex usage in readline
2020-06-23 12:35:51 +02:00
Nikita Popov
334b9059fa
Update azure pipelins to ubuntu 20.04
...
Only updating the main job for now, to see how it goes.
Closes GH-5741.
2020-06-23 12:16:52 +02:00
Dmitry Stogov
c973f19744
Improve spill code
2020-06-23 12:27:14 +03:00
Dmitry Stogov
5681eaf5e5
Avoid register spilling
2020-06-23 11:40:36 +03:00
Christoph M. Becker
f7dacdbf58
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3 is now 7.3.21-dev
2020-06-23 10:34:44 +02:00
Derick Rethans
24007a1109
Merge branch 'PHP-7.4'
2020-06-23 08:46:54 +01:00
Christoph M. Becker
dad377ba57
Fix test wrt. commit 1a2732f9a8
2020-06-22 18:55:16 +02:00
Derick Rethans
56ab608463
Consistent file naming.
2020-06-22 15:32:52 +01:00
George Peter Banyard
1a2732f9a8
Use ZPP callable check for preg_replace_callback() $callback argument
2020-06-22 15:56:36 +02:00
Nikita Popov
26171c3690
Also allow casting CurlMultiHandles
2020-06-22 15:09:22 +02:00
Dmitry Stogov
ea2b0d3c8b
Fixed JIT failures on Windows
2020-06-22 14:57:04 +03:00
Eddie Kohler
efad1372a5
Correct implementation of joaat hash.
...
Before this commit, the result produced by a joaat hash depended
on how the input data was chunked. A hash produced by multiple
`hash_update` operations was incorrect. For example, this code,
which should produce three identical lines:
var_dump(hash("joaat", "abcd"));
$hash = hash_init("joaat");
hash_update($hash, "ab");
hash_update($hash, "cd");
var_dump(hash_final($hash));
$hash = hash_init("joaat");
hash_update($hash, "abc");
hash_update($hash, "d");
var_dump(hash_final($hash));
instead produced:
string(8) "cd8b6206"
string(8) "e590d137"
string(8) "2d59d087"
This is because the finalization step, involving shift operations
and adds, was applied on every chunk, rather than once at the end
as is required by the hash definition.
After this commit, the code above produces:
string(8) "cd8b6206"
string(8) "cd8b6206"
string(8) "cd8b6206"
as expected.
Some tests encoded the wrong behavior and were corrected.
Closes GH-5749
2020-06-22 09:39:29 +02:00
Vladyslav Startsev
2c97b401c6
make bcpowmod stricter by not returning false, instead throw exception
...
Closes GH-5747
2020-06-22 09:31:55 +02:00
David Carlier
ec80b781db
Haiku opcache jit build update
2020-06-22 09:28:58 +03:00
Anatol Belski
56aebbec8b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
SplHeap: Avoid memcpy on overlapping pointer
2020-06-21 22:55:00 +02:00
Michael Orlitzky
40cdc5f298
sapi/fpm/config.m4: add a new --with-fpm-apparmor configure flag.
...
The existing AC_FPM_APPARMOR macro (which is always run when FPM is
enabled) checks for the existence of libapparmor, and adds it to $LIBS
if found. The result is an "automagic" dependency on libapparmor that
depends not only on the user's configuration, but also on the build
host's environment.
In particular, this can cause problems if the user just happens to
have libapparmor installed (for testing or development) when he builds
PHP. Later, he may remove libapparmor, not realizing that PHP depends
on it. At that point, FPM will cease to work due to the missing library.
This commit adds a new configure flag called "--with-fpm-apparmor",
defaulting to "no", that enables or disables the feature. The new flag
is used to signal the user's intent; whether or not he wants to use
AppArmor. If he does, then we still check for the existence and
usability of libapparmor; however, it is now an error for the library
to be missing when --with-fpm-apparmor is requested.
Gentoo-bug: https://bugs.gentoo.org/637402
PHP-bug: https://bugs.php.net/bug.php?id=75519
2020-06-21 17:08:40 +01:00
Christoph M. Becker
6bc375f40a
Mark failing tests as XFAIL for now
...
These test fail on Window since some recent changes to JIT; we mark
them as XFAIL until the issues are resolved.
2020-06-20 11:07:57 +02:00
Nikita Popov
1c4463c77a
Allow casting CurlHandle to int
...
(int) $curlHandle will return spl_object_id($curlHandle). This
makes curl handle objects backwards compatible with code using
(int) $curlHandle to obtain a resource ID.
Closes GH-5743.
2020-06-19 23:05:47 +02:00
Alex Dowad
7e2147be23
Clean up some unused code (and fix some comments) in build scripts
...
- Fix typo in build/php.m4
- Nothing uses HAVE_INTTYPES_H; so remove check for header file
- Nothing defines ZEND_ACCONFIG_H_NO_C_PROTOS; so remove #ifndef
- `format_money` was removed in 2019, so <monetary.h> no longer needed
- Nothing uses HAVE_NETDB_H; so remove check for header file
- Nothing checks HAVE_TERMIOS_H; so remove check for header file
(This was actually added when Wez Furlong was adding the original implementation of
PTY support in `proc_open`, since replaced.)
- Nothing checks HAVE_SYS_AUXV_H; so remove check for header file
- PHP_BUILD_DATE variable is not used for anything, so remove it
This variable was added to the Makefile, but from there, was not used for anything.
The comments suggest it was intended to allow 'reproducible builds'. Presumably,
this means that if a bug is found in a PHP binary somewhere, one could look at the
Makefile which it was built from, see the date, and then could check the same
code version out from source control. But... there can easily be multiple commits
to the repo in the same day. Also, what makes us think that the Makefile which a
binary was built from will be easily available?
Besides, ext/standard/info.c already embeds the build date and time in each binary...
but it does it using `__DATE__` and `__TIME__` (see `php_print_info`).
- Nothing checks HAVE_FINITE; so don't check for function
- Grammar fix to comment in build/php.m4
- Nothing sets $php_ldflags_add_usr_lib variable in configure, so remove conditional
This was added in 2002, when Rasmus was having difficulty building PHP on some
host and needed to have /usr/lib in the rpath. It was never documented and
probably has never been used by anyone else.
2020-06-19 22:04:52 +02:00
Nikita Popov
aa2e68cf6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79570
2020-06-19 17:32:34 +02:00
David Carlier
bb61346580
Fix Haiku build
...
getrusage supports only two fields. The network api sits in the network lib.
Closes GH-5732.
2020-06-19 17:21:55 +02:00
Nikita Popov
ca48129cae
Return void from php_jpeg_emit_message()
...
Instead of returning long and then casting to void.
This fixes a build warning on Ubuntu 20.04.
Closes GH-5742.
2020-06-19 16:59:29 +02:00
Dmitry Stogov
b4b5734d80
JIT for FETCH_OBJ_W
2020-06-19 14:36:38 +03:00
Nikita Popov
b461e6b074
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79710
2020-06-19 10:48:34 +02:00
Paul Dragoonis
5d7ff25311
Removing HTML Functionality from run-tests.php
...
As discussed on GH-5632, the HTML functionality does not appear
to be in active use. For HTML rendering of test results, it is
suggested to instead use the JUnit integration, in combination
with your favorite JUnit viewer.
Closes GH-5705.
2020-06-19 09:59:38 +02:00
Nikita Popov
cd7d96610c
Merge branch 'PHP-7.4'
2020-06-19 09:44:56 +02:00
Nikita Popov
5571765609
Forbid use of <?= as a semi-reserved identifier
...
One of the weirdest pieces of PHP code I've ever seen. In terms
of tokens, this gets internally translated to
use x as y; echo as my_echo;
On master it crashes because this "echo" does not have attached
identifier metadata. Make sure it is added and then reject the
use of "<?=" as an identifier inside zend_lex_tstring.
Fixes oss-fuzz #23547 .
2020-06-19 09:29:58 +02:00
Dmitry Stogov
6fa126e966
MAY_BE_INDIRECT inference
2020-06-18 18:54:32 +03:00
Nikita Popov
3a9a8df3fd
Fix CLI test if linked against libedit
...
The error message changed here.
2020-06-18 17:30:03 +02:00
Nikita Popov
6b1e449ef4
Merge branch 'PHP-7.4'
2020-06-18 17:14:03 +02:00
Nikita Popov
607567b9cd
Call zpp in enchant_broker_*_dict_path with libenchant-2
...
Even if the function is a dummy, we still need to call zpp to
comply with arginfo.
2020-06-18 17:10:22 +02:00
moliata
48e16a9dba
Use ZEND_TOSTRING_FUNC_NAME
...
Closes GH-5736.
2020-06-18 17:06:19 +02:00
Nikita Popov
ebc3043816
Merge branch 'PHP-7.4'
2020-06-18 17:02:24 +02:00
Sara Golemon
0ab8121c23
Add reference to phpweb/bin/createReleaseEntry
2020-06-18 14:04:01 +00:00
Nikita Popov
111f05610d
Merge branch 'PHP-7.4'
2020-06-18 16:00:30 +02:00
Nikita Popov
b5f5da4211
Merge branch 'PHP-7.4'
2020-06-18 15:56:14 +02:00
Nikita Popov
472352f5a7
Merge branch 'PHP-7.4'
2020-06-18 15:49:43 +02:00
Christoph M. Becker
3cc93c7de0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing NEWS entry
2020-06-18 15:29:50 +02:00
Nikita Popov
c2a6395dcb
Downgrade security level in tests using TLS < 1.2
...
A few additional tests have been added on master that require
lower security level.
2020-06-18 15:08:24 +02:00
Nikita Popov
f3ff070034
Merge branch 'PHP-7.4'
2020-06-18 15:02:02 +02:00
Nikita Popov
4f0ae4ad6e
Merge branch 'PHP-7.4'
2020-06-18 14:22:29 +02:00
Christoph M. Becker
5989b09d18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests regarding OpenSSL security_level
2020-06-18 13:29:33 +02:00
Máté Kocsis
ed6fbf9174
Fix UNKNOWN default values in ext/curl
...
Closes GH-5734
2020-06-18 13:26:32 +02:00
Máté Kocsis
a43fd3bbef
Remove the deprecated parameter of curl_version()
2020-06-18 13:26:32 +02:00
Nikita Popov
20664d6023
Merge branch 'PHP-7.4'
2020-06-18 10:49:56 +02:00
Nikita Popov
6cf5162480
Merge branch 'PHP-7.4'
2020-06-18 10:16:47 +02:00
Dmitry Stogov
8cbb0ffcb1
Use guards for ZEND_FETCH_OBJ_R/IS to eliminate repeatable checks
2020-06-18 11:10:47 +03:00
Nikita Popov
e42cab2088
Merge branch 'PHP-7.4'
2020-06-18 10:09:58 +02:00
Christoph M. Becker
8014831a40
Update release-process.md wrt. new bin/createReleaseEntry
2020-06-18 09:27:54 +02:00
Dmitry Stogov
4050db614a
Fixed multiple definition
2020-06-18 09:34:21 +03:00
Nikita Popov
9b70a831a2
Merge branch 'PHP-7.4'
2020-06-17 22:16:11 +02:00
Alex Dowad
3a19726bce
Remove unneeded --disable-inline-optimization build parameter
...
In 1999, inline optimization was turned off by default. The commit log indicates this was
done because GCC was running out of memory on some hosts when building the Zend executor.
In 2003, inline optimization was re-enabled by default, but a build option was added to
turn it off if one runs out of memory when building.
Computing hardware has come a long way since 2003 and I doubt that anyone is running out
of memory when building PHP now.
Interestingly, this code set an unused variable called `INLINE_CFLAGS`. It actually
disabled inline optimization by adding -O0 to the build command, not using `INLINE_CFLAGS`.
Just to see how much memory GCC/Make are using when building PHP, I tried building with
successively higher values of `ulimit -v` until it succeeded. Interestingly, while most
of the codebase can be built with about 400MB of memory, ext/fileinfo/libmagic/apprentice.c
requires 1.2GB, doubtless because it includes ext/fileinfo/data_file.c, which is more
than 350,000 lines long. That is with GCC 7.5.0.
Most users get PHP as a binary package anyways, so the question is, are *packagers*
of PHP trying to build on machines with just 1GB RAM? And would they want to package
a PHP interpreter built with *no optimizations*? I can't imagine either being true.
2020-06-17 19:31:35 +02:00
Nikita Popov
4f260411d1
Merge branch 'PHP-7.4'
2020-06-17 17:14:05 +02:00
Máté Kocsis
314eedbc35
Convert resources to objects in ext/zlib
...
Closes GH-5680
2020-06-17 16:50:00 +02:00
Máté Kocsis
1efaed7cf7
Improve error messages of ext/zlib
2020-06-17 16:50:00 +02:00
Christoph M. Becker
3a0bdb720a
Fix #63575 : Root elements are not properly cloned
...
Cloning of root elements has to preserve that property, so they require
some special treatment.
2020-06-17 16:48:50 +02:00
moliata
45d1c38dab
Use zend_is_constructor()
2020-06-17 16:46:17 +02:00
Christoph M. Becker
408961987f
Fix typos
2020-06-17 16:45:12 +02:00
Nikita Popov
15846ff115
Add ZVAL_OBJ_COPY macro
...
For the common ZVAL_OBJ + GC_ADDREF pattern.
This mirrors the existing ZVAL_STR_COPY API.
2020-06-17 16:36:56 +02:00
Máté Kocsis and Nikita Popov
b516566b84
Convert CURL resources to objects
...
Closes GH-5402
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-06-17 16:11:57 +02:00
Sara Golemon
1e095e3412
Update CREDITS
2020-06-17 13:04:01 +00:00
Dmitry Stogov
18347758d7
Improved JIT for SEPARATE_ARRAY
2020-06-17 14:45:25 +03:00
Dmitry Stogov
3830855a65
Tracing JIT support for PHP references in ASSIGN instruction
2020-06-17 12:24:51 +03:00
Nikita Popov
5aa649cf51
Merge branch 'PHP-7.4'
2020-06-17 09:35:19 +02:00
Dmitry Stogov
93aaf68088
cleanup
2020-06-17 10:32:53 +03:00
Christoph M. Becker
92c4b06513
Use ZEND_UNREACHABLE() instead of ZEND_ASSERT(0)
...
Instead of marking unreachable code with `ZEND_ASSERT(0)`, we introduce
`ZEND_UNREACHABLE()`, so that MSVC which does not consider `assert(0)`
to mark unreachable code does no longer trigger C4715[1] warnings in
debug builds. This may be useful for other compilers as well.
[1] <https://docs.microsoft.com/de-de/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4715?view=vs-2019 >
2020-06-16 18:39:09 +02:00
Dmitry Stogov
9ff3230c20
Merge exit points
2020-06-16 19:20:08 +03:00
Dmitry Stogov
626ccc45e4
Eliminate a dead check
2020-06-16 19:05:35 +03:00
Dmitry Stogov
8425214c1d
Tracing JIT support for PHP references in array related instructions
2020-06-16 17:59:04 +03:00
Máté Kocsis
2e18b30d44
Convert resource to object in Sysvshm extension
...
Closes GH-5499
2020-06-16 16:36:11 +02:00
Christoph M. Becker
aa754ba85e
FR #79344 : xmlwriter_write_attribute_ns: $prefix should be nullable
...
The `$prefix` parameter of `xmlwriter_write_element_ns()` and
`xmlwriter_start_element_ns()` is nullable, what allows these functions
to be used instead of their non NS variants. Consequently, we make the
`$prefix` parameter of `xmlwriter_write_attribute_ns()` and
`xmlwriter_start_attribute_ns()` nullable as well.
2020-06-16 15:50:01 +02:00
Nikita Popov
2c207ebe6b
Remove debug code from usleep()
...
This was added to debug CI failures, but ultimately didn't help
understand the macos timing issues. Drop it now so it's not
forgotten...
2020-06-16 14:51:58 +02:00
Nikita Popov
bbe74a6e3a
Merge branch 'PHP-7.4'
2020-06-16 14:32:33 +02:00
Dmitry Stogov
77d0587fdb
Use "lea" to add/sub register with constant
2020-06-16 14:04:05 +03:00
Dmitry Stogov
a459799910
Improved JIT for ZVAL_COPY_DEREF
2020-06-16 13:24:28 +03:00
Nikita Popov
c260613c6f
Optimize parallel test runner startup
...
Don't connect to each worker individually: First spawn all processes
and then establish connections in any order.
This avoids a ~1s wait when running on many cores.
2020-06-16 11:39:03 +02:00
David Carlier
15b2cc7c28
Implements an openpty wrapper for solaris based systems
...
This is only used by proc_open pty support, and as such declared
directly there.
2020-06-16 11:19:00 +02:00
David Carlier
727ae51a0c
Fix JIT build on solaris/illumos
...
thr_self to detect the proper thread identifier but all
related typedef'd types conflict with the vtune part.
2020-06-16 11:18:50 +02:00
Nikita Popov
8b822afb0c
Fix printf type
2020-06-16 10:57:29 +02:00
Jens de Nies
01be55fc00
Made sure zpp is always called and refactored some existing zpp calls.
...
Closes GH-5714
2020-06-16 10:45:14 +02:00
Jens de Nies
58a65c4b96
Fixed some oci8 tests.
...
Closes GH-5716
2020-06-16 10:38:06 +02:00
Dmitry Stogov
bdd8406372
Added JIT debug flag to dump the size of generated code (opcache.jit_debug=0x200)
2020-06-16 11:27:34 +03:00
Fabien Villepinte
293a0e797c
Fix typo
2020-06-15 21:32:01 +02:00
Dmitry Stogov
f04f7c3995
Added note
2020-06-15 17:21:32 +03:00
Dmitry Stogov
a92022f878
Fixed JIT
2020-06-15 15:35:02 +03:00
Dmitry Stogov
bb3d4456ee
Change GC_COLLECTABLE flag into GC_NOT_COLLECTABLE to simplify GC_MAY_LEAK() check
2020-06-15 14:26:22 +03:00
Dmitry Stogov
18f2ef094a
FETCH_FIM_R/IS JIT improvement
2020-06-15 12:15:56 +03:00
Nikita Popov
9b4601a65c
Fix typo in file cache job
2020-06-15 10:13:04 +02:00
Christoph M. Becker
63cb47a86b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79687 : Sony picture - PHP Warning - Make, Model, MakerNotes
2020-06-13 18:33:17 +02:00
Máté Kocsis
793823655e
Fix ZPP of OCI_Lob::free
2020-06-13 10:53:49 +02:00
Nikita Popov
cb0fa99174
Merge branch 'PHP-7.4'
2020-06-12 15:41:39 +02:00
Nikita Popov
50c87e92fc
Use GC stack in nested data removal
...
We should be doing this anyway to prevent stack overflow, but on
master this is important for an additional reason: The temporary
GC buffer provided for get_gc handlers may get reused if the scan
is performed recursively instead of indirected via the GC stack.
This fixes oss-fuzz #23350 .
2020-06-12 15:02:12 +02:00
Christoph M. Becker
b7a55aaff2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79676 : imagescale adds black border with IMG_BICUBIC
2020-06-12 14:09:16 +02:00
Nikita Popov
4f9a1122e1
Avoid out of range float to int cast in exif
...
Use convert_any_int instead of convert_any_format to directly get
an integer.
Also adjust SRATIONAL handling to not go through a double division.
This was introduced to avoid SIGFPE for the INT_MIN / -1 case,
but we can just handle that explicitly.
2020-06-12 12:54:41 +02:00
Nikita Popov
bf4f3ddb2f
Merge branch 'PHP-7.4'
2020-06-12 12:35:57 +02:00
Nikita Popov
2ba10ad0c5
Revert accidental change
...
Not sure how this happened, but I seem to have reverted
2fd278bc21
as part of
1386850838 .
Restore the change.
2020-06-12 11:34:01 +02:00
Nikita Popov
c7ad8a8738
Initialize indentation_uses_spaces field
...
This avoids reading a trap representation from _Bool,
but shouldn't matter as far as behavior is concerned.
2020-06-12 11:23:48 +02:00
Nikita Popov
88021ffe0e
Fix count_commas implementation
...
Ooops, I did not account for the changing length here.
2020-06-12 11:04:35 +02:00
Nikita Popov
f68a64a8a8
Fix null pointer UB in add_assoc_image_info()
...
And clean up this function a bit by reducing indentation and
variable scope.
2020-06-12 10:56:54 +02:00
Nikita Popov
4a7ec516e0
Move label to correct position
2020-06-12 10:44:37 +02:00
Nikita Popov
0949214ab3
Fix null pointer UB in GC
...
This is just plain stupid: In C, it is not permitted to add zero
to a null pointer. In C++, it is permitted.
2020-06-12 10:33:39 +02:00
Nikita Popov
ece375052b
Fix float conversion warning
...
We are okay with the loss of precision here...
2020-06-12 10:20:10 +02:00
Nikita Popov
1386850838
Use unused attribute for _dummy
...
The (void)_dummy is apparently considered a read of an uninitialized
variable. As it is a _Bool now, which has trap representations, this
is no longer considered legal and results in somewhat odd ubsan
warnings of the form:
runtime error: load of value 0, which is not a valid value for type 'zend_bool' (aka 'bool')
2020-06-12 10:18:19 +02:00
Nikita Popov
f691693ebc
Fix null pointer ub in encoding parsing
...
And do a bit of drive-by cleanup by extracting count_commas and
reducing some variable scopes.
2020-06-12 10:08:34 +02:00
Nikita Popov
ccf3e01216
Update fuzzer readme
...
Drop --enable-json flag and make it more obvious that clang needs
to be used.
2020-06-12 10:08:34 +02:00
Anatol Belski
a5e9950c7a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
sqlite3: Fix possible use after free
2020-06-11 13:23:35 +02:00
Dmitry Stogov
217f6e16d6
Use cheaper variant of zend_hash_index_find()
2020-06-11 01:34:55 +03:00
Christoph M. Becker
08858e7cca
Fix #73529 : session_decode() silently fails on wrong input
...
The `php_serialize` decode function has to return `FAILURE`, if the
unserialization failed on anything but an empty string.
The `php` decode function has also to return `FAILURE`, if there is
trailing garbage in the string.
2020-06-10 16:48:49 +02:00
Christoph M. Becker
85f5d15c18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS wrt. bug 79681
2020-06-10 16:45:08 +02:00
Christoph M. Becker
0eaecb9c87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79681 : mime_content_type/finfo returning incorrect mimetype
2020-06-10 16:40:39 +02:00
Nikita Popov
1c74bab8e6
More efficient check for valid class name
...
Use a bitset of valid characters instead of strspn. This is both
more efficient and more compact.
2020-06-10 14:50:35 +02:00
Nikita Popov
bda099a3c4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Explicitly start postgres on azure
2020-06-10 14:10:18 +02:00
Christoph M. Becker
38bca539a1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Also support absolute Windows filenames
2020-06-10 12:12:47 +02:00
Nikita Popov
94df2f697f
Fix bug #65006
...
The "callable name" may be the same for multiple distinct callables.
The code already worked around this for the case of instance methods,
but there are other cases in which callable names clash, such as
the use of self:: reported in the referenced bug.
Rather than trying to generate a unique name for callables, compare
the content of the alfi structures. This is less efficient if there
are many autoload functions, but autoload *registration* does not
need to be particularly efficient.
As a side-effect, this no longer permits unregistering non-callables.
2020-06-10 11:30:32 +02:00
Nikita Popov
034741f6c7
Simplify spl_autoload_perform() implementation
...
And convert alfi.obj from zval to zend_object*.
2020-06-10 10:33:54 +02:00
Nikita Popov
c23edd2acf
Remove called_scope inheritance in zend_call_method()
...
Similar to 097043db2a , but for the
zend_call_method() API. I don't think we ever use this for
static methods, but this logic shouldn't be there. If you want
to inherit the active LSB scope for some reason, do so explicitly.
2020-06-10 10:04:37 +02:00
Nikita Popov
097043db2a
Fix called scope assignment in autoloader
...
We should use the scope specified in the spl_autoload_register()
call, not whatever LSB scope just so happens to be active at the
time of the autoloader call.
2020-06-10 09:55:50 +02:00
Nikita Popov
e0e4a61847
Remove autoload_running flag
...
This was only used to decide between a hash clean and a hash
destroyed in spl_autoload_remove(). But now that
spl_autoload_functions() no longer distinguishes between NULL and
an empty array here, there's really no need to try and destroy
the hashtable here.
2020-06-10 09:41:58 +02:00
Nikita Popov
5b59d4915c
Cleanup SPL autoload implementation
...
Replace EG(autoload_func) with a C level zend_autoload hook.
This avoids having to do one indirection through PHP function
calls. The need for EG(autoload_func) was a leftover from the
__autoload() implementation.
Additionally, drop special-casing of spl_autoload(), and instead
register it just like any other autoloading function. This fixes
bug #71236 as a side-effect.
Finally, change spl_autoload_functions() to always return an array.
The distinction between false and an empty array no longer makes
sense here.
Closes GH-5696.
2020-06-10 09:38:47 +02:00
Christoph M. Becker
68dd6cc92b
Control VCRT leak reporting via environment variable in debug builds
...
Formerly, this had to be enabled by passing the configuration flag
`--enable-crt-debug`; now it can be enabled by setting the environment
variable `PHP_WIN32_DEBUG_HEAP`. The advantage is that it is no longer
necessary to do separate builds, at the cost of a very minor
performance penalty during process startup.
2020-06-10 09:05:17 +02:00
Dmitry Stogov
c1887974cc
Setup RETURN counters for nested frames
2020-06-10 08:10:27 +03:00
Xinchen Hui
28b4761ecb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Partial fixed bug #79649 (Altering disable_functions from module init corrupts memory)
2020-06-10 11:21:13 +08:00
Dmitry Stogov
a60cdcf084
A helper to trace executed source lines
2020-06-10 00:13:39 +03:00
Dmitry Stogov
e9f295ac84
Tracing JIT support for megamorphic calls
2020-06-09 23:33:22 +03:00
Christoph M. Becker
4edce91fae
Avoid unnecessary linking of Windows DLLs
...
For snapshot builds (`--enable-snapshot-build`), after the build has
been completely finished, running `nmake` causes a lot of DLLs to be
rebuilt. The problem is that the build folders OptimizerObj and
opcache_jit are dependencies of the main PHP DLL, but these folders do
not exists in the source tree, so nmake assumes it has to re-link the
main PHP DLL, and that makes several other DLLs stale.
We solve that by mirroring the folder structure of the respective
source folders.
2020-06-09 18:37:37 +02:00
Javier Eguiluz
066a378316
[ci skip] Fixed some minor typos in code comments
2020-06-09 17:17:55 +02:00
Christoph M. Becker
34ede22fd8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix possibly unsupported timercmp() usage
2020-06-09 16:56:35 +02:00
Christoph M. Becker
4b76a2ddb3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #62890 : default_socket_timeout=-1 causes connection to timeout
2020-06-09 16:48:41 +02:00
Nikita Popov
3b8d26accf
Remove obsolete __lambda_func handling
...
This is a leftover from create_function() support.
2020-06-09 16:47:40 +02:00
Christoph M. Becker
beddb97b4c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
2020-06-09 16:40:56 +02:00
Nikita Popov
e56e53a59d
Back up fake_scope in zend_call_function
...
We regularly find new places where we forgot to reset fake_scope.
Instead of having to handle this for each caller of zend_call_function()
and similar APIs, handle it directly in zend_call_function().
2020-06-09 16:33:33 +02:00
Nikita Popov
257dbb0450
Add zend_call_known_function() API family
...
This adds the following APIs:
void zend_call_known_function(
zend_function *fn, zend_object *object, zend_class_entry *called_scope,
zval *retval_ptr, int param_count, zval *params);
void zend_call_known_instance_method(
zend_function *fn, zend_object *object, zval *retval_ptr, int param_count, zval *params);
void zend_call_known_instance_method_with_0_params(
zend_function *fn, zend_object *object, zval *retval_ptr);
void zend_call_known_instance_method_with_1_params(
zend_function *fn, zend_object *object, zval *retval_ptr, zval *param);
void zend_call_known_instance_method_with_2_params(
zend_function *fn, zend_object *object, zval *retval_ptr, zval *param1, zval *param2);
These are used to perform a call if you already have the
zend_function you want to call. zend_call_known_function()
is the base API, the rest are just really thin wrappers around
it for the common case of instance method calls.
Closes GH-5692.
2020-06-09 16:21:54 +02:00
Nikita Popov
bcada03f48
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79683
2020-06-09 15:52:48 +02:00
Dmitry Stogov
797c1c5088
Tracing JIT support for real dynamic calls
2020-06-09 14:02:02 +03:00
George Peter Banyard
4b77a158ef
Use standard boolean type as zend_bool typedef
...
Closes GH-5624
2020-06-09 11:43:45 +02:00
George Peter Banyard
c14371ef7b
Fix incorrect zend_bool usage for display_errors
2020-06-09 11:43:37 +02:00
George Peter Banyard
9fbc31704d
Fix incorrect usage of zend_bool in Zend globals
2020-06-09 11:43:37 +02:00
Nikita Popov
be540b35d2
Remove some special-casing in zend_call_method()
...
Don't treat the !fn_proxy && !obj_ce case differently. There doesn't
seem to be any need for it, and it will result in subtly different
behavior (e.g. it will accept "Foo::bar" syntax, but break as soon
as you pass in an fn_proxy cache).
2020-06-09 10:10:58 +02:00
Máté Kocsis
596561009c
Fix some UNKNOWN default values
...
In ext/ffi, ext/intl, ext/mysqli, and ext/pcntl
2020-06-09 09:46:51 +02:00
Christoph M. Becker
cadcefc956
Fix new test case for master
2020-06-09 08:50:09 +02:00
Peter Kokot
fe2afef36f
Fix #78750 : configure assumes yacc and re2c work
...
Closes GH-5681
2020-06-09 00:46:12 +02:00
Ilija Tovilo
2a3ac4a8e7
Add missing terminators in zend_language_parser.y
...
Closes GH-5688
2020-06-09 00:44:13 +02:00
twosee
05ed7bff17
Make zend_argument_error_variadic static
...
Closes GH-5687
2020-06-09 00:42:48 +02:00
Christoph M. Becker
383a9f46ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #74267 : segfault with streams and invalid data
2020-06-08 23:28:36 +02:00
twosee
83a77015ad
Add helper APIs for maybe-interned string creation
...
Add ZVAL_CHAR/RETVAL_CHAR/RETURN_CHAR as a shortcut for using
ZVAL_INTERNED_STRING and ZSTR_CHAR.
Add zend_string_init_fast() as a helper for the empty string /
one char interned string / zend_string_init() pattern.
Also add corresponding ZVAL_STRINGL_FAST etc macros.
Closes GH-5684.
2020-06-08 15:31:52 +02:00
Tyson Andre
543684e796
Optimize out no-op yield from statements
...
If the array is empty, then I'd expect that the generator is never left,
and that can be converted to a no-op and the return value would always be `null`.
Make `yield from [];` as efficient as `if (false) { yield null; }`
when opcache's sccp pass is enabled.
Closes GH-5679
2020-06-08 09:17:13 -04:00
Nikita Popov
3d4f79d678
Don't allow variables as attribute name
...
Attributes require a static class name...
This fixes https://oss-fuzz.com/testcase-detail/6267052359942144 .
2020-06-08 14:34:43 +02:00
Nikita Popov
b03cafd19c
Fix bug #77966 : Cannot alias a method named "namespace"
...
This is a bit tricky: In this cases we have "namespace as", which
means that we will only recognize "namespace" as an identifier when
the lookahead token is already at the "as". This means that
zend_lex_tstring picks up the wrong identifier.
We solve this by actually assigning the identifier as the semantic
value on the parser stack -- as in almost all cases we will not
actually need the identifier, this is just an (offset, size)
reference, not a copy of the string.
Additionally, we need to teach the lexer feedback mechanism used
by tokenizer TOKEN_PARSE mode to apply feedback to something
other than the very last token. To that purpose we pass through
the token text and check the tokens in reverse order to find the
right one.
Closes GH-5668.
2020-06-08 12:55:14 +02:00
Phil Davis
08518b18b2
Fix typo of IteratorAggregateImpl
...
Closes GH-5682.
2020-06-08 12:28:15 +02:00
Nikita Popov
57f408e87c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79657
2020-06-08 11:32:24 +02:00
Dmitry Stogov
13909e5555
Fixed incorrect zend_bool type usage
2020-06-08 12:18:05 +03:00
twosee
88355dd338
Constify char * arguments of APIs
...
Closes GH-5676.
2020-06-08 10:38:45 +02:00
Nikita Popov
f6db43fec8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable mysqlnd compression on msan build
2020-06-08 10:36:01 +02:00
Nikita Popov
57e17e58a5
Fix leak in openssl_cms_read()
2020-06-08 10:13:25 +02:00
Remi Collet
cd3f42f17e
[skip ci] typo
2020-06-08 08:02:48 +02:00
Jens de Nies
45475c2e21
Deprecate function aliases in oci8 extension.
...
Closes GH-5589
2020-06-08 00:23:38 +02:00
Jakub Zelenka
367c55ff1d
Update NEWS and UPGRADING for the OpenSSL ext CMS addition
2020-06-07 21:11:09 +01:00
Eliot Lear
8583b8a9bf
Add support for Cryptographic Message Syntax (CMS)
...
It add CMS (RFC 5652) support, which is an update to PKCS7. The functions
are analogous BUT NOT IDENTICAL to openssl_pkcs7*. In particular, support for
different encodings (PEM, DER, SMIME) is now available.
2020-06-07 16:58:34 +01:00
Gabriel Caruso
7439941d55
Add $filter parameter for ReflectionClass::(getConstants|getReflectionConstants)
...
This solves [#79628 ](https://bugs.php.net/79628 ).
Similar to `ReflectionClass::getMethods()` and `ReflectionClass::getProperties()`,
this new `$filter` argument allows the filtering of constants defined in a class by
their visibility.
For that, we create three new constants for `ReflectionClassConstant`:
* `IS_PUBLIC`
* `IS_PROTECTED`
* `IS_PRIVATE`
Closes GH-5649.
2020-06-07 15:57:48 +02:00
Gabriel Caruso
84492f5b50
Fix tests' description for ReflectionClass::getConstant
2020-06-07 15:46:39 +02:00
twosee
7d6a0ba808
Fix expression warnings and break warnings
...
Close GH-5675.
2020-06-07 10:41:11 +02:00
Nikita Popov
1d8233877c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow defining of uname value for reproducible builds
2020-06-07 10:38:50 +02:00
twosee
6260bc218f
Remove duplicate zend_try
...
Closes GH-5672.
2020-06-07 10:37:14 +02:00
twosee
1b85e749c7
Fix warning of strict-prototypes
...
Closes GH-5673.
2020-06-07 10:36:50 +02:00
Nikita Popov
68fdad82c9
Fix free of uninitialized memory in attributes
...
Fixes OSS-Fuzz #23140 .
2020-06-07 10:27:15 +02:00
Remi Collet
06ff0e8721
move comment
2020-06-07 08:16:50 +02:00
Remi Collet
a3bfd4a108
Fixed bug #79678 Build fails due to undeclared ZIP_RDONLY
2020-06-07 07:53:26 +02:00
George Peter Banyard
706d4f3559
Fix invalid usage of zend_bool in DOM extension
2020-06-06 17:19:00 +02:00
twosee
cb2275866d
Fix BC break of zend_throw_exception
...
This also fixes a SegFault
Closes GH-5670
2020-06-06 17:17:44 +02:00
Máté Kocsis
aa9b0ccda8
Add tests to check mismatching function signatures
...
Closes GH-5666
2020-06-06 09:23:34 +02:00
Nicolas Frandeboeuf
170d63ec62
openssl: Fix openssl_pkcs12_export_to_file extracerts test
...
Same as https://github.com/php/php-src/pull/2681/files but for openssl_pkcs12_export_to_file
Closes GH-5665
2020-06-05 22:28:01 +02:00
George Peter Banyard
4c6ecc820b
Refactor IntlBreakIterator::next() handling
2020-06-05 22:16:33 +02:00
George Peter Banyard
7af0466044
Convert code path which should never happen to assertion
2020-06-05 22:11:06 +02:00
Remi Collet
eae3bda9e3
encode param is optional
2020-06-05 17:10:12 +02:00
Nikita Popov
8d2c7efbc0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unnecessary "poo" rmdirs
2020-06-05 16:27:09 +02:00
Remi Collet
a838cb5e11
bump zip version
2020-06-05 16:23:43 +02:00
Nikita Popov
064b464448
Implement "Constructor Promotion" RFC
...
RFC: https://wiki.php.net/rfc/constructor_promotion
Closes GH-5291.
2020-06-05 15:15:51 +02:00
Dmitry Stogov
91f283a0bf
micro-optimization
2020-06-05 14:20:39 +03:00
Christoph M. Becker
3a031e0b03
Drop hard-coded /W3 default in favor of custom CFLAGS
...
Building with `/W3` shows an awful lot of warnings on Windows, so it's
really hard to spot the more important ones. Since it is not possible
to override the hard-coded `/W3`, we drop it altogether, so MSVC uses
the default `/W1`. Users are encouraged to increase the warning level
via the environment variable `CFLAGS` before doing configure.
We also enable `/WX` (treat warnings as errors) for AppVeyor CI, using
`/W1` for now, since otherwise the build would fail.
2020-06-05 11:17:06 +02:00
Christoph M. Becker
5a04796f76
Fix MSVC level 1 (severe) warnings
...
We fix (hopefully) all instances of:
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4005 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4024 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4028 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4047 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4087 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4090 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4273 >
* <https://docs.microsoft.com/en-us/cpp/error-messages/compiler-warnings/compiler-warning-level-1-c4312 >
`zend_llist_add_element()` and `zend_llist_prepend_element()` now
explicitly expect a *const* pointer.
We use the macro `ZEND_VOIDP()` instead of a `(void*)` cast to suppress
C4090; this should prevent accidential removal of the cast by
clarifying the intention, and makes it easier to remove the casts if
the issue[1] will be resolved sometime.
[1] <https://developercommunity.visualstudio.com/content/problem/390711/c-compiler-incorrect-propagation-of-const-qualifie.html >
2020-06-05 11:17:05 +02:00
Nikita Popov
536c02b003
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update intl test suite for ICU 67.1
2020-06-05 10:52:07 +02:00
Nikita Popov
5b4c4bbe3b
Free attribute validators on shutdown
2020-06-05 10:36:35 +02:00
Nikita Popov
d3eeeb6882
Don't leak attributes on internal classes
...
Also add zend_hash_release() API to complement zend_array_release(),
because the latter is specific to non-persistent zval arrays.
2020-06-05 10:29:49 +02:00
Nikita Popov
8a7756c1b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Respect --program-prefix/suffix when installing phar
2020-06-05 10:10:52 +02:00
Nikita Popov
975acfe71e
Pass zend_string message to zend_error_cb
...
This makes the zend_error_cb API simpler, and avoid formatting
the same message in multiple places.
It should be noted that the passed zend_string is always
non-persistent, so if you want to store it persistently somewhere,
you may still need to duplicate it.
The last_error_message is cleared a bit more aggressive, to make
sure it doesn't hang around across allocator life-cycles.
Closes GH-5639.
2020-06-05 09:54:02 +02:00
Nikita Popov
e949f306be
Fixed bug #72089 : Throw Error on require failure
...
It should be noted that we still throw the usual fopen warnings,
but the final fatal error becomes an Error exception. Combine
with @ to suppress FS warnings.
Closes GH-5641.
2020-06-05 09:46:39 +02:00
Christoph M. Becker
4ce47709c7
Fix phpdbg watchpoints wrt. negative_array_index RFC
...
The implementation of that RFC changed the initial value of
`zend_array.nNextFreeElement` to `-1`; we work around that by inserting
first, and retrieving the index afterwards.
We also fix the erroneous printf specifier for the unsigned integer.
2020-06-05 09:06:29 +02:00
Dmitry Stogov
bc37fc57e5
Avoid useless "mov"
2020-06-05 00:05:12 +03:00
George Peter Banyard
97757e759d
Fix weird zend_bool usage in Intl Calendar::roll() method
...
This code really needs to be review as it's convoluted for no good reason.
2020-06-04 22:56:10 +02:00
Matthias Dötsch
957a0f6a69
in_array() avoid internal property access as we have the arrlen already
...
Closes GH-5662
2020-06-04 22:55:06 +02:00
Benjamin Eberlei
1622d22c62
Add upgrading note for Attributes RFC
...
[ci-skip]
2020-06-04 18:21:18 +02:00
Benjamin Eberlei and Martin Schröder
a7908c2d11
Add Attributes
...
Co-authored-by: Martin Schröder <m.schroeder2007@gmail.com >
2020-06-04 18:19:49 +02:00
Christoph M. Becker
970ac28e27
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #73527 : Invalid memory access in php_filter_strip
2020-06-04 13:40:16 +02:00
Dmitry Stogov
58801f7142
Add guard for FETCH_DIM_FUNC_ARG
2020-06-04 14:04:21 +03:00
Dmitry Stogov
8047c1d05c
Prefer shorter x86 instructions
2020-06-04 13:19:42 +03:00
Christoph M. Becker
864fb0ec23
Implement #47074 : phpinfo() reports "On" as 1 for the some extensions
...
What is modified as boolean, should also be displayed as boolean.
2020-06-04 11:25:45 +02:00
Dmitry Stogov
efde51e197
Improved tracing JIT for FETCH_OBJ_R/IS
2020-06-04 12:23:27 +03:00
Nikita Popov
4984bd100b
Remove MYSQLND_COMPRESSION_WANTED define
...
Instead directly define MYSQLND_COMPRESSION_ENABLED. This also
matches what config.w32 does.
2020-06-04 10:03:39 +02:00
Nikita Popov
fc458eee3b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
mysqlnd: Remove unnecessary check for HAVE_ZLIB
2020-06-04 10:02:12 +02:00
Christoph M. Becker
c773dd81c6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79668 : get_defined_functions(true) may miss functions
2020-06-04 09:11:13 +02:00
Dmitry Stogov
2745053799
Tracing JIT for FETCH_DIM_FUNC_ARG and FETCH_OBJ_FUNC_ARG when they are used in READ mode (to pass by value).
2020-06-04 10:03:15 +03:00
Dmitry Stogov
c59edf0ad5
Fixed abstract stack consistency for JMPZ_EX/JMPNZ_EX
2020-06-04 00:17:13 +03:00
Dmitry Stogov
3fae143318
"call_info" doesn't matter
2020-06-03 22:50:40 +03:00
Dmitry Stogov
0badfc0880
Avoid useless register reload
2020-06-03 18:14:51 +03:00
Nikita Popov
698bd59fb5
Fix typo in skipif section
...
Merge mistake...
2020-06-03 14:50:35 +02:00
Dmitry Stogov
3587fc5418
Avoid useless REFCOUNTED check
2020-06-03 12:11:39 +03:00
Christoph M. Becker
d23cd354c0
Fix #79665 : ini_get() and opcache_get_configuration() inconsistency
...
Overriding the given INI values in modifier callbacks is not possible,
so instead of enforcing "normalized" internal values, we just reject
the attempted changes.
2020-06-03 11:07:25 +02:00
Dmitry Stogov
72d1c50572
Use cheaper zend_rethrow_exception() instead of zend_throw_exception_internal()
2020-06-03 11:51:04 +03:00
Nikita Popov
3f6a212be7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Report len as -1 instead of INT_MAX
2020-06-03 10:17:27 +02:00
Nikita Popov
180b9af58a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip new watch point test under asan
2020-06-03 10:02:31 +02:00
Dmitry Stogov
c93c3b4f0e
Handle VM interrupts after DO_ICALL through side exits
2020-06-03 10:58:17 +03:00
Nikita Popov
26ce32c45a
%d out token IDs in test
...
Avoid having to update this test any time token numbers shift.
2020-06-03 09:57:22 +02:00
Dmitry Stogov
d237989f33
Avoid reference counting when RETURN CV
2020-06-03 00:49:10 +03:00
Dmitry Stogov
38f9d95ffa
Added missed helper
2020-06-02 23:50:32 +03:00
Christoph M. Becker
86057f5f44
Skip new test case on Windows when JIT is enabled
...
Cf. <http://git.php.net/?p=php-src.git;a=commit;h=c5cf0af8a98cbc574fd315bf9d78033b896886f3 >.
2020-06-02 17:12:34 +02:00
Christoph M. Becker
486b8b1cd1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #73927 : phpdbg fails with windows error prompt at "watch array"
2020-06-02 15:19:32 +02:00
Dmitry Stogov
f733047ae2
Tracing JIT support for indirect CV modification (may be incomplete)
2020-06-02 15:55:18 +03:00
Dmitry Stogov
99053228b9
Afdded misse MAY_BE_ARRAY_* flags
2020-06-02 15:54:44 +03:00
Christoph M. Becker
97b7dbb8f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79664 : PDOStatement::getColumnMeta fails on empty result set
2020-06-02 10:48:15 +02:00
Nikita Popov
6b45039fb7
Add some mixed types
2020-06-02 10:16:13 +02:00
Dmitry Stogov
2706615418
Fixed retutn type inference when return undefined variable
2020-06-01 16:26:22 +03:00
Christoph M. Becker
520a403fcd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79650 : php-win.exe 100% cpu lockup
2020-06-01 13:25:58 +02:00
Dmitry Stogov
b0613d16d7
Fixed tracing JIT for closure run_time_cache access
2020-06-01 12:06:26 +03:00
Ilija Tovilo
c599d173ab
Fix php_get_args function info return type and add arg check
...
Closes GH-5648.
2020-05-31 17:15:58 +02:00
Nikita Popov
eeb7a7cd7a
Add UPGRADING note for pty support
...
[ci skip]
2020-05-31 17:14:41 +02:00
Nikita Popov
393cd89ffb
Add UPGRADING note for xmlrpc unbundling
...
And drop other UPGRADING references to xmlrpc. I don't think it
makes sense to have those for extensions that are no longer
shipped...
[ci skip]
2020-05-31 16:57:37 +02:00
Nikita Popov
d7f17ea44d
Fix some line overruns in UPGRADING
...
[ci skip]
2020-05-31 16:55:46 +02:00
Nikita Popov
805e3e3af4
Move upgrading note for mixed
...
This should be in the "new features" section.
[ci skip]
2020-05-31 16:48:14 +02:00
Daniel Ruf
cf513c2dc8
Fix small typo in comment
2020-05-31 15:03:09 +02:00
Moni
c5d9736130
update node-fetch url
2020-05-31 12:23:28 +02:00
Máté Kocsis
4a10eb4f53
Fix #79653 Unexpected error for ArrayIterator::ksort()
...
Closes GH-5644
2020-05-30 16:59:49 +02:00
George Peter Banyard
2302b14aab
Use ZPP callable check for spl_autoload_register.
...
This makes it always throw a TypeError, moreover this makes the
error message consistent.
Added a warning mentioning that the second parameter is now ignored
when passed false.
Closes GH-5301
2020-05-30 13:59:06 +02:00
Máté Kocsis
dd6e54b746
Fix #79652 Ensure that the mixed type is displayed instead of the union of all types
...
Closes GH-56430
2020-05-30 08:58:59 +02:00
Christoph M. Becker
4fa3687e56
Unbundle ext/xmlrpc
...
According to <https://wiki.php.net/rfc/unbundle_xmlprc > we unbundle
ext/xmlrpc.
2020-05-29 16:47:44 +02:00
Máté Kocsis
444aa2636e
Add upgrading notes about the deprecated functionality in ext/enchant
...
[skip ci]
2020-05-29 15:15:27 +02:00
Máté Kocsis and Remi Collet
cd3e04dff3
Convert enchant resources to opaque objects
...
Additionally, deprecate ENCHANT_MYSPELL and ENCHANT_ISPELL constants.
Closes GH-5577
Co-authored-by: Remi Collet <remi@php.net >
2020-05-29 14:51:41 +02:00
Christoph M. Becker
f06844239f
Support libzip 1.6 on Windows
2020-05-29 13:43:51 +02:00
Nikita Popov
ec3ee1f173
Fix Windows build
2020-05-29 12:58:31 +02:00
Dmitry Stogov
8e8c5a73ee
Fixed tracing JIT register allocator (failure on ext/opcache/tests/jit/assign_002.phpt)
2020-05-29 13:27:47 +03:00
Dmitry Stogov
dc7a0fb236
Allow tracing JIT generate code when function exits from VM (e.g. for magic __get/__set)
2020-05-29 13:25:59 +03:00
Nikita Popov
7562679b45
Remove json checks in fuzzer SAPI
...
JSON is now always enabled
2020-05-29 12:08:45 +02:00
Dmitry Stogov
7aa8c7e6aa
Don't add guards that are not going to be checked
2020-05-29 12:17:09 +03:00
Dmitry Stogov
de7a0df0a2
Fixed use-after-free in tracing JIT when recording closures and top-level op_arrays.
2020-05-29 00:45:28 +03:00
Tyson Andre
32a1ebbd43
Clean up calls to extension_loaded('json') in tests
...
These are no longer needed after https://wiki.php.net/rfc/always_enable_json
Closes GH-5637
2020-05-28 15:07:47 -04:00
Dmitry Stogov
784f1b5c49
Fixed tracing JIT type inference for passing undefined CV by value
2020-05-28 18:35:32 +03:00
Dmitry Stogov
0abe742d72
Fixed incorrect trace type inference for top-level code
2020-05-28 17:43:29 +03:00
Dmitry Stogov
1d98bd41e5
Fixed incorrect type inference
2020-05-28 17:10:05 +03:00
Christoph M. Becker
6b769a3dc6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix PVS-Studio integration
2020-05-28 15:35:47 +02:00
David Carlier
6dca024a09
Build fix for newer versions of NetBSD.
...
its libutil contains newer conflicting apis as estrdup, emalloc.
Closes GH-5635
2020-05-28 14:31:04 +02:00
Nikita Popov
70b2aa7fb8
Ensure Exception::getFile/getLine return type is correct
...
These return an untyped protected property, so we can't rely on
the type being correct.
Also add return types to the interface -- normally this would be
a no-go, but Throwable is a special interface that can only
be implemented internally, so we control all implementations.
2020-05-28 14:19:47 +02:00
Nicolas Grekas
d579e1809a
Run Symfony tests in per-component
2020-05-28 14:08:27 +02:00
Nicolas Grekas
ef9a790f12
Re-enable Symfony test on PHP 8
2020-05-28 14:08:25 +02:00
Nikita Popov
5716fa7f49
Make Exception::$previous a typed property
...
Exception::$previous is a private property, so we can add a type:
private ?Throwable $previous = null;
2020-05-28 14:01:29 +02:00
Nikita Popov
aaae77f7f1
Make Exception::$trace typed array property
...
This is a private property, so we are allowed to add a type.
The new declaration of the property is:
private array $trace = [];
This ensures that Exception::getTrace() does indeed return an array.
Userland code that was modifying the property through refleciton
may have to be adjusted to assign an array (instead of null,
for example).
Closes GH-5636.
2020-05-28 13:55:38 +02:00
Dmitry Stogov
c16dbed0c4
Avoid recording of uninitialized types.
...
VM doesn't set Z_TYPE() for IS_VAR when passes class_entry reference.
2020-05-28 14:39:41 +03:00
Máté Kocsis
58cb0e4732
Add some mixed parameter types and fix UNKNOWN default values in ext/xmlrpc
2020-05-28 12:41:48 +02:00
Nikita Popov
01e86d6d70
Extract code for declaring Exception/Error properties
2020-05-28 12:15:16 +02:00
Nikita Popov
55dd3945fb
Convert Exception::getMessage() result to string
...
We specify that the return type of Exception::getMessage() is a
string. However, we don't currently ensure this, because
Exception::$message is a protected member that can be set to any
type. Fix this by performing an explicit type-cast.
This also requires a temporary refcount increment in the __toString()
object handler, because there is no additional owner of the object,
and it may get released prematurely as part of the __toString() call.
2020-05-28 11:51:35 +02:00
Dmitry Stogov
efbe96166d
Split "opcache.jit_max_recursion_unroll" into "opcache.jit_max_recursive_calls" and "opcache.jit_max_recursive_returns".
...
It's possible to disable recording of "recursive return loops" setting opcache.jit_max_recursive_returns to 0.
2020-05-28 12:28:05 +03:00
Nicolas Grekas
caca664871
Fix func info for sodium_crypto_aead_xchacha20poly1305_ietf_decrypt
2020-05-28 10:44:26 +02:00
Nikita Popov
b53f83c0c3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use automatic port assignment in socket_import/export test
2020-05-28 10:20:12 +02:00
Dmitry Stogov
501a2e86e8
Add a side exit on enter to function if it may be called with different number of arguments.
2020-05-28 01:22:32 +03:00
Dmitry Stogov
bd329a6019
Keep information about SEND_UNPACK/SEND_ARRAY in call_info
2020-05-27 22:15:14 +03:00
Dmitry Stogov
d2d5738b32
Fixed tracing JIT support for ZEND_RETURN_BY_REF in CALL VM
2020-05-27 18:04:16 +03:00
Dmitry Stogov
0bf2bfcf8d
Fixed tracing JIT for CALL VM
2020-05-27 17:05:06 +03:00
Dmitry Stogov
645ff9c8f6
Revert "Fixed tracing JIT for CALL VM"
...
This reverts commit 7f3a296f84 .
2020-05-27 17:04:31 +03:00
Remi Collet
17649648ed
always build json statically
2020-05-27 15:36:07 +02:00
Tyson Andre
cc27781f40
[RFC] Always enable JSON support in php 8.0
...
Currently, it's possible to disable the json extension with
`./configure --disable-json` (for historical reasons that no longer apply).
However, JSON is widely used in many use cases - web sites, logging output,
and as a data format that can be used to share data with many applications
and programming languages,
so I'd personally find it useful if it was always enabled.
Examples of where this would be useful:
- For internal classes to be able to implement `JsonSerializable`
which currently requires a hard dependency on the JSON extension.
- For PHP users to publish single-file scripts that use json_encode and
json_decode and don't require polyfills or less readable var_export output.
(polyfills are less efficient and may have issues with recursive data
structures)
- So that php-src's own modules, tools and test cases can start using JSON
if it's a good choice for encoding a value. (same for PECLs)
https://wiki.php.net/rfc/jsond mentions that in PHP 5,
> The current Json Parser in the json extension does not have a free license
> which is a problem for many Linux distros.
> This has been referenced at Bug #63520 .
> That results in not packaging json extension in the many Linux distributions.
Starting in php 7.0 with the switch to jsond,
It looks like licensing is no longer an issue.
Changes:
- Remove all flags related to JSON such as `configure --disable-json`
- Require that JSON be compiled statically instead of as a shared library
Examples of uses of JSON in various distros
(backwards incompatible changes such as changing packaging are typically
reserved for major versions, and 8.0 is a major version)
- JSON is required by `php-cli` or `php` in ubuntu:
https://packages.ubuntu.com/focal/php/
- The php-json package has to be installed separately
from the PHP binary in Fedora repos.
Closes GH-5495
2020-05-27 09:08:43 -04:00
Dmitry Stogov
7f3a296f84
Fixed tracing JIT for CALL VM
2020-05-27 15:59:29 +03:00
Christoph M. Becker
c5cf0af8a9
Mark several phpdbg tests as xfail
...
Apparently, breakpoints and watchpoints are practically disabled if
run with OPcache JIT under Windows, so we mark the affected tests as
xfail in that case for the time being.
2020-05-27 11:39:15 +02:00
Nikita Popov
0221b8b2ab
Add support for * width and precision in printf()
...
If * is used for width/precision in printf, then the width/precision
is provided by a printf argument instead of being part of the format
string. Semantics generally match those of printf in C.
This can be used to easily reproduce PHP's float printing behavior:
// Locale-sensitive using precision ini setting.
// Used prior to PHP 8.0.
sprintf("%.*G", (int) ini_get('precision'), $float);
// Locale-insensitive using precision ini setting.
// Used since to PHP 8.0.
sprintf("%.*H", (int) ini_get('precision'), $float);
// Locale-insensitive using serialize_precision ini setting.
// Used in serialize(), json_encode() etc.
sprintf("%.*H", (int) ini_get('serialize_precision'), $float);
Closes GH-5432.
2020-05-27 10:42:25 +02:00
Dmitry Stogov
2423288f0f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed possible usage of uninitialized value
2020-05-27 11:27:34 +03:00
Nikita Popov
b6000b7e0e
Add support for %h and %H in printf()
...
These are locale-independent variants of %g and %G.
Closes GH-5436.
2020-05-27 10:19:23 +02:00
Nikita Popov
a01b6e5787
Return empty array instead of null from enchant APIs
...
Closes GH-5566.
2020-05-27 10:12:21 +02:00
Dmitry Stogov
f91283fcd4
Fixed JIT for ext/opcache/tests/bool_not_cv.phpt with opcache.jit=1202
2020-05-27 10:57:33 +03:00
Alex Dowad
0bff4e56e2
Tweak style and grammar in proc_open.c
2020-05-27 09:05:31 +02:00
Alex Dowad
dff7994ff4
Avoid compiler warnings in proc_open.c
...
We are getting a lot of compiler warnings when building on Appveyor CI (Windows).
Fix some of them.
Closes GH-5629
2020-05-27 09:05:14 +02:00
Dmitry Stogov
6e5247275a
Fixed JIT for ext/opcache/tests/jit/cmp_004.phpt with opcache.jit=1201
2020-05-27 09:59:12 +03:00
Dmitry Stogov
d2f811438e
Set proper jit_extension for inherited methods
2020-05-27 09:58:03 +03:00
Máté Kocsis
0de3ca4f98
Let's try to fix the JIT compiler warning
2020-05-26 20:56:29 +02:00
Máté Kocsis
fbe30592d6
Improve type error messages when an object is given
...
From now on, we always display the given object's type instead of just reporting "object".
Additionally, make the format of return type errors match the format of argument errors.
Closes GH-5625
2020-05-26 19:06:19 +02:00
Christoph M. Becker
38c85efe83
Fix picky builds
...
Due to `-Werror=maybe-uninitialized` a bogus warning may be thrown, so
we initialize the variable to work-around that.
2020-05-26 18:37:29 +02:00
Christoph M. Becker
d2508ef947
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable phpdbg tests on AppVeyor
Make phpdbg test portable
Fix several mostly Windows related phpdbg bugs
Fix #73926 : phpdbg will not accept input on restart execution
2020-05-26 17:46:56 +02:00
Christoph M. Becker
31e410e098
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79595 : zend_init_fpu() alters FPU precision
2020-05-26 17:21:29 +02:00
Dmitry Stogov
15aa891c5e
Fixed JIT for integer overflow checks
2020-05-26 17:59:15 +03:00
Nikita Popov
baa285881f
Fix variable type
...
This is no longer a boolean.
2020-05-26 15:58:36 +02:00
Tyson Andre
9b33272536
Allow generators to have a real return type of mixed or object
...
Fixes an edge case overlooked in
https://github.com/php/php-src/pull/5313
Generators are objects, so `object` should have also been allowed in addition to
`iterable` and `Traversable`
Closes GH-5626
2020-05-26 09:57:10 -04:00
Derick Rethans
446525cb87
Merge branch 'PHP-7.4'
2020-05-26 14:20:24 +01:00
Max Semenik
23ee4d4b57
Support catching exceptions without capturing them to variables
...
RFC: https://wiki.php.net/rfc/non-capturing_catches
Closes GH-5345.
2020-05-26 15:12:18 +02:00
Nikita Popov
1203bbf07e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Respect typed references in catch assignment
2020-05-26 15:03:26 +02:00
Nikita Popov
2daa89b1e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix zend_assign_to_typed_ref() implementation
2020-05-26 14:44:09 +02:00
Dmitry Stogov
59e69eb1c9
Fixed JIT for (LONG_MIN % -1)
2020-05-26 14:49:29 +03:00
Derick Rethans
ac2dd9d5e8
Merge branch 'PHP-7.4'
2020-05-26 11:47:43 +01:00
Nikita Popov
81c824f41f
Clarify ZEND_CATCH code
...
UNDEF the opcode result instead of addref'ing the exception.
2020-05-26 11:34:07 +02:00
Max Semenik
f825c0bb88
Improve language in error messages
...
Closes GH-5617
2020-05-26 11:27:07 +02:00
Christoph M. Becker
2261234720
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3.20 will be next
2020-05-26 10:58:45 +02:00
Dmitry Stogov
cf3b133a86
Fixed JIT for SEND_VAR $undefined_cv
2020-05-26 10:13:57 +03:00
Nikita Popov
ca358001b9
Revert "Fixed JIT for SEND_VAR $undefined_cv"
...
This reverts commit d60988257b .
This change causes segfaults in many tests.
2020-05-25 23:51:11 +02:00
Dmitry Stogov
0386cbb95c
Fixed tracing JIT for RETRUN $undefined_cv
2020-05-25 22:19:13 +03:00
David Carlier
e8ba8908a9
proc_open FreeBSD build fix
...
On this platform the needed header is different.
Closes GH-5623
2020-05-25 18:38:38 +02:00
Máté Kocsis
b3718430de
Annotate internal functions with the mixed type
...
Closes GH-5618
2020-05-25 17:30:57 +02:00
Máté Kocsis
cbf86efc21
Fix ZPP of v*printf()
2020-05-25 17:29:46 +02:00
Máté Kocsis
43095a55e2
Promote warning related to operator overloading in ext/gmp to an exception
2020-05-25 17:26:33 +02:00
Dmitry Stogov
d60988257b
Fixed JIT for SEND_VAR $undefined_cv
2020-05-25 18:24:50 +03:00
Dmitry Stogov
4aa8678306
ZEND_ACC_IMMUTABLE may be reset for closures
2020-05-25 17:45:13 +03:00
Dmitry Stogov
bfc56ed511
Keep trace number in EG(jit_trace_num) instead of EG(reserved)[zend_func_info_rid]
2020-05-25 17:05:26 +03:00
Dmitry Stogov
3376f19742
Check for ZEND_HANDLE_EXCEPTION opcode before accessing opline trace info.
2020-05-25 16:45:45 +03:00
Dmitry Stogov
201491e61b
Replace warning code by side exit to VM
2020-05-25 15:14:27 +03:00
Dmitry Stogov
b35a9a4ce6
Reorder conditions to save one instruction in recursive return loop
2020-05-25 12:55:03 +03:00
Christoph M. Becker
ce668c0ec6
PGSQL and POD_SQL: don't include pg_config.h
...
Even if that header file is available, we better consider it private,
and don't include it. The information about whether SSL support is
enabled is now missing (`USE_(OPEN)SSL`), and it seems there is no
alternative way to get it (`PQinitSSL()` is always defined), so we
remove it from the PHP info. Furthermore, the `PG_VERSION` and
`PG_VERSION_STR` macros are no longer available, but as of libpq 9.1
there is `PQlibVersion()` which allows us to construct `PG_VERSION` in
a most likely backwards compatible manner. The additional information
available through `PG_VERSION_STR` is lost, though, so we define
`PGSQL_LIBPQ_VERSION_STR` basically as alias of `PGSQL_LIBPQ_VERSION`,
and deprecate it right away.
Since we are now requiring at least libpq 9.1, we can remove some
further compatibility code and additional checks.
Regarding the raised requirements: official support for PostGreSQL 9.0
ended on 2015-10-08, and even CentOS 7 already has PostGreSQL 9.2, so
this is not supposed to be too much of an issue.
2020-05-25 10:48:35 +02:00
Tyson Andre
f3efb9e3fb
Fail in ./configure when no opcache shm backends exist
...
This can be seen when the `./configure` step fails to detect `HAVE_SHM_*`,
e.g. due to missing a necessary dependency to compile the test scripts.
(Run `./configure`, run `yum install libtool-ltdl-devel` for missing dependencies,
then run `make`, and php can end up built with 0 shared memory opcache caches)
Give a clearer error message than `unknown`
Searching for `opcache "Fatal Error Unable to allocate shared memory segment of"
"unknown: No such file or directory"` reveals issues such as
https://github.com/termux/termux-packages/issues/2234
Closes GH-5615
2020-05-24 17:49:52 -04:00
George Peter Banyard
cebe750f46
Refactor ZPP API to use uint32_t as everywhere else
...
Closes GH-5609
2020-05-22 17:13:42 +02:00
George Peter Banyard
bc3ee2eeea
[skip-ci] Update UPGRADING
...
Add upgrading note for mixed type and removal of curly braces offset syntax
2020-05-22 17:02:30 +02:00
Nikita Popov
b9d0ff7634
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix #79595 : zend_init_fpu() alters FPU precision"
2020-05-22 16:57:24 +02:00
George Peter Banyard
c803499e23
Remove depreacted curly brace offset syntax
...
Closes GH-5221
2020-05-22 16:52:17 +02:00
Nikita Popov
a307e48d67
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Show diffs for failed tests on Azure CI
2020-05-22 16:37:22 +02:00
Máté Kocsis and Dan Ackroyd
aec4c0fd03
Add support for the mixed type
...
RFC: https://wiki.php.net/rfc/mixed_type_v2
Closes GH-5313
Co-authored-by: Dan Ackroyd <danack@basereality.com >
2020-05-22 16:08:12 +02:00
Christoph M. Becker
4bc1d8333a
Raise ext/pgsql requirements to PostGreSQL 7.4
...
We can safely assume that users have at the very least libpq 7.4, for
which official support ended on 2010-10-01; even CentOS 6 has 8.4 now.
It is also noteworthy that PDO_PGSQL already requires libpq 7.4 or
later.
2020-05-22 15:56:24 +02:00
Christoph M. Becker
c0920e674f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79595 : zend_init_fpu() alters FPU precision
2020-05-22 15:47:33 +02:00
Dmitry Stogov
f4b46314f6
Prevent CGG reordering if hanlers order is defined by zend_vm_order.txt
2020-05-22 12:37:35 +03:00
Dmitry Stogov
0085cbffd8
Fixed typecast
2020-05-22 12:36:52 +03:00
Gerard Roche
cf3d3cd86f
Fix PostgreSQL and MySQL setup on Travis CI
...
Note that the PostgreSQL tests still don't work on some architectures.
Closes GH-5607.
2020-05-22 10:02:57 +02:00
Gerard Roche
d1dde094f2
run-tests: refactor
2020-05-22 09:58:04 +02:00
Gerard Roche
2ef88f517d
run-tests: echo message and exit if no tests found
...
The test runner currently defaults to running the entire test suite if
no selected tests can be found. This can be unexpected.
For example the ext/mysqlnd/ directory has no tests, if you specify that
directory when testing the entire test suite will be run.
run-tests.php [options] ext/mysqlnd/
Closes GH-5605.
2020-05-22 09:37:46 +02:00
Christoph M. Becker
7f51f43509
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79615 : Wrong GIF header written in GD GIFEncode
2020-05-22 09:22:38 +02:00
Dmitry Stogov
bb1a68b40c
Use EX(run_time_cache) instead of RUN_TIME_CACHE(&EX(func)->op_array)
2020-05-21 18:35:32 +03:00
Dmitry Stogov
a9b2ff3dda
simplification
2020-05-21 18:01:44 +03:00
Dmitry Stogov
2dfd6cd373
Allow counter settings to be "zero" to disable corresponding counter
2020-05-21 01:06:50 +03:00
Dmitry Stogov
d2446ca1d9
Missed label
2020-05-21 00:57:54 +03:00
Dmitry Stogov
b65d366bf8
Better condition
2020-05-20 23:05:48 +03:00
Dmitry Stogov
95248491af
Prefer already cached version of the script
2020-05-20 23:04:34 +03:00
George Peter Banyard
3b62e8b9ab
Fix [-Wundef] warning in SQLite3 extension
2020-05-20 18:22:11 +02:00
George Peter Banyard
6a151225dc
Fix [-Wundef] warning in SPL extension
2020-05-20 18:22:10 +02:00
George Peter Banyard
e6930bcfba
More [-Wundef] warnings fixed in POSIX extension
...
Forgot to squash this into the other commit
2020-05-20 18:22:10 +02:00
George Peter Banyard
3092a1ee12
Fix [-Wundef] warning in PHAR extension
2020-05-20 18:22:10 +02:00
George Peter Banyard
999f65c9cd
Fix [-Wundef] warning in OpenSSL extension
2020-05-20 18:22:10 +02:00
George Peter Banyard
ea8686540a
Fix [-Wundef] warning in INTL extension
2020-05-20 18:22:10 +02:00
George Peter Banyard
9cc24baa1c
Fix [-Wundef] warning in Iconv extension
2020-05-20 18:22:09 +02:00
George Peter Banyard
2f0dcf2ac2
Fix [-Wundef] warning in GD extension
2020-05-20 18:22:09 +02:00
Nikita Popov
e852944f63
Add --enable-memory-sanitizer flag
...
This flag enabled msan late in the pipeline, so that it does
not affect configure checks.
Otherwise we get a false positive report for openpty availability
without -lutil, which will then result in infinite recursion if
actually called.
This also sets origin tracking to 2, so bump the timeout to 90
minutes.
2020-05-20 16:46:28 +02:00
George Peter Banyard
c85ded7632
Fix [-Wundef] warning in PDO PostgreSQL extension
2020-05-20 16:29:53 +02:00
George Peter Banyard
50af36a8aa
Fix [-Wundef] warning in PDO ODBC extension
2020-05-20 16:29:53 +02:00
George Peter Banyard
a43f100fda
Fix [-Wundef] warning in PDO OCI extension
2020-05-20 16:29:53 +02:00
George Peter Banyard
c932cc841a
Fix [-Wundef] warning in PDO MySQL extension
2020-05-20 16:29:52 +02:00
George Peter Banyard
db7dc2fa2f
Fix [-Wundef] warning in PDO Firebird extension
2020-05-20 16:29:52 +02:00
George Peter Banyard
1c598cf6a8
Fix [-Wundef] warning in PDO DBLib extension
2020-05-20 16:29:52 +02:00
George Peter Banyard
f0794c7719
Fix [-Wundef] warning in SimpleXML extension
2020-05-20 16:29:52 +02:00
George Peter Banyard
e5a7ab33f6
Fix [-Wundef] warning in SOAP extension
2020-05-20 16:29:51 +02:00
George Peter Banyard
336998f110
Fix [-Wundef] warning in XLS extension
2020-05-20 16:29:51 +02:00
George Peter Banyard
c7055f5916
Fix [-Wundef] warning in XMLReader extension
2020-05-20 16:29:51 +02:00
George Peter Banyard
7fa0d30014
Fix [-Wundef] warning in XML extension
2020-05-20 16:29:51 +02:00
Tyson Andre
3e045d5f2b
Fix grammar in the jit's README.md
...
For GH-5585
2020-05-20 10:01:34 -04:00
Tyson Andre
27b849ec9a
[skip ci] Add a README for Opcache's JIT.
...
Mention information that would be useful for working on new features or bug
fixes for the JIT.
Closes GH-5585
2020-05-20 09:58:24 -04:00
Nikita Popov
25aa125530
Add file cache job on azure
2020-05-20 15:33:20 +02:00
Nikita Popov
0374cf08c7
Add --file-cache-prime/use options to run-tests
...
--file-cache-prime populates the file cache,
--file-cache-use uses the file cache.
And fix a number of tests to run under file cache or disabled
timestamp validation.
2020-05-20 15:29:32 +02:00
Nikita Popov
40b59cee8a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update msan symbolizer path
2020-05-20 15:25:19 +02:00
Christoph M. Becker
ca6dd7e984
Fix --disable-ipv6 support on Windows
...
`HAVE_IPV6` and `HAVE_GAI_STRERROR` are supposed to be undefined now,
if not supported.
2020-05-20 15:13:53 +02:00
Máté Kocsis
86d58e9fff
Generate function entries for ext/zip
...
Closes GH-5601
2020-05-20 14:22:11 +02:00
Christoph M. Becker
a582931f42
Revert "Revert "Merge branch 'PHP-7.4'""
...
This reverts commit 28e650a , which reverted commit 046dcfb , which had
to be reverted due to phpdbg issues. The culprit was that we did not
properly reset `zend_handler_table` to `NULL`, which is required for
SAPIs which may restart the engine after shutdown.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=28e650abf8097a28789a005e5028fee095359583 >
[2] <http://git.php.net/?p=php-src.git;a=commit;h=046dcfb531e242d36a7af2942b9b148290c3c7fe >
2020-05-20 14:11:42 +02:00
George Peter Banyard
466e288b01
Fix [-Wundef] warning in PostgreSQL extension
2020-05-20 14:01:11 +02:00
George Peter Banyard
f677251ceb
Fix [-Wundef] warning in POSIX extension
2020-05-20 14:01:11 +02:00
George Peter Banyard
616bf43978
Fix [-Wundef] warning in PSpell extension
2020-05-20 14:01:11 +02:00
George Peter Banyard
21c0f8a984
Fix [-Wundef] warning in Session extension
2020-05-20 14:01:11 +02:00
George Peter Banyard
f23b3026bc
Fix [-Wundef] warning in SHMOP extension
2020-05-20 14:01:10 +02:00
George Peter Banyard
85104fae37
Fix [-Wundef] warning in ODBC extension
2020-05-20 14:01:10 +02:00
George Peter Banyard
24de4274f3
Fix [-Wundef] warning in PCNTL extension
2020-05-20 14:01:10 +02:00
George Peter Banyard
d50b076fa3
Fix [-Wundef] warning in PCRE extension
2020-05-20 14:01:10 +02:00
George Peter Banyard
1f72dd89a5
Fix [-Wundef] warning in TSRM
2020-05-20 14:01:10 +02:00
Nikita Popov
ec1e8540d8
Slightly deduplicate run-tests code
2020-05-20 11:58:42 +02:00
Nikita Popov
c2068e95b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79603 , by retrying on RTD key collision
2020-05-20 11:24:37 +02:00
Nikita Popov
0a74da385d
Add support for replaying warnings in opcache
...
If opcache.record_warnings is enabled, opcache will record
compilation warnings and replay them when the file is included
again. The primary use case I have in mind for this is automated
testing of the opcache file cache.
This resolves bug #76535 .
2020-05-20 11:20:21 +02:00
Nikita Popov
1b1d313275
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix static property indirections in file cache
Don't require rc=1 for function static variables
2020-05-20 11:13:35 +02:00
Nikita Popov
057875d161
Disable JIT in file cache test
...
File cache and JIT are currently incomatible.
2020-05-20 09:50:12 +02:00
Dmitry Stogov
e35c163e33
Tracing JIT SHM data initilaizarion must be done at MINIT
2020-05-20 02:07:18 +03:00
Dmitry Stogov
d1a92ddc72
typo
2020-05-20 02:07:07 +03:00
Dmitry Stogov
928c796290
Make number of root and side traces configurable
2020-05-20 01:40:01 +03:00
Dmitry Stogov
e18f631abe
Use light version of zend_array_destroy() to free arrays without refcounted elements and string indexes.
2020-05-20 00:12:24 +03:00
Christoph M. Becker
496171a5ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump version
2020-05-19 17:28:39 +02:00
Christoph M. Becker
5211ddce0e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix INI setting member name
2020-05-19 16:01:48 +02:00
Dmitry Stogov
6faa08f41c
Separate common code
2020-05-19 16:59:07 +03:00
Máté Kocsis
ed6cf67879
Fix some final classes in stubs
2020-05-19 14:54:37 +02:00
Máté Kocsis
d1d3a4afd5
Generate method entries for Closure
2020-05-19 14:19:37 +02:00
Nikita Popov
74ef4bd7ed
Fix opcache_get_configuration() test
2020-05-19 14:12:30 +02:00
Dmitry Stogov
8c19e611aa
Make JIT parameters configurable through opcache.jit_... options
2020-05-19 13:35:02 +03:00
Nikita Popov
33b5c026aa
Extract zend_foreach_op_array()
...
Move this functionality from zend_call_graph into zend_optimizer,
because we use this pattern in a number of places.
2020-05-19 11:15:54 +02:00
Dmitry Stogov
d377467d86
Keep ZEND_FUNC_INFO() for all run-time JIT triggers
2020-05-18 19:00:38 +03:00
Nikita Popov
c3bbcff5e6
Fix phpdbg test with JIT
...
With JIT one extra cache slot is allocated, so the extended_value
needs one more character, and the output ends up having one space
less...
2020-05-18 15:25:24 +02:00
Derick Rethans
3707d75f4b
Merge branch 'PHP-7.4'
2020-05-18 13:51:47 +01:00
Dmitry Stogov
5899b1611e
Fixed JIT on load with -O4
2020-05-18 15:29:28 +03:00
Dmitry Stogov
eae6df494d
Wrong condition
2020-05-18 15:04:39 +03:00
Dmitry Stogov
7a07deca0f
Fixed JIT with non-HYBRID VM
2020-05-18 14:56:39 +03:00
Dmitry Stogov
99611573f0
Tracing JIT with -O1 doesn't need to do type inference and abstract stack maintaining
2020-05-18 14:39:49 +03:00
Dmitry Stogov
a463197d7a
func_info should be empty
2020-05-18 14:30:55 +03:00
George Peter Banyard
3302ffb09e
Fix bogus check in TSRM and adjust TSRM_ASSERT macro
...
Closes GH-5562
2020-05-18 12:24:23 +02:00
Dmitry Stogov
0695048e20
JIT refactoring to allow run-time changes of JIT options (triggers, optimization_level, debug flags, etc)
2020-05-18 10:23:06 +03:00
Máté Kocsis
1179686f62
Improve error messages for invalid property access
...
Closes GH-5446
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-05-18 08:27:00 +02:00
Remi Collet
b1fddec717
relax test (TS issue)
2020-05-18 07:53:03 +02:00
George Peter Banyard
7c33644fed
Fix [-Wextra-tokens] warning in MySQLi extension which breaks build
...
Didn't double check and this slipped through with my big search and replace
2020-05-18 01:00:47 +02:00
George Peter Banyard
1330359515
Fix [-Wundef] warning in MySQLnd extension
2020-05-18 00:37:20 +02:00
George Peter Banyard
82afcf4401
Fix [-Wundef] warning in MySQLi extension
2020-05-18 00:37:19 +02:00
George Peter Banyard
5f0128e1e0
Fix [-Wundef] warning in ZIP extension
2020-05-18 00:37:18 +02:00
George Peter Banyard
bc9497695e
Fix [-Wundef] warning in Tidy extension
2020-05-18 00:37:18 +02:00
George Peter Banyard
714c5f0b70
Fix [-Wundef] warning in Sysvmsg extension
2020-05-18 00:37:17 +02:00
George Peter Banyard
2df6482db9
Fix [-Wundef] warning in Sysvsem extension
2020-05-18 00:37:17 +02:00
George Peter Banyard
418bb5ebda
Fix [-Wundef] warning in Sysvshm extension
2020-05-18 00:37:16 +02:00
George Peter Banyard
046ff29958
Fix [-Wundef] warnings in LDAP extension
2020-05-18 00:37:15 +02:00
George Peter Banyard
f717ec608d
Adjust bogus checks in FPM as HAVE_FPM_LQ is always defined
...
Drop checks for FPM status as per review
Closes GH-5530
2020-05-17 22:04:35 +02:00
George Peter Banyard
35e0a91db7
Fix [-Wundef] warnings in libxml extension
2020-05-16 15:31:23 +02:00
George Peter Banyard
68164f40ce
Fix [-Wundef] warning in MBString extension
2020-05-16 15:31:20 +02:00
George Peter Banyard
c19887496e
Fix [-Wundef] warning in IMAP extension
2020-05-16 15:31:18 +02:00
George Peter Banyard
2cf24ff923
Fix [-Wundef] warning in GetText extension
2020-05-16 15:31:17 +02:00
George Peter Banyard
8a18116dba
Fix [-Wundef] warning in FTP extension
2020-05-16 15:31:17 +02:00
George Peter Banyard
fb5114c675
Fix [-Wundef] warning in Filter extension
2020-05-16 15:31:16 +02:00
George Peter Banyard
e37501e6c7
Fix [-Wundef] warning in EXIF extension
2020-05-16 15:31:16 +02:00
George Peter Banyard
62b1d2cb69
Fix [-Wundef] warning in DOM extension
2020-05-16 15:31:15 +02:00
George Peter Banyard
93b51f4e26
Fix [-Wundef] warning in cURL extension
2020-05-16 15:31:13 +02:00
George Peter Banyard
b35addc585
Fix [-Wundef] warning in CType extension
2020-05-16 15:31:13 +02:00
George Peter Banyard
0e016f2843
Fix [-Wundef] warning in BZip2 extension
2020-05-16 15:31:12 +02:00
George Peter Banyard
2bb1cc4ba9
Fix [-Wundef] warning in BCMath extension
2020-05-16 15:31:11 +02:00
George Peter Banyard
b91c2845cf
Drop check for HAVE_NSLDAP
...
This constant is never defined thus useless
2020-05-16 00:40:37 +02:00
George Peter Banyard
197cac65fd
Use ZEND_FCI_INITIALIZED macro
...
Instead of manually checking that the fci.size is different than 0
2020-05-16 00:36:15 +02:00
Nikita Popov
00ef092335
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79600
2020-05-15 11:05:00 +02:00
Nikita Popov
406c95758d
Remove some uses of zend_inline_hash_func
...
There's no need to force-inline the hashing for all of these.
2020-05-15 10:14:22 +02:00
Dmitry Stogov
ba0731cd53
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
fixed typo of bug id (#79599 )
master doesn't been affected since we are not passing errcontext now
Fixed bug #97599 (coredump in set_error_handler)
Fix #79557 : extension_dir = ./ext now use current directory for base
Fix #79596 : MySQL FLOAT truncates to int some locales
[ci skip] Fix NEWS
2020-05-15 10:44:14 +03:00
Xinchen Hui
c91f349717
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fixed typo of bug id (#79599 )
2020-05-15 15:44:02 +08:00
Xinchen Hui
653652b2b6
master doesn't been affected since we are not passing errcontext now
2020-05-15 15:40:53 +08:00
Xinchen Hui
0ece5638a4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #97599 (coredump in set_error_handler)
Conflicts:
Zend/zend.c
2020-05-15 15:40:43 +08:00
Christoph M. Becker
4631b4e813
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79557 : extension_dir = ./ext now use current directory for base
2020-05-15 09:24:07 +02:00
Christoph M. Becker
2393692937
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79596 : MySQL FLOAT truncates to int some locales
2020-05-15 09:13:22 +02:00
Christoph M. Becker
3771d6f8a1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Fix NEWS
2020-05-15 08:59:55 +02:00
Dmitry Stogov
e5e25d6352
Added HALT symbol
2020-05-15 01:06:47 +03:00
Christoph M. Becker
f6ae728f56
Remove unused variable
2020-05-14 17:55:31 +02:00
Máté Kocsis
93640db4d5
Improve error message for deprecated methods
2020-05-14 17:23:31 +02:00
Bob Weinand
4bc1cf2928
Remove generated zend_jit_x86.c upon make distclean
2020-05-14 16:59:54 +02:00
Christoph M. Becker
5a17694304
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check compatibility with proper runtime DLL
2020-05-14 15:59:34 +02:00
Nikita Popov
e696732850
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Canonicalize bison error during ini parsing
2020-05-14 14:16:22 +02:00
Máté Kocsis
68527a7834
Add stubs for some SAPIs
...
For apache2handler, fpm, litespeed, phpdbg, specifically.
Partially implements GH-5295
2020-05-14 13:35:12 +02:00
Dmitry Stogov
161ee110bf
Tracing JIT support for delayed call chain
2020-05-14 14:21:46 +03:00
Máté Kocsis
9198faa67f
Convert resource to object in Sysvmsg
...
Closes GH-5546
2020-05-14 12:56:06 +02:00
Nikita Popov
75bac16788
Avoid duplicating the proc_open cleanup logic
...
Use a slightly ugly "goto unreachable" pattern to share this code,
so we don't have to duplicate cleanup logic for the success and
the failure cases.
2020-05-14 10:35:33 +02:00
Alex Dowad
dc1496e4a3
Further refactoring of proc_open.c
...
This time a number of comments have been added to make it easy for new devs to understand
what is going on. Also adjusted error message to use colons rather than dashes.
2020-05-14 10:25:52 +02:00
Alex Dowad
b983580dd7
Don't leak memory if wrong resource type is passed to proc_open
...
proc_open can accept stream resources in the descriptorspec, like this:
proc_open("command", array(0 => $resource), $pipes);
Previously, if a resource which was *not* of type "stream" was passed, proc_open would
return without freeing dynamically allocated memory. It's fixed now.
2020-05-14 10:25:37 +02:00
Alex Dowad
a84cd96e86
Add PTY support to proc_open (again after 16 long years)
...
Back in 2004, a feature was added to proc_open which allowed it to open a PTY,
connecting specific FDs in the child process to the slave end of the PTY and returning
the master end of the PTY (wrapped as a PHP stream) in the `$pipes` array. However,
this feature was disabled just about a month later. Little information is available
about why this was done, but from talking to the original implementer, it seems there
were portability problems with some rare flavors of Unix.
Re-enable this feature with a simplified implementation which uses openpty(). No
attempt is made to support PTYs if the platform does not have openpty(). The configure
script checks if linking with -lutil is necessary to use openpty(), but if anything
else is required, like including some special header or linking with some other library,
PTY support will be disabled.
The original PTY support for proc_open automatically daemonized the child process
(disassociating it from the TTY session and process group of the parent). However,
I don't think this is a good idea. Just because a user opens a child process in a
PTY, it doesn't mean they want it to continue running even when the parent process
is killed. Of course, if the child process is some kind of server, it will likely
daemonize itself; but we have no reason to preempt that decision.
It turns out that since 2015, there has been one test case for PTY support in
proc_open() in the test suite. This test was added in GitHub PR #1588
(https://github.com/php/php-src/pull/1588 ). That PR mentioned that the PHP
binary in the Debian/Ubuntu repositories is patched to *enable* PTY support. Checking
the Debian PHP repository (https://salsa.debian.org/php-team/php.git ) shows that this
is still true. Debian's patch does not modify the implementation from 2004 in any
way; it just removes the #if 0 line which disables it.
Naturally, the test case is skipped if PTY support is not enabled. This means that ever
since it was added, every test run against the 'vanilla' PHP codebase has skipped it.
Interestingly, the test case which was added in 2015 fails on my Linux Mint PC... both
with this simplified implementation *and* when enabling the original implementation.
Investigation reveals the reason: when the child process using the slave end of the
PTY exits and its FDs are all closed, and all buffered data is read from the master
end of the PTY, any further attempt to read from the master end fails with EIO. The
test case seems to expect that reading from the master end will always return an
empty string if no data is available.
Likely this is because PHP's fread() was updated to report errors from the underlying
system calls only recently.
One way out of this dilemma: IF at least one FD referring to the slave end of the PTY is
kept open *in the parent process*, the failure with EIO will not occur even after the child
process exits. However, that would raise another issue: we would need a way to ensure the FD
will be closed eventually in long-running programs.
Another discovery made while testing this code is that fread() does not always return
all the data written to the slave end of the PTY in a single call, even if the data was
written with a single syscall and it is only a few bytes long.
Specifically, when the child process in the test case writes "foo\n" to the PTY, the parent
sometimes receives "foo" (3 bytes) and sometimes "foo\r\n" (5 bytes). (The "\r" is from the
TTY line discipline converting "\n" to "\r\n".) A second call to fread() does return the
remaining bytes, though sometimes all the data is read in the first call, and by the time
the second call is made, the child process has already exited. It seems that liberal use
of the @ operator is needed when using fread() on pipes.
Thanks to Nikita Popov for suggesting that we should just use openpty() rather than
grantpt(), unlockpt(), etc.
2020-05-14 10:25:37 +02:00
Nikita Popov
ae5ca5459f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix lcov genhtml: ERROR: cannot read [file]
Properly detect CRC32 APIs on aarch64 from configure
2020-05-14 09:39:03 +02:00
Jens de Nies
a4cc9d83a1
Removed pure zpp tests in the imap extension
...
Closes GH-5569.
2020-05-14 09:37:22 +02:00
Christoph M. Becker
69d46c3433
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix brittle shmop test
2020-05-13 23:31:09 +02:00
Nikita Popov
50a9f511cc
Allow null callback to array_filter()
...
With same behavior as not passing it.
2020-05-13 17:24:13 +02:00
Dmitry Stogov
9122638ecd
Set "hybrid_ret_counters" only after links to "function entry" traces.
2020-05-13 17:45:48 +03:00
Remi Collet
30077100a4
Revert "doc for enchant Object move"
...
This reverts commit 2c63324a4e .
2020-05-13 15:56:18 +02:00
Remi Collet
5318971bc5
Revert "convert enchant resources to objects of new classes - EnchantBroker - EnchantDict add OO interface deprecate enchant_broker_free* (use unset instead) deprecate ENCHANT_MYSPELL and ENCHANT_ISPELL constants"
...
This reverts commit 7db4c24a37 .
2020-05-13 15:56:14 +02:00
Remi Collet
ea1bebbd41
Revert "add myself as enchant maintainer"
...
This reverts commit f987219c69 .
2020-05-13 15:56:10 +02:00
Remi Collet
2c63324a4e
doc for enchant Object move
2020-05-13 15:23:07 +02:00
Remi Collet
7db4c24a37
convert enchant resources to objects of new classes - EnchantBroker - EnchantDict add OO interface deprecate enchant_broker_free* (use unset instead) deprecate ENCHANT_MYSPELL and ENCHANT_ISPELL constants
2020-05-13 15:14:50 +02:00
Nikita Popov
87e6f93fd6
Assert on unknown type in zend_get_type_by_const()
2020-05-13 15:03:44 +02:00
Dmitry Stogov
fa919f9277
Fixed JIT with ON_HOT_COUNTERS trigger (opcache.jit=1235)
2020-05-13 16:00:25 +03:00
Nikita Popov
c6a6ca078b
Use zend_zval_type_name() API where possible
...
Rather than zend_get_type_by_const(Z_TYPE_P()).
2020-05-13 14:56:05 +02:00
Nikita Popov
3f51d82bca
Rename zend_zval_get_type() API
...
We have a bunch of APIs for getting type names and it's sometimes
hard to keep them apart ... make it clear that this is the one
you definitely do not want to use.
2020-05-13 14:56:05 +02:00
Máté Kocsis
256b7da356
Convert resource to object in XML-RPC extension
...
Closes GH-5457
2020-05-13 14:49:13 +02:00
Dmitry Stogov
98d8bcc13a
Better trace_buffer packing
2020-05-13 15:45:42 +03:00
Alex Dowad
555489dd83
Honor script time limit when calling shutdown functions
...
A time limit can be set on PHP script execution via `set_time_limit` (or .ini file).
When the time limit is reached, the OS will notify PHP and `timed_out` and `vm_interrupt`
flags are set. While these flags are regularly checked when executing PHP code, once the
end of the script is reached, they are not checked while invoking shutdown functions
(registered via `register_shutdown_function`).
Of course, if the shutdown functions are implemented *in* PHP, then the interrupt flag
will be checked while the VM is running PHP bytecode and the timeout will take effect.
But if the shutdown functions are built-in (implemented in C), it will not.
Since the shutdown functions are invoked through `zend_call_function`, add a check of the
`vm_interrupt` flag there. Then, the script time limit will be respected when *entering*
each shutdown function. The fact still remains that if a shutdown function is built-in and
runs for a long time, script execution will not time out until it finishes and the
interpreter tries to invoke the next one.
Still, the behavior of scripts with execution time limits will be more consistent after
this patch. To make the execution time-out feature work even more precisely, it would
be necessary to scrutinize all the built-in functions and add checks of the `vm_interrupt`
flag in any which can run for a long time. That might not be worth the effort, though.
It should be mentioned that this patch does not solely affect shutdown functions, neither
does it solely allow for interruption of running code due to script execution timeout.
Anything else which causes `vm_interrupt` to be set, such as the PHP interpreter receiving
a signal, will take effect when exiting from an internal function. And not just internal
functions which are called because they were registered to run at shutdown; there are
other cases where a series of internal functions might run in the midst of a script. In
all such cases, it will be possible to interrupt the interpreter now.
Closes GH-5543.
2020-05-13 12:47:12 +02:00
Xinchen Hui
f06f260292
Revert "Fixed crash if jit.trigger is counter based with preload scripts"
...
This reverts commit 3d4e23aa92 .
2020-05-13 18:35:00 +08:00
Xinchen Hui
ded0b34a48
Merge branch 'master' of git.php.net:/php-src
...
* 'master' of git.php.net:/php-src:
Use new Fast ZPP macros for string|int parar types
utime is always available on Windows
2020-05-13 18:23:55 +08:00
Xinchen Hui
3d4e23aa92
Fixed crash if jit.trigger is counter based with preload scripts
2020-05-13 18:22:29 +08:00
George Peter Banyard
1f05966a41
Use new Fast ZPP macros for string|int parar types
...
Closes GH-5512
2020-05-13 12:07:02 +02:00
George Peter Banyard
0e4c7b3264
utime is always available on Windows
...
Therefore drop useless preprocessor if check
Closes GH-5563
2020-05-13 12:05:29 +02:00
Xinchen Hui
f150b020c0
Merge branch 'master' of git.php.net:/php-src
...
* 'master' of git.php.net:/php-src:
skip when mbstring missing (no warning)
2020-05-13 18:01:16 +08:00
Xinchen Hui
91b5571fcc
Fixed #79582 (Crash seen when opcache.jit=1235 and opcache.jit_debug=2)
2020-05-13 18:00:16 +08:00
Remi Collet
ebdcdf39ed
skip when mbstring missing (no warning)
2020-05-13 10:56:10 +02:00
Gerard Roche
ecc0a87ff2
run-tests: extract usage message
...
Put the usage message near the top of the script,
into a separate function.
Closes GH-5558.
2020-05-13 09:54:55 +02:00
Gerard Roche
10edee7f03
run-tests: cs fixes (cleanup)
...
I used php-cs-fixer to do the cs fixes. The configuration I used is
posted below. The reason I disabled some of the rules is because they
create too much noise and would make it difficult to review. But please
feel free to close this PR and run the php-cs-fixer yourself.
<?php
$config = PhpCsFixer\Config::create();
$config->setRiskyAllowed(false);
$config->setRules([
'@PSR2' => true,
'@Symfony' => true,
'array_syntax' => false,
'binary_operator_spaces' => false,
'blank_line_before_statement' => false,
'concat_space' => false,
'increment_style' => false,
'phpdoc_align' => false,
'single_quote' => false,
'trailing_comma_in_multiline_array' => false,
'unary_operator_spaces' => false,
'yoda_style' => false,
]);
$finder = PhpCsFixer\Finder::create();
$finder->in(getcwd());
$finder->exclude('Zend');
$finder->exclude('build');
$finder->exclude('ext');
$finder->exclude('pear');
$finder->exclude('sapi');
$finder->exclude('scripts');
$finder->exclude('win32');
$config->setFinder($finder);
return $config;
Closes GH-5557.
2020-05-13 09:52:44 +02:00
Dmitry Stogov
7d66e4f323
Replace zend_jit_trace_info.loop_kind by zend_jit_trace_info.flags
2020-05-13 00:56:04 +03:00
Dmitry Stogov
25b7df4283
Fixed invalid index
2020-05-12 23:45:34 +03:00
Dmitry Stogov
2224f63bb5
Prevent usage of uninitialized class entry
2020-05-12 23:34:07 +03:00
George Peter Banyard
c0997130ec
Fix [-Wundef] warning in PHPDBG SAPI
2020-05-12 22:02:51 +02:00
George Peter Banyard
56698afb6d
Fix [-Wundef] warning in CLI SAPI
2020-05-12 22:02:12 +02:00
George Peter Banyard
f87743de9f
Fix [-Wundef] warning in FPM SAPI
2020-05-12 22:02:03 +02:00
George Peter Banyard
25acc4a6b4
Fix [-Wundef] warning in Zend folder
2020-05-12 22:01:51 +02:00
George Peter Banyard
8e66d22f7e
Fix [-Wundef] warning in streams implementation
2020-05-12 22:01:20 +02:00
George Peter Banyard
1df3f97c21
Fix [-Wundef] warning in main folder
2020-05-12 22:01:00 +02:00
Christoph M. Becker
3689807998
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79588 : Boolean opcache settings ignore on/off values
2020-05-12 19:50:16 +02:00
Alex Dowad
f152fece02
Test setting SplDoublyLinkedList iterator mode to IT_MODE_LIFO
2020-05-12 17:24:35 +02:00
Alex Dowad
d4d0852c23
SplDoublyLinkedList uses iteration flags in iterator struct
...
The 'flags' field in spl_dllist_it was formerly unused. This means that if one started to
iterate over an SplDoublyLinkedList using 'foreach', and then *changed* the iteration mode
halfway, the 'foreach' loop would start iterating in the opposite direction. Probably this
was not what was intended.
Therefore, use the 'flags' field in spl_dllist_it for iteration via 'foreach'. For explicit
iteration using methods like '::next()' and '::current()', continue to use the flags in
the SplDoublyLinkedList object itself.
2020-05-12 17:22:31 +02:00
Alex Dowad
9999e7faa3
Remove useless prototype for spl_dllist_get_iterator
2020-05-12 17:21:21 +02:00
Nikita Popov
f83a23e59d
Display errors in shutdown function timeout test
2020-05-12 17:14:16 +02:00
Alex Dowad
f0960879e4
zend_timeout is not a signal handler function
...
The 'int dummy' parameter to this function makes it appear that it was intended as a
signal handler, but it is not being used as such. So remove the redundant parameter.
2020-05-12 17:13:46 +02:00
Nikita Popov
53f5cfd99e
Drop multi_convert_* APIs
...
These are no longer used internally, and I'd rather they weren't
used externally either.
2020-05-12 17:10:06 +02:00
Rod Elias
682e2f6c20
Trim trailing whitespaces and fix code style
...
Closes GH-5554.
2020-05-12 17:00:11 +02:00
Gerard Roche
16f23cd159
run-tests: remove use of FILE_BINARY constant
...
The FILE_BINARY (and FILE_TEXT) constants are not really valid or useful
constants. It looks like they were added in 5.2.7 and have "no effect,
and are only available for forward compatibility."
See: https://www.php.net/manual/en/filesystem.constants.php
The default value of the file_put_contents() flags parameter is 0 and
FILE_BINARY is set to 0, so removing it doesn't change functionality.
P.S. Maybe those constants should be deprecated or removed in 8.0.
Closes GH-5556.
2020-05-12 16:59:25 +02:00
Nikita Popov
f07fbfb8a9
Remove zend_qsort
...
This has been superseded by zend_sort and is no longer used.
2020-05-12 16:57:53 +02:00
Christoph M. Becker
125682f13a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test on big-endian architectures
2020-05-12 13:33:06 +02:00
Dmitry Stogov
650ab370c7
Avoid useless manual instruction encoding
2020-05-12 14:24:13 +03:00
Dmitry Stogov
60090adc6a
Move EG(vm_interrupt) checks at the end of the trace loops
2020-05-12 13:35:38 +03:00
Christoph M. Becker
9dcf494e36
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79489 : .user.ini does not inherit
2020-05-12 11:49:04 +02:00
Christoph M. Becker
cdd0a90992
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
2020-05-12 11:19:10 +02:00
Remi Collet
107ef83dd6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version to 7.2.32-dev
Update NEWS
2020-05-12 09:19:51 +02:00
Stanislav Malyshev
c317c420b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78876 : Long variables cause OOM and temp files are not cleaned
Fix #78875 : Long filenames cause OOM and temp files are not cleaned
Update NEWS for 7.2.31
Update CREDITS for PHP 7.2.30
Update NEWS for PHP 7.2.30
2020-05-11 14:21:25 -07:00
George Peter Banyard
7dd332f110
Refactor mb_substitute_character()
...
Using the new Fast ZPP API for string|int|null
This also fixes Bug #79448 which was too disruptive to fix in PHP 7.x
2020-05-11 17:30:01 +02:00
Nikita Popov
28af364d2a
Deprecate old ReflectionParameter type declaration APIs
...
This deprecates:
ReflectionParameter::isArray()
ReflectionParameter::isCallable()
ReflectionParameter::getClass()
These APIs have been superseded by ReflectionParameter::getType()
since PHP 7.0. Types introduced since that time are not available
through the old APIs, and their behavior is getting increasingly
confusing. This is how they interact with PHP 8 union types:
* isArray() will return true if the type is array or ?array,
but not any other union type
* Same for isCallable().
* getClass() will return a class for T|int etc, as long as the
union only contains a single type. T1|T2 will return null.
This behavior is not particularly reasonable or useful, and will
get more confusing as new type system extensions are added.
Closes GH-5209.
2020-05-11 17:01:40 +02:00
George Peter Banyard
4865592525
Remove old ARG_COUNT() macro
...
Use ZEND_NUM_ARGS() instead.
Clsoes GH-5551
2020-05-11 16:52:04 +02:00
Christoph M. Becker
43eca196e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79571 : FFI: var_dumping unions may segfault
2020-05-11 16:25:30 +02:00
Christoph M. Becker
6549891602
Update AppVeyor for enchant-2
...
Cf. <https://github.com/winlibs/enchant/commit/df5a4586e09d67bf2c208c7dfd0517657d06910e >
2020-05-11 16:18:03 +02:00
Nikita Popov
5d93eab620
Don't reset SIGG(running) when calling zend_on_timeout
...
This is only an internal callback nowadays and does not actually
run any user code. It must be async signal safe.
2020-05-11 15:05:01 +02:00
Nikita Popov
091d53c131
Use standard key behavior in array_column()
...
array_column() reimplements array key handling in a way that does
not match standard array key behavior in PHP. Avoid this by making
use of the standard API.
Of course, there is a minor backwards compatibilty break here,
e.g. people could be relying on objects getting cast to string
instead of throwing.
Closes GH-5487.
2020-05-11 14:16:24 +02:00
Nikita Popov
b111674383
Only use ifunc resolvers if __builtin_cpu_supports+init available
...
If either of them is not available, the use of zend_cpu_supports()
inside ifunc resolvers may not be safe.
2020-05-11 12:43:38 +02:00
Nikita Popov
5dc9418a97
Reapply "Remove configure checks for supported instruction sets"
...
I reverted this previously for 7.4 because of bug #78769 . Relanding
it now for master, because I still believe that this change is
right, and if it causes complications, those indicate a bug elsewhere.
---
These were checking whether the instruction set is supported by
the host CPU, however they were only used to condition on whether
this instruction set is targeted at all. It would still use dynamic
dispatch (e.g. based on ifunc resolvers) to select the actual
implementation. Whether the target is guaranteed to support the
instruction set without dispatch is determined based on pre-defined
macros like __SSE2__.
This removes the configure-time builtin cpu checks to remove
confusion. Additionally this allows targeting an architecture that
is newer than the host architecture.
2020-05-11 12:22:28 +02:00
Nikita Popov
a0abc26ef7
Add get_resource_id() function
...
Behavior is same as for (int) $resource, just under a clearer
name. Also type-safe, in that the parameter actually needs to
be a resource.
Closes GH-5427.
2020-05-11 12:04:16 +02:00
Xinchen Hui
d5d99ce8d1
Merge branch 'sse2_urlencode' of https://github.com/laruence/php-src
...
* 'sse2_urlencode' of https://github.com/laruence/php-src :
drop use of extract_epi16
Use SSE2 instructions do url_encode
2020-05-11 18:02:48 +08:00
Christoph M. Becker
74f3bfc6eb
Use supported printf format on Win64
...
Commit aaa1f90[1] dropped support for the custom `I` specifier, so we
must no longer use it for `ZEND_ADDR_FMT`; otherwise there are
segfaults when printing memory leaks, and maybe elsewhere.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=aaa1f90e3f90c24098fa55a7b868fdca0b89ee25 >
2020-05-11 10:49:44 +02:00
Nikita Popov
89b4a46d56
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix default sendmail path when not found during build
2020-05-11 10:46:07 +02:00
Nikita Popov
32b3235287
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't check directory atime in lstat_stat_variation10.phpt test
2020-05-11 10:23:06 +02:00
Nikita Popov
1809714603
Fix use-after-free in sysvsem
2020-05-11 10:21:31 +02:00
Rod Elias
7c2b143778
Add pkg-config to the build list
...
Closes GH-5550.
[ci skip]
2020-05-11 10:19:18 +02:00
Nikita Popov
b452d5923d
Fix bug68996.phpt test
...
The function name gets printed here now, with illegal chars
substituted in the arg. This slipped through previously, because
the test only runs under USE_ZEND_ALLOC=0. We remove that check
as well, because the test behaves the same regardless of which
allocator is used, even if the original bug only reproduces under
USE_ZEND_ALLOC=0.
2020-05-09 11:53:39 +02:00
Xinchen Hui
e97a67963c
drop use of extract_epi16
2020-05-09 12:28:49 +08:00
Adam Baratz
a07e75aa65
Skip test if bigint type is unsupported by active TDS version
2020-05-08 15:13:40 -04:00
Adam Baratz
bba9bc6863
Set non-default error mode to maintain expected behavior
2020-05-08 14:45:37 -04:00
Adam Baratz
e295266f8f
Update FreeTDS version detection related to bug #72969
2020-05-08 14:34:00 -04:00
Máté Kocsis and George Peter Banyard
4a816584a4
Make float to string casts locale-independent
...
From now on, float to string casting will always behave locale-independently.
RFC: https://wiki.php.net/rfc/locale_independent_float_to_string
Closes GH-5224
Co-authored-by: George Peter Banyard <girgias@php.net >
2020-05-08 10:52:23 +02:00
Xinchen Hui
af112f6572
Use SSE2 instructions do url_encode
2020-05-08 16:32:43 +08:00
Dmitry Stogov
6e2cd97b43
cleanup
2020-05-08 10:07:55 +03:00
Dmitry Stogov
c34d29db33
Change parameter meaning.
2020-05-08 01:24:02 +03:00
Dmitry Stogov
dcedc31979
Use proper "cost"
2020-05-08 00:56:03 +03:00
Dmitry Stogov
ef45d4d698
Avoid loop throgh side_exit from the first trace instruction.
2020-05-08 00:48:17 +03:00
Dmitry Stogov
5d9063a546
Fixed tracing JIT for CALL VM without global register variables
2020-05-07 23:41:48 +03:00
Nikita Popov
2414b3d775
Ensure ctype_string is NULL for C locale
...
We already document that this is the case, but currently it's only
true if setlocale() has not been called. Make sure ctype_string is
always NULL, even with an explicit "C" locale call, so we can
more efficiently check whether we are in the "C" locale.
Closes GH-5542.
2020-05-07 21:26:13 +02:00
Nikita Popov
d38f819647
Fix test file encoding
...
The mb_http_input_pass.phpt was intended to use the same encoding
as mb_http_input.phpt, not UTF-8.
2020-05-07 21:18:49 +02:00
Dmitry Stogov
9af2f0fa78
More accurate tracing JIT for RETURN with unknown return address
2020-05-07 22:01:59 +03:00
Nikita Popov
3f76947303
Rename locale_string to ctype_string
...
To make it more obvious that this only refers to the LC_CTYPE
locale.
2020-05-07 18:45:03 +02:00
Nikita Popov
5ef65dd114
Remove redundant htmlentities() tests
...
Test 04 and 15 are the same as 02 and 03, just for different
encodings. They don't add value, but their execution depends
on available locales, so they're easy to miss...
2020-05-07 18:38:25 +02:00
Xinchen Hui
5d8cf36022
Folder marks
2020-05-07 23:03:25 +08:00
Nikita Popov
65e2a05a17
Really fix test case
2020-05-07 16:51:05 +02:00
Christoph M. Becker
fce0cd4a88
Fix test case
2020-05-07 16:47:38 +02:00
Tyson Andre
9f8f84adbc
Evaluate str_starts_with and str_ends_with on constants
...
When both arguments are strings,
this is guaranteed not to emit notices.
Closes GH-5539
2020-05-07 16:24:03 +02:00
Nikita Popov
4a512625a0
Don't respect mbstring.internal_encoding in htmlentities()
...
htmlentities() has nothing to do with mbstring and should not
depend on its ini settings. It should only respect the global
default_charset and internal_encoding settings. This is exactly
why they were introduced...
2020-05-07 15:54:54 +02:00
Nikita Popov
c50cfc4d3d
Add quiet parameter to internal HTML entities API
...
In some places, we need to make sure that no warnings are thrown
due to unknown encoding. The error reporting code tried to avoid
this by determining a "safe charset", but this introduces subtle
discrepancies in which charset is picked (normally
internal_encoding takes precedence). Avoid this by suppressing
the warning in the first place.
While here, use the fallback logic to print error messages with
substitution characters more consistently, to avoid skipping
parts of the error message entirely.
2020-05-07 15:46:08 +02:00
Nikita Popov
d6ac8b236f
Clean up determine_charset() implementation
...
And drop code related to locale-based charset guessing,
which is no longer in use.
2020-05-07 14:58:24 +02:00
Nikita Popov
481b7421f3
Throw warning if invalid internal_encoding ini is specified
2020-05-07 14:44:13 +02:00
Dmitry Stogov
98acdbff18
Prevent taking side traces for exceptional cases. Always exit to VM interpreter.
2020-05-07 12:49:01 +03:00
Nikita Popov
217f6013b3
Remove no_language from mbfl_string
...
This is not actually used for anything and just causes confusion.
2020-05-07 11:36:57 +02:00
Nikita Popov
226d9dd30a
Only allow "pass" as input/output encoding
...
"pass" is not a real encoding, it just means "don't perform any
conversion". Using it as an internal encoding or passing it to
any of the mbstring() function will not work (and on master commonly
assert).
2020-05-07 11:19:14 +02:00
Máté Kocsis
b67f699dcd
Rename the recently introduced Sysvsem class to SysvSemaphore
2020-05-07 10:21:58 +02:00
Nikita Popov
5bfa9598f4
Return false from failed mb_convert_variables()
...
If we fail to detect the encoding return false, just like
mb_convert_encoding() does, and the implementation here clearly
intended. Previously the "pass" pseudo-incoding was returned.
2020-05-07 10:16:46 +02:00
Christoph M. Becker
1a95ed0b33
Enable test on Windows
2020-05-07 09:20:15 +02:00
Xinchen Hui
dd9d0a96d1
Fixed false alarm about tmp_name maybe unitialized
2020-05-07 14:16:02 +08:00
Dmitry Stogov
7977cd1c19
Fixed comment
2020-05-07 09:05:33 +03:00
Nikita Popov
71f48260af
Fix assertion failure when failing to detect encoding
...
Looks like prior to 7.3 this just passed the original string
through. Since 7.3 it returns false. Let's stick with that
behavior.
2020-05-06 22:56:01 +02:00
Dmitry Stogov
9d869f24d4
Avoid Program Counter guard in side trace started from Fake Init Fcall guard.
2020-05-06 23:16:45 +03:00
George Peter Banyard
038502b92a
Use int|string Fast ZPP macro in Reflection
...
Moreover, throw a more appropriate ValueError in case the integer
position provided is less than 0.
Closes GH-5513
2020-05-06 21:51:59 +02:00
Dmitry Stogov
b63eff17ff
Initial support for IS_INDIRECT. Avoid type guards for IS_INDIRECT.
2020-05-06 22:27:38 +03:00
Máté Kocsis
bce8c8fb27
Promote warning to exception in ZipArchive::extractTo()
...
Closes GH-5516
2020-05-06 19:22:52 +02:00
Máté Kocsis
650da66e2d
Fix UNKNOWN default values in ext/spl
2020-05-06 19:15:39 +02:00
Máté Kocsis
35a10fb8e8
Fix UNKNOWN default values in ext/sqlite3
2020-05-06 19:15:39 +02:00
Máté Kocsis
60412c37ae
Fix UNKNOWN default values in ext/xml
2020-05-06 19:15:39 +02:00
Máté Kocsis
89d1707587
Fix UNKNOWN default values in ext/xsl
2020-05-06 19:15:38 +02:00
Máté Kocsis
daa5b26456
Fix UNKNOWN default values in ext/zip
2020-05-06 19:15:34 +02:00
Máté Kocsis
78dda268eb
Fix ZPP order in ext/zip
2020-05-06 19:14:36 +02:00
George Peter Banyard
389c2b4303
Drop BF_ASM constant as it's always 0
...
Closes GH-5531
2020-05-06 17:55:32 +02:00
Christoph M. Becker
822c489961
Remove out-dated comments
2020-05-06 17:25:49 +02:00
Máté Kocsis
eab54d2382
Convert resource to object in ext/sysvsem
...
Closes GH-5508
2020-05-06 15:42:41 +02:00
Dmitry Stogov
776b1aefc8
Careful cleanup
2020-05-06 16:26:36 +03:00
Remi Collet
f987219c69
add myself as enchant maintainer
2020-05-06 13:18:35 +02:00
Christoph M. Becker
c1ad9163b8
Fix enchant stub
2020-05-06 13:16:50 +02:00
Remi Collet
5f5dd994d4
enchant: bump license version
2020-05-06 13:13:19 +02:00
Nikita Popov
718e55c3e0
Add zend_array_release() function
...
To complement zend_string_release() and zend_object_release().
2020-05-06 11:27:20 +02:00
Nikita Popov
e41f764b5c
Revert "Move declaration at top of the block"
...
This reverts commit b56f203850 .
We use C99 now, this is not needed anymore.
2020-05-06 09:42:58 +02:00
Xinchen Hui
b56f203850
Move declaration at top of the block
2020-05-06 14:01:56 +08:00
George Peter Banyard
ba45addb38
Use correct variable
...
This seems to stem from a copy paste, however there is no object variable in this function
2020-05-05 22:12:31 +02:00
Máté Kocsis
3ebce8e9fc
Fix UNKNOWN default values in various extensions
...
Closes GH-5514
2020-05-05 19:08:20 +02:00
Nikita Popov
5bc1e224db
Make numeric operations on resources, arrays and objects type errors
...
RFC: https://wiki.php.net/rfc/arithmetic_operator_type_checks
Closes GH-5331.
2020-05-05 16:11:13 +02:00
William Hudgins
31fb6a08b3
Add str_starts_with() and str_ends_with()
...
RFC: https://wiki.php.net/rfc/add_str_starts_with_and_ends_with_functions
Closes GH-5300.
2020-05-05 16:03:47 +02:00
Christoph M. Becker
e749db4047
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79566 : Private SHM is not private on Windows
2020-05-05 11:41:31 +02:00
Nikita Popov
901417f0ae
Fix mbfl default allocators
...
Forgot to remove the persistent allocators from here.
2020-05-04 23:41:39 +02:00
Nikita Popov
a0cae937c5
Spec mbfl allocators as infallible
...
And remove all NULL checks.
2020-05-04 23:19:07 +02:00
Nikita Popov
7d4ff8443e
Remove persistent allocators from libmbfl
...
These functions are not used, and I don't think we have any plans
to ever use them.
2020-05-04 23:19:07 +02:00
Christoph M. Becker
6086343a91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79561 : dns_get_record() fails with DNS_ALL
2020-05-04 23:02:00 +02:00
AllenJB
50752401a7
Change the default PDO error mode to exceptions
...
According to <https://www.php.net/manual/en/pdo.error-handling.php >.
2020-05-04 22:51:47 +02:00
Nikita Popov
8ffbd4653e
Perform isupper check using sse2 as well
...
Rather than just vectorizing the lowering, also vectorize the
check for uppercase characters, using the same method.
2020-05-04 19:19:54 +02:00
Nikita Popov
4c24545aab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79548
2020-05-04 16:30:34 +02:00
Nikita Popov
2dc4481fa9
Extract one more function from proc_open() implementation
2020-05-04 15:24:23 +02:00
Alex Dowad
51b0494e2f
Clean up proc_open() implementation
...
Closes GH-5507.
2020-05-04 15:04:58 +02:00
Nikita Popov
66d57bf8d6
Remove unused is_persistent flag
...
I dropped the assignment to it before, but did not drop the
struct member.
2020-05-04 14:59:35 +02:00
Nikita Popov
f55b413d60
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79535
2020-05-04 14:52:42 +02:00
Nikita Popov
7561f91796
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix i386 build on Azure
2020-05-04 14:35:33 +02:00
George Peter Banyard
8d346f7679
Use ZPP int|string and add ValueError for Windows codepages
...
Closes GH-5517
2020-05-04 12:44:54 +02:00
Christoph M. Becker
2787d0f8dd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add basic sapi_windows_cp_conv() test
2020-05-04 11:52:01 +02:00
Christoph M. Becker
54cf9a26c1
Use libenchant2 if available on Windows
...
This is basically the same as commit 3427545[1], but for Windows.
[1] <http://git.php.net/?p=php-src.git;a=commitdiff;h=342754575237da912874f781a24eefe76434ce5a >
2020-05-04 11:27:00 +02:00
Remi Collet
3427545752
Use libenchant-2 when available
2020-05-04 08:27:31 +02:00
Christoph M. Becker
69888c3ff1
Fix #79467 : data:// wrappers are writable
...
Despite the docs claiming that data: wrappers would not be writable[1],
they are implemented as writing to a memory stream. That does not seem
to be particularly sensible, so we disallow writing altogether.
[1] <https://www.php.net/manual/en/wrappers.data.php#refsect1-wrappers.data-options >
2020-05-03 12:19:37 +02:00
George Peter Banyard
34f727e637
Use ZPP check for string|int|null arguments in array_column()
2020-05-02 19:50:51 +02:00
George Peter Banyard
7b74fc7a7b
Add Fast ZPP string|int type check
2020-05-02 19:50:51 +02:00
Christoph M. Becker
5a628402a0
Don't raise bogus warning if writing completely failed
2020-05-02 16:32:29 +02:00
Nikita Popov
ba54a46df4
Remove is_persistent flag from proc_open implementation
...
We don't support persistent proc_open handles and have no plan
to suppor them. The mixture of persistent and non-persistent
allocations functions in this code is somewhat confusing to read.
2020-05-02 15:33:29 +02:00
Máté Kocsis
ffcc8135e2
Convert UNKNOWN default values to null in ext/date
...
Closes GH-5509
2020-05-02 11:05:37 +02:00
Máté Kocsis
089d8cb03c
Convert UNKNOWN default values to null in ext/calendar
2020-05-02 11:05:27 +02:00
Máté Kocsis
8a41c9e025
Convert UNKNOWN default values to null in ext/bcmath
2020-05-02 11:05:19 +02:00
Tyson Andre
d63eca285a
Fix miscellaneous typos in code comments/var names
...
Closes GH-5501
2020-05-01 15:49:05 +02:00
Máté Kocsis
31a626cf7e
Remove the deprecated is_real() function
...
Closes GH-5506
2020-05-01 15:33:58 +02:00
Christoph M. Becker
1d20443679
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79528 : Different object of the same xml between 7.4.5 and 7.4.4
2020-05-01 12:42:09 +02:00
Alex Dowad
7b32d176d2
Avoid spurious failures of MySQL INSERT packet overflow test
...
This test creates a MySQL table called 'test'. In several cases, I have seen a spurious
test failure (in CI) with an error message saying: "table 'test' already exists".
It may be that another test had used a table with the same name and not cleaned it out
correctly. Or maybe we have multiple tests running in parallel in some CI environments,
or the same test DB being used for multiple runs of the test suite.
In any case, change the table name so it is exclusive to this test case only. Also, if
the test table exists at the beginning of the test, drop it.
Closes GH-5479
2020-05-01 12:25:42 +02:00
Alex Dowad
86ed93c230
Try to make regression test for Bug #69900 consistent
...
It has been observed that in rare cases, this regression test has spurious failures in CI.
Try increasing the threshold for failure a bit and see if this makes it pass consistently.
2020-05-01 12:25:30 +02:00
Tyson Andre
54febdbc7d
Fix other typos in param name/code comments
...
Closes GH-5502
2020-05-01 12:23:16 +02:00
Tyson Andre
1dbf923866
[skip ci] Fix a typo in UPGRADING
...
Confirmed that php_zip.c checks for `"enc_password"`
Closes GH-5503
2020-05-01 12:22:24 +02:00
Dmitry Stogov
968c31a43c
Better handling of IS_UNDEF variables
2020-04-30 17:07:35 +03:00
Dmitry Stogov
3c04ce43ed
Replace ZEND_ASSERT() by conditional compilation abort.
...
Prevent endless loop through ESCAPE code.
2020-04-30 15:32:01 +03:00
Xinchen Hui
f5fe4c3c38
Use ascii lowercase if locale is default C
2020-04-30 18:43:09 +08:00
Nikita Popov
c4ad8beaa8
Do not inherit LC_CTYPE locale from environment
...
Treatment of locales in PHP is currently inconsistent: The LC_ALL
locale is set to "C", as is standard behavior on program startup.
The LC_CTYPE locale is set to "", which will inherit it from the
environment. However, the inherited LC_CTYPE locale will only be
used in some cases, while in other cases it is necessary to perform
an explicit setlocale() call in PHP first. This is the case for
the locale-sensitive handling in the PCRE extension.
Make things consistent by *never* inheriting any locales from the
environment. LC_ALL, including LC_CTYPE will be "C" on startup.
A locale can be set or inherited through an explicit setlocale()
call, at which point the behavior will be fully consistent and
predictable.
Closes GH-5488.
2020-04-30 10:22:51 +02:00
Nikita Popov
707cb18276
Revert "Insert one more debug output"
...
This reverts commit 45cb42166d .
2020-04-30 09:55:25 +02:00
Nikita Popov
53eee290b6
Completely remove disabled functions from function table
...
Currently, disabling a function only replaces the internal
function handler with one that throws a warning, and a few
places in the engine special-case such functions, such as
function_exists. This leaves us with a Schrödinger's function,
which both does not exist (function_exists returns false) and
does exist (you cannot define a function with the same name).
In particular, this prevents the implementation of robust
polyfills, as reported in https://bugs.php.net/bug.php?id=79382 :
if (!function_exists('getallheaders')) {
function getallheaders(...) { ... }
}
If getallheaders() is a disabled function, this code will break.
This patch changes disable_functions to remove the functions from
the function table completely. For all intents and purposes, it
will look like the function does not exist.
This also renders two bits of PHP functionality obsolete and thus
deprecated:
* ReflectionFunction::isDisabled(), as it will no longer be
possible to construct the ReflectionFunction of a disabled
function in the first place.
* get_defined_functions() with $exclude_disabled=false, as
get_defined_functions() now never returns disabled functions.
Fixed bug #79382 .
Closes GH-5473.
2020-04-30 09:53:57 +02:00
Christoph M. Becker
8cb237345a
Revert "Show eventual output of clean sections"
...
This reverts commit 5eb4ab07f2 .
The temporary hack has served its purpose.
2020-04-30 09:51:10 +02:00
Remi Collet
1b98151734
doc enchant changes
2020-04-30 09:40:46 +02:00
Remi Collet
66d42e9884
remove deprecated call and deprecate function to be removed in libenchant v2
...
add LIBENCHANT_VERSION constant
2020-04-30 09:32:00 +02:00
Alex Dowad
8ddaf13ed3
Code tweaks: Remove unneeded semicolons
2020-04-29 23:17:40 +02:00
Nikita Popov
90705d44e3
Treat invalid characters in basename() consistently
...
Always simply ignore (pass through) them. Previously the behavior
depended on where the invalid character occurred, as it messed
up the state management.
2020-04-29 18:43:09 +02:00
Nikita Popov
d50a12629d
Clean up naming in basename() implementation
2020-04-29 18:43:09 +02:00
Dmitry Stogov
65934d31d1
Improved tracing JIT for nested calls
2020-04-29 18:24:18 +03:00
Nikita Popov
0e0c608ce0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce test parallelism on ARM64 CI
2020-04-29 15:16:36 +02:00
Remi Collet
c3d6a0ac02
manage ZEND_DEP_FALIAS in gen_stub
2020-04-29 14:37:06 +02:00
Christoph M. Becker
daaaf2b4ff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Pass worker ID to clean scripts
2020-04-29 13:33:32 +02:00
Xinchen Hui
acee66ae8c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79536 (zend_clear_exception prevent exception's destructor to be called).
2020-04-29 18:59:01 +08:00
Dmitry Stogov
faa57abe71
white space fixes
2020-04-29 13:29:01 +03:00
Nikita Popov
17d763ff47
JIT: Save opline before calling zend_timeout
...
tests/045.phpt started segfaulting, because the opline is not set
when zend_timeout is invoked.
2020-04-29 10:58:39 +02:00
Christoph M. Becker
38ecfe0245
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79532 : sizeof off_t can be wrong
2020-04-29 10:43:35 +02:00
Nikita Popov
533669f7c4
Remove redundant addref+dtor
2020-04-29 10:27:35 +02:00
Nikita Popov
dad5110860
Remove dead code
...
As pointed out by Girgias, index is always non-NULL here.
2020-04-29 10:22:11 +02:00
Nikita Popov
ef72b8f4ac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make 045.phpt busy wait
2020-04-29 10:14:35 +02:00
Nikita Popov
8e411fe54e
Revert "Merge branch 'sse2_strtolower' of https://github.com/laruence/php-src "
...
This reverts commit 5a6373f904 , reversing
changes made to 45cb42166d .
This breaks strtolower-win32.phpt.
2020-04-29 09:49:01 +02:00
Christoph M. Becker
0b04b9347f
Enclose contents of CLEAN sections in PHP tags
...
We also place the CLEAN sections before EXPECT(F), and remove
extraneous clean-ups.
2020-04-29 09:07:53 +02:00
Xinchen Hui
5a6373f904
Merge branch 'sse2_strtolower' of https://github.com/laruence/php-src
...
* 'sse2_strtolower' of https://github.com/laruence/php-src :
Use ascii lowercase if locale is default C
2020-04-29 12:26:06 +08:00
Nikita Popov
45cb42166d
Insert one more debug output
2020-04-28 21:06:32 +02:00
Gabriel Caruso
34c460f329
Check __set_state structure
...
Fix Bug #79521 .
Closes GH-5462.
2020-04-28 17:02:03 +02:00
Nikita Popov
f545ee2c6c
Allow optional trailing comma in parameter list
...
RFC: https://wiki.php.net/rfc/trailing_comma_in_parameter_list
Closes GH-5306.
2020-04-28 16:11:08 +02:00
Christoph M. Becker
5eb4ab07f2
Show eventual output of clean sections
...
This is a hack to investigate why mysqli_insert_packet_overflow.phpt
intermittently fails on AppVeyor, and will be reverted in due time.
See <https://github.com/php/php-src/pull/5447#issuecomment-620508790 >.
2020-04-28 16:08:17 +02:00
Nikita Popov
88a701aa02
Less conservative fix
...
I think it's reasonable to assume that the only possible types
are those that are declared, and null, because null is what
return_value is initialized to.
2020-04-28 15:55:02 +02:00
Nikita Popov
0da38cda6e
Fix JIT segfaults in FFI tests
...
Conservative fix that just disables this optimization.
2020-04-28 15:43:52 +02:00
Nikita Popov
dc1574e0a0
Fix ifunc resolver return type warning
2020-04-28 15:25:35 +02:00
Nikita Popov
bbda71b63d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix #79065 : DOM classes do not expose properties to Reflection"
2020-04-28 15:10:23 +02:00
Nikita Popov
7d1c806491
Clarify that FFI::cdef() does not return NULL
2020-04-28 14:46:04 +02:00
Dmitry Stogov
2baaec108a
Merge branch 'libtool-fix'
...
* libtool-fix:
Fix libtool to provide a simple way to generate only "shared" object files or libraries.
2020-04-28 13:06:47 +03:00
Dmitry Stogov
790a08c885
Improve JIT code for FCALL with "fake" INIT and avoid fcall_guard if possible.
2020-04-28 13:05:56 +03:00
Christoph M. Becker
d6f3a2ae87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump version
2020-04-28 09:14:45 +02:00
Xinchen Hui
d906eb23f6
Fixed bug #79526 (__sleep error message doesn't include the name of the class)
2020-04-28 14:17:21 +08:00
Xinchen Hui
acb1fa5240
Merge branch 'filesize/value-errors' of https://github.com/carusogabriel/php-src
...
* 'filesize/value-errors' of https://github.com/carusogabriel/php-src :
Reduce code duplication using for loop
2020-04-28 13:55:44 +08:00
Xinchen Hui
aaedcb116c
Merge branch 'tests/use-simpler-expect-section' of https://github.com/carusogabriel/php-src
...
* 'tests/use-simpler-expect-section' of https://github.com/carusogabriel/php-src :
Use EXPECT instead of EXPECTF when possible
EXPECTF logic in run tests is considerable, so lets avoid it
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch tests/use-simpler-expect-section
# Your branch is behind 'fork/tests/use-simpler-expect-section' by 1 commit, and can be fast-forwarded.
# (use "git pull" to update your local branch)
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# ------------------------ >8 ------------------------
# Do not modify or remove the line above.
# Everything below it will be ignored.
diff --git a/Zend/tests/005.phpt b/Zend/tests/005.phpt
index f4abfb6c51..413f3205ad 100644
--- a/Zend/tests/005.phpt
+++ b/Zend/tests/005.phpt
@@ -13,7 +13,7 @@ var_dump(strcasecmp("01", "01"));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(0)
int(-3)
int(-1)
diff --git a/Zend/tests/bug27669.phpt b/Zend/tests/bug27669.phpt
index 7067c23e0d..9cd845e337 100644
--- a/Zend/tests/bug27669.phpt
+++ b/Zend/tests/bug27669.phpt
@@ -10,5 +10,5 @@ Bug #27669 (PHP 5 didn't support all possibilities for calling static methods dy
$y[0] = 'hello';
A::{$y[0]}();
?>
---EXPECTF--
+--EXPECT--
Hello World
diff --git a/Zend/tests/bug51827.phpt b/Zend/tests/bug51827.phpt
index 6c3d721716..1a2d9bdf39 100644
--- a/Zend/tests/bug51827.phpt
+++ b/Zend/tests/bug51827.phpt
@@ -13,7 +13,7 @@ register_shutdown_function('ABC');
register_shutdown_function('exploDe');
?>
---EXPECTF--
+--EXPECT--
int(1)
Fatal error: Uncaught ArgumentCountError: explode() expects at least 2 parameters, 0 given in [no active file]:0
diff --git a/Zend/tests/bug63206.phpt b/Zend/tests/bug63206.phpt
index dc7bb1fd1d..6aba55eca1 100644
--- a/Zend/tests/bug63206.phpt
+++ b/Zend/tests/bug63206.phpt
@@ -22,7 +22,7 @@ set_error_handler(function() {
$triggerNotice1++;
$triggerNotice2++;
?>
---EXPECTF--
+--EXPECT--
Second handler
Internal handler
Second handler
diff --git a/Zend/tests/bug63206_1.phpt b/Zend/tests/bug63206_1.phpt
index f08f913824..d054211638 100644
--- a/Zend/tests/bug63206_1.phpt
+++ b/Zend/tests/bug63206_1.phpt
@@ -22,5 +22,5 @@ restore_error_handler();
$triggerNotice++;
?>
---EXPECTF--
+--EXPECT--
Second handler
diff --git a/Zend/tests/bug63206_2.phpt b/Zend/tests/bug63206_2.phpt
index 7a2bf38543..a4a67f577e 100644
--- a/Zend/tests/bug63206_2.phpt
+++ b/Zend/tests/bug63206_2.phpt
@@ -22,5 +22,5 @@ restore_exception_handler();
throw new Exception();
?>
---EXPECTF--
+--EXPECT--
Second handler
diff --git a/Zend/tests/incompat_ctx_user.phpt b/Zend/tests/incompat_ctx_user.phpt
index 8c7461e4f7..3fe0456175 100644
--- a/Zend/tests/incompat_ctx_user.phpt
+++ b/Zend/tests/incompat_ctx_user.phpt
@@ -16,5 +16,5 @@ try {
echo "Exception: " . $e->getMessage() . "\n";
}
?>
---EXPECTF--
+--EXPECT--
Exception: Non-static method A::foo() cannot be called statically
diff --git a/Zend/tests/instanceof_001.phpt b/Zend/tests/instanceof_001.phpt
index 27170420f0..02b7d59baf 100644
--- a/Zend/tests/instanceof_001.phpt
+++ b/Zend/tests/instanceof_001.phpt
@@ -17,7 +17,7 @@ var_dump($c[0] instanceof stdClass);
var_dump(@$inexistent instanceof stdClass);
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(true)
diff --git a/Zend/tests/unexpected_ref_bug.phpt b/Zend/tests/unexpected_ref_bug.phpt
index 0d78410d1a..172b1e6224 100644
--- a/Zend/tests/unexpected_ref_bug.phpt
+++ b/Zend/tests/unexpected_ref_bug.phpt
@@ -15,5 +15,5 @@ $my_var = str_repeat("A", 64);
$data = call_user_func_array("str_replace", array(&$my_var, new Test(), "foo"));
echo "Done.\n";
?>
---EXPECTF--
+--EXPECT--
Done.
diff --git a/ext/date/tests/012.phpt b/ext/date/tests/012.phpt
index ee8faf1c00..0997ef047c 100644
--- a/ext/date/tests/012.phpt
+++ b/ext/date/tests/012.phpt
@@ -13,7 +13,7 @@ var_dump(date_isodate_set($dto, 2006, 100, 15));
var_dump($dto->format("Y/m/d H:i:s"));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
object(DateTime)#1 (3) {
["date"]=>
string(26) "2006-01-23 00:00:00.000000"
diff --git a/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt b/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
index 715ea63dc9..f96753b019 100644
--- a/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
+++ b/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
@@ -14,6 +14,6 @@ try {
echo $exception->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
DatePeriod::__construct(): The recurrence count '0' is invalid. Needs to be > 0
DatePeriod::__construct(): The recurrence count '-1' is invalid. Needs to be > 0
diff --git a/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt b/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
index cb948e9df5..670dcb2ee3 100644
--- a/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
+++ b/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
@@ -22,7 +22,7 @@ echo "\n-- Format a sample entry --\n";
var_dump( $abbr["acst"] );
?>
---EXPECTF--
+--EXPECT--
*** Testing DateTimeZone::listAbbreviations() : basic functionality ***
string(5) "array"
int(144)
diff --git a/ext/date/tests/date_parse_001.phpt b/ext/date/tests/date_parse_001.phpt
index 0d58c1f8e9..36f8d9bbdd 100644
--- a/ext/date/tests/date_parse_001.phpt
+++ b/ext/date/tests/date_parse_001.phpt
@@ -14,7 +14,7 @@ Test basic date_parse()
var_dump(date_parse(""));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(12) {
["year"]=>
int(2006)
diff --git a/ext/date/tests/date_parse_error.phpt b/ext/date/tests/date_parse_error.phpt
index 24b0094c9e..6a5180fdfb 100644
--- a/ext/date/tests/date_parse_error.phpt
+++ b/ext/date/tests/date_parse_error.phpt
@@ -17,7 +17,7 @@ $invalid_date = "2OO9-02--27 10:00?00.5";
var_dump( date_parse($invalid_date) );
?>
---EXPECTF--
+--EXPECT--
*** Testing date_parse() : error conditions ***
-- Testing date_parse() function with unexpected characters in $date argument --
diff --git a/ext/date/tests/gmmktime_basic.phpt b/ext/date/tests/gmmktime_basic.phpt
index 303bd9b010..f96b635c08 100644
--- a/ext/date/tests/gmmktime_basic.phpt
+++ b/ext/date/tests/gmmktime_basic.phpt
@@ -22,6 +22,6 @@ $year = 2008;
var_dump( gmmktime($hour, $min, $sec, $mon, $day, $year) );
?>
---EXPECTF--
+--EXPECT--
*** Testing gmmktime() : basic functionality ***
int(1218182888)
diff --git a/ext/date/tests/mktime_error.phpt b/ext/date/tests/mktime_error.phpt
index e40e40f38d..8bdb61df7b 100644
--- a/ext/date/tests/mktime_error.phpt
+++ b/ext/date/tests/mktime_error.phpt
@@ -35,7 +35,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing mktime() : error conditions ***
-- Testing mktime() function with Zero arguments --
diff --git a/ext/date/tests/timezone_abbreviations_list_basic1.phpt b/ext/date/tests/timezone_abbreviations_list_basic1.phpt
index b3bf7c84a1..0640b8a83d 100644
--- a/ext/date/tests/timezone_abbreviations_list_basic1.phpt
+++ b/ext/date/tests/timezone_abbreviations_list_basic1.phpt
@@ -22,7 +22,7 @@ echo "\n-- Format a sample entry --\n";
var_dump( $abbr["acst"] );
?>
---EXPECTF--
+--EXPECT--
*** Testing timezone_abbreviations_list() : basic functionality ***
string(5) "array"
int(144)
diff --git a/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt b/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
index 50a1559f58..855acaaed8 100644
--- a/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
+++ b/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
@@ -25,7 +25,7 @@ $finfo = new finfo( FILEINFO_NONE, $magicFile );
var_dump( $finfo->set_flags( FILEINFO_MIME ) );
?>
---EXPECTF--
+--EXPECT--
*** Testing finfo_set_flags() : basic functionality ***
bool(true)
bool(true)
diff --git a/ext/fileinfo/tests/finfo_set_flags_basic.phpt b/ext/fileinfo/tests/finfo_set_flags_basic.phpt
index 95f2648f51..fe2921b560 100644
--- a/ext/fileinfo/tests/finfo_set_flags_basic.phpt
+++ b/ext/fileinfo/tests/finfo_set_flags_basic.phpt
@@ -25,7 +25,7 @@ $finfo = new finfo( FILEINFO_NONE, $magicFile );
var_dump( $finfo->set_flags( FILEINFO_MIME ) );
?>
---EXPECTF--
+--EXPECT--
*** Testing finfo_set_flags() : basic functionality ***
bool(true)
bool(true)
diff --git a/ext/filter/tests/007.phpt b/ext/filter/tests/007.phpt
index dc966b8cc9..b5f285342b 100644
--- a/ext/filter/tests/007.phpt
+++ b/ext/filter/tests/007.phpt
@@ -23,7 +23,7 @@ var_dump(filter_has_var(INPUT_POST, ""));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(false)
diff --git a/ext/filter/tests/008.phpt b/ext/filter/tests/008.phpt
index 75e0968c62..1d4d64529d 100644
--- a/ext/filter/tests/008.phpt
+++ b/ext/filter/tests/008.phpt
@@ -9,7 +9,7 @@ var_dump(filter_list());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(21) {
[0]=>
string(3) "int"
diff --git a/ext/filter/tests/010.phpt b/ext/filter/tests/010.phpt
index 14f8db01af..46b6044668 100644
--- a/ext/filter/tests/010.phpt
+++ b/ext/filter/tests/010.phpt
@@ -17,7 +17,7 @@ var_dump(filter_var(1, 0, array()));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(7) {
[0]=>
int(1)
diff --git a/ext/hash/tests/hash_hkdf_edges.phpt b/ext/hash/tests/hash_hkdf_edges.phpt
index cee86ae82e..ceb21631d1 100644
--- a/ext/hash/tests/hash_hkdf_edges.phpt
+++ b/ext/hash/tests/hash_hkdf_edges.phpt
@@ -25,7 +25,7 @@ catch (\Error $e) {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing hash_hkdf(): edge cases ***
Length < digestSize: 98b16391063ece
Length % digestSize != 0: 98b16391063ecee006a3ca8ee5776b1e5f
diff --git a/ext/hash/tests/hash_hmac_file_basic.phpt b/ext/hash/tests/hash_hmac_file_basic.phpt
index 4569c46c35..11b9d05738 100644
--- a/ext/hash/tests/hash_hmac_file_basic.phpt
+++ b/ext/hash/tests/hash_hmac_file_basic.phpt
@@ -57,7 +57,7 @@ echo "sha256(raw): " . bin2hex(hash_hmac_file('sha256', $file, $key, TRUE)). "\n
unlink($file);
?>
---EXPECTF--
+--EXPECT--
*** Testing hash_hmac_file() : basic functionality ***
gost: 94c39a40d5db852a8dc3d24e37eebf2d53e3d711457c59cd02b614f792a9d918
haval128,3: f1cea637451097d790354a86de3f54a3
diff --git a/ext/json/tests/json_last_error_msg_error.phpt b/ext/json/tests/json_last_error_msg_error.phpt
index 75b06f72a2..0eb55c4c66 100644
--- a/ext/json/tests/json_last_error_msg_error.phpt
+++ b/ext/json/tests/json_last_error_msg_error.phpt
@@ -14,6 +14,6 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
string(8) "No error"
json_last_error_msg() expects exactly 0 parameters, 1 given
diff --git a/ext/libxml/tests/bug76777.phpt b/ext/libxml/tests/bug76777.phpt
index 5e15024b81..c50e52203f 100644
--- a/ext/libxml/tests/bug76777.phpt
+++ b/ext/libxml/tests/bug76777.phpt
@@ -29,7 +29,7 @@ libxml_set_external_entity_loader(function($p,$s,$c) {
$dom=new DOMDocument($xml);
$dom->schemaValidateSource($xsd);
?>
---EXPECTF--
+--EXPECT--
NULL
string(15) "nonexistent.xsd"
array(4) {
diff --git a/ext/pcre/tests/preg_replace_error2.phpt b/ext/pcre/tests/preg_replace_error2.phpt
index 2401e0bb49..d7748bf954 100644
--- a/ext/pcre/tests/preg_replace_error2.phpt
+++ b/ext/pcre/tests/preg_replace_error2.phpt
@@ -29,7 +29,7 @@ try {
}
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing preg_replace() : error conditions ***
Arg value is: this is a string
diff --git a/ext/pcre/tests/split2.phpt b/ext/pcre/tests/split2.phpt
index 5fafee3b87..3d9714a420 100644
--- a/ext/pcre/tests/split2.phpt
+++ b/ext/pcre/tests/split2.phpt
@@ -19,7 +19,7 @@ var_dump(preg_split('/(\d*)/', 'ab2c3u'));
var_dump(preg_last_error() == PREG_RECURSION_LIMIT_ERROR);
?>
---EXPECTF--
+--EXPECT--
array(15) {
[0]=>
string(0) ""
diff --git a/ext/phar/tests/phar_isvalidpharfilename.phpt b/ext/phar/tests/phar_isvalidpharfilename.phpt
index 8b9088b9b3..d44c0603e9 100644
--- a/ext/phar/tests/phar_isvalidpharfilename.phpt
+++ b/ext/phar/tests/phar_isvalidpharfilename.phpt
@@ -72,7 +72,7 @@ var_dump(Phar::isValidPharFilename('dir.phar.php', false));
--CLEAN--
<?php
rmdir(__DIR__ . '/.phar');
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
bool(false)
diff --git a/ext/phar/tests/pharfileinfo_chmod.phpt b/ext/phar/tests/pharfileinfo_chmod.phpt
index 822b5ac628..26d7257602 100644
--- a/ext/phar/tests/pharfileinfo_chmod.phpt
+++ b/ext/phar/tests/pharfileinfo_chmod.phpt
@@ -24,5 +24,5 @@ $b->chmod(0666);
?>
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar'); ?>
---EXPECTF--
+--EXPECT--
Phar entry "a" is a temporary directory (not an actual entry in the archive), cannot chmod
diff --git a/ext/phar/tests/pharfileinfo_setmetadata.phpt b/ext/phar/tests/pharfileinfo_setmetadata.phpt
index 38e23f706d..8b4385ad5f 100644
--- a/ext/phar/tests/pharfileinfo_setmetadata.phpt
+++ b/ext/phar/tests/pharfileinfo_setmetadata.phpt
@@ -40,7 +40,7 @@ echo $e->getMessage(), "\n";
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar'); ?>
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.tar'); ?>
---EXPECTF--
+--EXPECT--
Phar entry is a temporary directory (not an actual entry in the archive), cannot set metadata
Phar entry is a temporary directory (not an actual entry in the archive), cannot delete metadata
Write operations disabled by the php.ini setting phar.readonly
diff --git a/ext/phar/tests/stat2_5.3.phpt b/ext/phar/tests/stat2_5.3.phpt
index 19acc3ba99..9e9e158602 100644
--- a/ext/phar/tests/stat2_5.3.phpt
+++ b/ext/phar/tests/stat2_5.3.phpt
@@ -35,7 +35,7 @@ include $fname3;
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.tar'); ?>
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.tar'); ?>
---EXPECTF--
+--EXPECT--
bool(true)
is_link
bool(false)
diff --git a/ext/posix/tests/posix_getgrgid_error.phpt b/ext/posix/tests/posix_getgrgid_error.phpt
index e9dbe2a6ce..36ffcf4952 100644
--- a/ext/posix/tests/posix_getgrgid_error.phpt
+++ b/ext/posix/tests/posix_getgrgid_error.phpt
@@ -20,7 +20,7 @@ var_dump( posix_getgrgid($gid));
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getgrgid() : error conditions ***
-- Testing posix_getgrgid() function with a negative group id --
diff --git a/ext/posix/tests/posix_getpgid_error.phpt b/ext/posix/tests/posix_getpgid_error.phpt
index 19e306b2ee..85f12d4917 100644
--- a/ext/posix/tests/posix_getpgid_error.phpt
+++ b/ext/posix/tests/posix_getpgid_error.phpt
@@ -22,7 +22,7 @@ var_dump( posix_getpgid($pid) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getpgid() : error conditions ***
-- Testing posix_getpgid() with negative pid --
diff --git a/ext/posix/tests/posix_getpwuid_error.phpt b/ext/posix/tests/posix_getpwuid_error.phpt
index 365033b689..b4ec515e74 100644
--- a/ext/posix/tests/posix_getpwuid_error.phpt
+++ b/ext/posix/tests/posix_getpwuid_error.phpt
@@ -20,7 +20,7 @@ var_dump( posix_getpwuid($uid) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getpwuid() : error conditions ***
-- Testing posix_getpwuid() function negative uid --
diff --git a/ext/posix/tests/posix_getsid_error.phpt b/ext/posix/tests/posix_getsid_error.phpt
index 8e05a23496..08080230aa 100644
--- a/ext/posix/tests/posix_getsid_error.phpt
+++ b/ext/posix/tests/posix_getsid_error.phpt
@@ -15,5 +15,5 @@ PHP Testfest Berlin 2009-05-10
<?php
var_dump( posix_getsid(-1) );
?>
---EXPECTF--
+--EXPECT--
bool(false)
diff --git a/ext/posix/tests/posix_initgroups.phpt b/ext/posix/tests/posix_initgroups.phpt
index 20cf8cef8b..c77acfe3a4 100644
--- a/ext/posix/tests/posix_initgroups.phpt
+++ b/ext/posix/tests/posix_initgroups.phpt
@@ -11,5 +11,5 @@ if (!function_exists('posix_initgroups')) die('skip posix_initgroups() not found
var_dump(posix_initgroups(NULL, NULL));
?>
---EXPECTF--
+--EXPECT--
bool(false)
diff --git a/ext/posix/tests/posix_kill_error.phpt b/ext/posix/tests/posix_kill_error.phpt
index 89474c4994..ea9b4f45dc 100644
--- a/ext/posix/tests/posix_kill_error.phpt
+++ b/ext/posix/tests/posix_kill_error.phpt
@@ -28,7 +28,7 @@ var_dump( posix_kill($pid, 999) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_kill() : error conditions ***
-- Testing posix_kill() function with invalid signal --
diff --git a/ext/posix/tests/posix_strerror_error.phpt b/ext/posix/tests/posix_strerror_error.phpt
index 60b096656a..2792ff5b3b 100644
--- a/ext/posix/tests/posix_strerror_error.phpt
+++ b/ext/posix/tests/posix_strerror_error.phpt
@@ -20,7 +20,7 @@ echo gettype( posix_strerror($errno) )."\n";
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_strerror() : error conditions ***
-- Testing posix_strerror() function with invalid error number --
diff --git a/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt b/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
index a135939052..607fead65c 100644
--- a/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
+++ b/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
@@ -16,7 +16,7 @@ var_dump($rc->hasProperty(1));
var_dump($rc->hasProperty(1.5));
var_dump($rc->hasProperty(true));
?>
---EXPECTF--
+--EXPECT--
Check invalid params:
bool(false)
bool(false)
diff --git a/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt b/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
index 728ddf9265..7e45eec411 100644
--- a/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
+++ b/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
@@ -43,7 +43,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing ReflectionMethod::getClosure() : error conditions ***
-- Testing ReflectionMethod::getClosure() function with invalid object --
diff --git a/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt b/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
index 113cabbbeb..c3bab48d6f 100644
--- a/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
+++ b/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
@@ -69,7 +69,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
Non-instance:
string(72) "Given object is not an instance of the class this method was declared in"
diff --git a/ext/reflection/tests/ReflectionObject_getName_basic.phpt b/ext/reflection/tests/ReflectionObject_getName_basic.phpt
index 1885695cb1..94ad1e2c7b 100644
--- a/ext/reflection/tests/ReflectionObject_getName_basic.phpt
+++ b/ext/reflection/tests/ReflectionObject_getName_basic.phpt
@@ -15,7 +15,7 @@ $r3 = new ReflectionObject($r2);
var_dump($r3->getName());
?>
---EXPECTF--
+--EXPECT--
string(8) "stdClass"
string(1) "C"
string(16) "ReflectionObject"
diff --git a/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt b/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
index 1472615178..7defcb76e0 100644
--- a/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
+++ b/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
@@ -25,7 +25,7 @@ reflectProperty("TestClass", "prot");
reflectProperty("TestClass", "priv");
?>
---EXPECTF--
+--EXPECT--
**********************************
Reflecting on property TestClass::pub
diff --git a/ext/reflection/tests/ReflectionProperty_setValue_error.phpt b/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
index f58590b3ea..1f0c2b5f2b 100644
--- a/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
+++ b/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
@@ -32,7 +32,7 @@ $propInfo = new ReflectionProperty('TestClass', 'pub2');
var_dump($propInfo->setValue($instanceWithNoProperties, "NewValue"));
var_dump($instanceWithNoProperties->pub2);
?>
---EXPECTF--
+--EXPECT--
Protected property:
Cannot access non-public member TestClass::$prot
diff --git a/ext/session/tests/bug79221.phpt b/ext/session/tests/bug79221.phpt
index b0972c4697..0813457035 100644
--- a/ext/session/tests/bug79221.phpt
+++ b/ext/session/tests/bug79221.phpt
@@ -40,6 +40,6 @@ session_start();
var_dump($_SESSION);
session_destroy();
---EXPECTF--
+--EXPECT--
array(0) {
}
diff --git a/ext/session/tests/session_cache_limiter_error.phpt b/ext/session/tests/session_cache_limiter_error.phpt
index 284649e277..d291d531c0 100644
--- a/ext/session/tests/session_cache_limiter_error.phpt
+++ b/ext/session/tests/session_cache_limiter_error.phpt
@@ -89,7 +89,7 @@ fclose($fp);
echo "Done";
ob_end_flush();
?>
---EXPECTF--
+--EXPECT--
*** Testing session_cache_limiter() : error functionality ***
-- Iteration 1 --
diff --git a/ext/spl/tests/bug61347.phpt b/ext/spl/tests/bug61347.phpt
index b83f48f7ff..4b4f9eaedf 100644
--- a/ext/spl/tests/bug61347.phpt
+++ b/ext/spl/tests/bug61347.phpt
@@ -21,7 +21,7 @@ var_dump(isset($b[37])); //true
var_dump(isset($b['no_exists'])); //false
var_dump(empty($b['b'])); //true
var_dump(empty($b[37])); //true
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
bool(false)
diff --git a/ext/spl/tests/fileobject_005.phpt b/ext/spl/tests/fileobject_005.phpt
index e26a8d7aea..cce4a7d6a6 100644
--- a/ext/spl/tests/fileobject_005.phpt
+++ b/ext/spl/tests/fileobject_005.phpt
@@ -27,6 +27,6 @@ $fo->fwrite("blahlubba");
$path = __DIR__.DIRECTORY_SEPARATOR.'fileobject_005.txt';
unlink($path);
?>
---EXPECTF--
+--EXPECT--
bool(true)
string(4) "blah"
diff --git a/ext/spl/tests/iterator_045.phpt b/ext/spl/tests/iterator_045.phpt
index 63d78cc78e..e245b95688 100644
--- a/ext/spl/tests/iterator_045.phpt
+++ b/ext/spl/tests/iterator_045.phpt
@@ -88,7 +88,7 @@ $it->testUnset($unsets);
$it->show();
?>
---EXPECTF--
+--EXPECT--
Exception: MyCachingIterator does not use a full cache (see CachingIterator::__construct)
Exception: MyCachingIterator does not use a full cache (see CachingIterator::__construct)
MyCachingIterator::testSet()
diff --git a/ext/spl/tests/regexIterator_setMode_error.phpt b/ext/spl/tests/regexIterator_setMode_error.phpt
index 4816896d8a..3b0eaf1d66 100644
--- a/ext/spl/tests/regexIterator_setMode_error.phpt
+++ b/ext/spl/tests/regexIterator_setMode_error.phpt
@@ -18,7 +18,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
int(0)
string(14) "Illegal mode 7"
int(0)
diff --git a/ext/spl/tests/spl_heap_is_empty_basic.phpt b/ext/spl/tests/spl_heap_is_empty_basic.phpt
index 4a90734ad4..abf64f8d9d 100644
--- a/ext/spl/tests/spl_heap_is_empty_basic.phpt
+++ b/ext/spl/tests/spl_heap_is_empty_basic.phpt
@@ -22,7 +22,7 @@ var_dump($heap->isEmpty());
$heap->extract();
var_dump($heap->isEmpty());
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(false)
bool(true)
diff --git a/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt b/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
index 994c67e0c3..459beeca53 100644
--- a/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
+++ b/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
@@ -69,7 +69,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
int(1)
Unable to prepare statement: 23, not authorized
bool(true)
diff --git a/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt b/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
index 3f9fe84130..9a893c590d 100644
--- a/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
+++ b/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
@@ -44,7 +44,7 @@ var_dump($db->close());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
Getting expanded SQL statement
string(21) "SELECT 42, 'php', 43;"
Execute statement
diff --git a/ext/standard/tests/array/005.phpt b/ext/standard/tests/array/005.phpt
index c51e98a67b..ed9f0458c4 100644
--- a/ext/standard/tests/array/005.phpt
+++ b/ext/standard/tests/array/005.phpt
@@ -69,7 +69,7 @@ var_dump( current($mixed_array[1]) );
echo"Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing Error Conditions ***
NULL
diff --git a/ext/standard/tests/array/009.phpt b/ext/standard/tests/array/009.phpt
index c62be0d27c..fc10d293ff 100644
--- a/ext/standard/tests/array/009.phpt
+++ b/ext/standard/tests/array/009.phpt
@@ -71,7 +71,7 @@ foreach ($varient_arrays as $sub_array ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
-- Iteration 1 --
int(0)
diff --git a/ext/standard/tests/array/array_diff_assoc_error.phpt b/ext/standard/tests/array/array_diff_assoc_error.phpt
index 6aa7864ee9..69015289e2 100644
--- a/ext/standard/tests/array/array_diff_assoc_error.phpt
+++ b/ext/standard/tests/array/array_diff_assoc_error.phpt
@@ -33,7 +33,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff_assoc() : error conditions ***
-- Testing array_diff_assoc() function with zero arguments --
diff --git a/ext/standard/tests/array/array_diff_error.phpt b/ext/standard/tests/array/array_diff_error.phpt
index d269f010b8..889c5ce1b2 100644
--- a/ext/standard/tests/array/array_diff_error.phpt
+++ b/ext/standard/tests/array/array_diff_error.phpt
@@ -33,7 +33,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff() : error conditions ***
-- Testing array_diff() function with zero arguments --
diff --git a/ext/standard/tests/array/array_diff_key_error.phpt b/ext/standard/tests/array/array_diff_key_error.phpt
index e957abce1c..80ff5728fe 100644
--- a/ext/standard/tests/array/array_diff_key_error.phpt
+++ b/ext/standard/tests/array/array_diff_key_error.phpt
@@ -28,7 +28,7 @@ try {
echo $e->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff_key() : error conditions ***
-- Testing array_diff_key() function with less than expected no. of arguments --
diff --git a/ext/standard/tests/array/array_filter.phpt b/ext/standard/tests/array/array_filter.phpt
index a1b18bd234..2cb21ca609 100644
--- a/ext/standard/tests/array/array_filter.phpt
+++ b/ext/standard/tests/array/array_filter.phpt
@@ -28,7 +28,7 @@ var_dump(array_filter($array3, "even"));
var_dump(array_filter(array()));
?>
---EXPECTF--
+--EXPECT--
Odd :
array(3) {
["a"]=>
diff --git a/ext/standard/tests/array/array_filter_variation10.phpt b/ext/standard/tests/array/array_filter_variation10.phpt
index 265daf1fb4..ff88d7a7f8 100644
--- a/ext/standard/tests/array/array_filter_variation10.phpt
+++ b/ext/standard/tests/array/array_filter_variation10.phpt
@@ -56,7 +56,7 @@ try {
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_filter() : usage variations - using array keys in 'callback' ***
0 = 0
1 = 1
diff --git a/ext/standard/tests/array/array_key_exists_variation3.phpt b/ext/standard/tests/array/array_key_exists_variation3.phpt
index 4a6409bb1f..ef6cf45139 100644
--- a/ext/standard/tests/array/array_key_exists_variation3.phpt
+++ b/ext/standard/tests/array/array_key_exists_variation3.phpt
@@ -34,7 +34,7 @@ foreach($keys as $key) {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_key_exists() : usage variations ***
-- Iteration 1 --
diff --git a/ext/standard/tests/array/array_map_error.phpt b/ext/standard/tests/array/array_map_error.phpt
index 4739bbf663..b41871e1c4 100644
--- a/ext/standard/tests/array/array_map_error.phpt
+++ b/ext/standard/tests/array/array_map_error.phpt
@@ -38,7 +38,7 @@ var_dump( array_map('callback2', $arr1, $arr2, $arr3) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_map() : error conditions ***
-- Testing array_map() function with one less than expected no. of arguments --
diff --git a/ext/standard/tests/array/array_merge.phpt b/ext/standard/tests/array/array_merge.phpt
index 08ecbf7147..75007779fa 100644
--- a/ext/standard/tests/array/array_merge.phpt
+++ b/ext/standard/tests/array/array_merge.phpt
@@ -83,7 +83,7 @@ var_dump(array_merge());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_merge() basic functionality ***
--- Iteration 0 ---
diff --git a/ext/standard/tests/array/array_push.phpt b/ext/standard/tests/array/array_push.phpt
index 227a520ac1..78076b8fc4 100644
--- a/ext/standard/tests/array/array_push.phpt
+++ b/ext/standard/tests/array/array_push.phpt
@@ -60,7 +60,7 @@ var_dump( $mixed_array[2] );
echo"\nDone";
?>
---EXPECTF--
+--EXPECT--
*** Testing Edge Conditions ***
int(11)
int(1)
diff --git a/ext/standard/tests/array/array_slice.phpt b/ext/standard/tests/array/array_slice.phpt
index d19f5195d6..a76277883a 100644
--- a/ext/standard/tests/array/array_slice.phpt
+++ b/ext/standard/tests/array/array_slice.phpt
@@ -68,7 +68,7 @@ foreach ($var_array as $sub_array)
var_dump (array_slice($var_array[2], -3, -2, false) );
?>
---EXPECTF--
+--EXPECT--
*** Iteration 1 ***
*** Variation with first two Arguments ***
diff --git a/ext/standard/tests/array/array_unshift.phpt b/ext/standard/tests/array/array_unshift.phpt
index 9ebe83391e..265de4e846 100644
--- a/ext/standard/tests/array/array_unshift.phpt
+++ b/ext/standard/tests/array/array_unshift.phpt
@@ -12,7 +12,7 @@ var_dump($a);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
array(1) {
[0]=>
diff --git a/ext/standard/tests/array/array_walk.phpt b/ext/standard/tests/array/array_walk.phpt
index 1f5457c9f7..151c9c70d0 100644
--- a/ext/standard/tests/array/array_walk.phpt
+++ b/ext/standard/tests/array/array_walk.phpt
@@ -24,7 +24,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
int(0)
string(4) "data"
diff --git a/ext/standard/tests/array/array_walk_error2.phpt b/ext/standard/tests/array/array_walk_error2.phpt
index dfc95d3af8..e5aeadcdc0 100644
--- a/ext/standard/tests/array/array_walk_error2.phpt
+++ b/ext/standard/tests/array/array_walk_error2.phpt
@@ -54,7 +54,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk() : error conditions - callback parameters ***
Exception: Too few arguments to function callback1(), 2 passed and exactly 3 expected
Exception: Too few arguments to function callback2(), 3 passed and exactly 4 expected
diff --git a/ext/standard/tests/array/array_walk_recursive1.phpt b/ext/standard/tests/array/array_walk_recursive1.phpt
index 472cb1032d..d4d3e7d8eb 100644
--- a/ext/standard/tests/array/array_walk_recursive1.phpt
+++ b/ext/standard/tests/array/array_walk_recursive1.phpt
@@ -24,7 +24,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
int(0)
string(4) "data"
diff --git a/ext/standard/tests/array/array_walk_recursive_error2.phpt b/ext/standard/tests/array/array_walk_recursive_error2.phpt
index f1686d7acd..2509c95f60 100644
--- a/ext/standard/tests/array/array_walk_recursive_error2.phpt
+++ b/ext/standard/tests/array/array_walk_recursive_error2.phpt
@@ -54,7 +54,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk_recursive() : error conditions - callback parameters ***
Exception: Too few arguments to function callback1(), 2 passed and exactly 3 expected
Exception: Too few arguments to function callback2(), 3 passed and exactly 4 expected
diff --git a/ext/standard/tests/array/array_walk_recursive_variation7.phpt b/ext/standard/tests/array/array_walk_recursive_variation7.phpt
index a0c159d71d..a1cbdad2bd 100644
--- a/ext/standard/tests/array/array_walk_recursive_variation7.phpt
+++ b/ext/standard/tests/array/array_walk_recursive_variation7.phpt
@@ -33,7 +33,7 @@ echo "-- Anonymous function with null argument --\n";
var_dump( array_walk_recursive( $input, function() { echo "1\n"; }));
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk_recursive() : anonymous function as callback ***
-- Anonymous function with one argument --
int(2)
diff --git a/ext/standard/tests/array/array_walk_variation7.phpt b/ext/standard/tests/array/array_walk_variation7.phpt
index 0354782eda..3689f8a798 100644
--- a/ext/standard/tests/array/array_walk_variation7.phpt
+++ b/ext/standard/tests/array/array_walk_variation7.phpt
@@ -33,7 +33,7 @@ echo "-- Anonymous function with null argument --\n";
var_dump( array_walk( $input, function() { echo "1\n"; }));
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk() : anonymous function as callback ***
-- Anonymous function with one argument --
int(2)
diff --git a/ext/standard/tests/array/uasort_variation8.phpt b/ext/standard/tests/array/uasort_variation8.phpt
index d27cd569c0..b6abdeaef3 100644
--- a/ext/standard/tests/array/uasort_variation8.phpt
+++ b/ext/standard/tests/array/uasort_variation8.phpt
@@ -29,7 +29,7 @@ var_dump($array_arg);
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing uasort() : built in function as 'cmp_function' ***
-- Testing uasort() with built-in 'cmp_function': strcasecmp() --
bool(true)
diff --git a/ext/standard/tests/array/usort_variation8.phpt b/ext/standard/tests/array/usort_variation8.phpt
index 55ff362d41..4a750ccefa 100644
--- a/ext/standard/tests/array/usort_variation8.phpt
+++ b/ext/standard/tests/array/usort_variation8.phpt
@@ -31,7 +31,7 @@ var_dump( usort($temp_array2, 'strcmp') );
var_dump($temp_array2);
?>
---EXPECTF--
+--EXPECT--
*** Testing usort() : usage variation ***
-- Testing usort() with built-in 'cmp_function': strcasecmp() --
diff --git a/ext/standard/tests/assert/assert_variation.phpt b/ext/standard/tests/assert/assert_variation.phpt
index a28ea58d5a..7b550b36d1 100644
--- a/ext/standard/tests/assert/assert_variation.phpt
+++ b/ext/standard/tests/assert/assert_variation.phpt
@@ -67,7 +67,7 @@ var_dump($rao=assert_options(ASSERT_CALLBACK));
echo "ini.get(\"assert.callback\") => [".ini_get("assert.callback")."]\n\n";
var_dump($r2=assert(0 != 0));
echo"\n";
---EXPECTF--
+--EXPECT--
Initial values: assert_options(ASSERT_CALLBACK) => [f1]
Initial values: ini.get("assert.callback") => [f1]
f1 called
diff --git a/ext/standard/tests/file/auto_detect_line_endings_1.phpt b/ext/standard/tests/file/auto_detect_line_endings_1.phpt
index c79082ecdb..5a4ff0a10f 100644
--- a/ext/standard/tests/file/auto_detect_line_endings_1.phpt
+++ b/ext/standard/tests/file/auto_detect_line_endings_1.phpt
@@ -15,7 +15,7 @@ var_dump(fgets(STDIN));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(1) "1"
string(8) "fooBar1
"
string(8) "fooBar2
"
diff --git a/ext/standard/tests/file/auto_detect_line_endings_2.phpt b/ext/standard/tests/file/auto_detect_line_endings_2.phpt
index f33a055e08..3994f1ee3b 100644
--- a/ext/standard/tests/file/auto_detect_line_endings_2.phpt
+++ b/ext/standard/tests/file/auto_detect_line_endings_2.phpt
@@ -16,7 +16,7 @@ var_dump(fgets($stdin));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(2) "on"
string(8) "fooBar1
"
string(8) "fooBar2
"
diff --git a/ext/standard/tests/file/basename.phpt b/ext/standard/tests/file/basename.phpt
index 8352f4da4b..7a98e833a3 100644
--- a/ext/standard/tests/file/basename.phpt
+++ b/ext/standard/tests/file/basename.phpt
@@ -138,7 +138,7 @@ check_basename( $file_path_variations );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
--Iteration 1--
diff --git a/ext/standard/tests/file/fscanf.phpt b/ext/standard/tests/file/fscanf.phpt
index 6605b795ff..4acadc6169 100644
--- a/ext/standard/tests/file/fscanf.phpt
+++ b/ext/standard/tests/file/fscanf.phpt
@@ -75,7 +75,7 @@ echo "Done\n";
$filename = __DIR__."/fscanf.dat";
unlink($filename);
?>
---EXPECTF--
+--EXPECT--
int(0)
NULL
int(1)
diff --git a/ext/standard/tests/file/fscanf_variation10.phpt b/ext/standard/tests/file/fscanf_variation10.phpt
index f657c07005..507ed8e22d 100644
--- a/ext/standard/tests/file/fscanf_variation10.phpt
+++ b/ext/standard/tests/file/fscanf_variation10.phpt
@@ -82,7 +82,7 @@ $file_path = __DIR__;
$filename = "$file_path/fscanf_variation10.tmp";
unlink($filename);
?>
---EXPECTF--
+--EXPECT--
*** Test fscanf(): different float format types with resource ***
-- iteration 1 --
diff --git a/ext/standard/tests/file/is_dir_variation3.phpt b/ext/standard/tests/file/is_dir_variation3.phpt
index e82d9ae034..1cf1f25138 100644
--- a/ext/standard/tests/file/is_dir_variation3.phpt
+++ b/ext/standard/tests/file/is_dir_variation3.phpt
@@ -30,7 +30,7 @@ foreach($dirnames as $dirname) {
var_dump( is_dir($dirname) );
}
?>
---EXPECTF--
+--EXPECT--
*** Testing is_dir() with Invalid arguments: expected bool(false) ***
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_executable_error.phpt b/ext/standard/tests/file/is_executable_error.phpt
index ad90d64435..e77ca86349 100644
--- a/ext/standard/tests/file/is_executable_error.phpt
+++ b/ext/standard/tests/file/is_executable_error.phpt
@@ -10,7 +10,7 @@ echo "\n*** Testing is_exceutable() on non-existent directory ***\n";
var_dump( is_executable(__DIR__."/is_executable") );
echo "Done\n";
---EXPECTF--
+--EXPECT--
*** Testing is_exceutable() on non-existent directory ***
bool(false)
Done
diff --git a/ext/standard/tests/file/is_executable_variation3.phpt b/ext/standard/tests/file/is_executable_variation3.phpt
index 92ad3320d3..802dbfdf7e 100644
--- a/ext/standard/tests/file/is_executable_variation3.phpt
+++ b/ext/standard/tests/file/is_executable_variation3.phpt
@@ -40,7 +40,7 @@ foreach( $invalid_files as $invalid_file ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_executable(): usage variations ***
*** Testing is_executable() on invalid files ***
diff --git a/ext/standard/tests/file/is_file_variation3.phpt b/ext/standard/tests/file/is_file_variation3.phpt
index d33b01dfb3..5bdb63e37c 100644
--- a/ext/standard/tests/file/is_file_variation3.phpt
+++ b/ext/standard/tests/file/is_file_variation3.phpt
@@ -39,7 +39,7 @@ foreach([
clearstatcache();
}
?>
---EXPECTF--
+--EXPECT--
float(-2.34555): 0
string(1) " ": 0
string(0) "": 0
diff --git a/ext/standard/tests/file/is_readable_error.phpt b/ext/standard/tests/file/is_readable_error.phpt
index 1520eb4d20..c8a6c34fa0 100644
--- a/ext/standard/tests/file/is_readable_error.phpt
+++ b/ext/standard/tests/file/is_readable_error.phpt
@@ -11,7 +11,7 @@ var_dump( is_readable(__DIR__."/is_readable.tmp") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_readable() on non-existent file ***
bool(false)
Done
diff --git a/ext/standard/tests/file/is_readable_variation3.phpt b/ext/standard/tests/file/is_readable_variation3.phpt
index 97c794d1b7..f7eebdc2b8 100644
--- a/ext/standard/tests/file/is_readable_variation3.phpt
+++ b/ext/standard/tests/file/is_readable_variation3.phpt
@@ -37,7 +37,7 @@ foreach( $misc_files as $misc_file ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_readable(): usage variations ***
*** Testing is_readable() on miscellaneous filenames ***
diff --git a/ext/standard/tests/file/is_uploaded_file_basic.phpt b/ext/standard/tests/file/is_uploaded_file_basic.phpt
index d053244a79..3e5bf6320c 100644
--- a/ext/standard/tests/file/is_uploaded_file_basic.phpt
+++ b/ext/standard/tests/file/is_uploaded_file_basic.phpt
@@ -30,7 +30,7 @@ var_dump(is_uploaded_file('random_filename.txt'));
var_dump(is_uploaded_file('__FILE__'));
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_writable_error.phpt b/ext/standard/tests/file/is_writable_error.phpt
index e2a38412cd..f01e69b13d 100644
--- a/ext/standard/tests/file/is_writable_error.phpt
+++ b/ext/standard/tests/file/is_writable_error.phpt
@@ -14,7 +14,7 @@ var_dump( is_writeable(__DIR__."/is_writable") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_writable() on non-existent file ***
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_writable_variation3.phpt b/ext/standard/tests/file/is_writable_variation3.phpt
index c5843a5abf..167d874ac2 100644
--- a/ext/standard/tests/file/is_writable_variation3.phpt
+++ b/ext/standard/tests/file/is_writable_variation3.phpt
@@ -37,7 +37,7 @@ foreach( $misc_files as $misc_file ) {
clearstatcache();
}
?>
---EXPECTF--
+--EXPECT--
*** Testing is_writable(): usage variations ***
*** Testing is_writable() with invalid filenames ***
diff --git a/ext/standard/tests/file/move_uploaded_file_basic.phpt b/ext/standard/tests/file/move_uploaded_file_basic.phpt
index 7af8748fe2..b80c052691 100644
--- a/ext/standard/tests/file/move_uploaded_file_basic.phpt
+++ b/ext/standard/tests/file/move_uploaded_file_basic.phpt
@@ -50,7 +50,7 @@ var_dump(move_uploaded_file($_FILES['file2']['tmp_name'], $destination4));
unlink($destination4);
?>
---EXPECTF--
+--EXPECT--
Valid move
bool(true)
bool(true)
diff --git a/ext/standard/tests/general_functions/get_include_path_basic.phpt b/ext/standard/tests/general_functions/get_include_path_basic.phpt
index bb7ccf542b..c17d5d3e71 100644
--- a/ext/standard/tests/general_functions/get_include_path_basic.phpt
+++ b/ext/standard/tests/general_functions/get_include_path_basic.phpt
@@ -20,7 +20,7 @@ if (ini_get("include_path") == get_include_path()) {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing get_include_path()
string(1) "."
PASSED
diff --git a/ext/standard/tests/general_functions/include_path.phpt b/ext/standard/tests/general_functions/include_path.phpt
index 56327500ea..06e806b3a2 100644
--- a/ext/standard/tests/general_functions/include_path.phpt
+++ b/ext/standard/tests/general_functions/include_path.phpt
@@ -31,7 +31,7 @@ var_dump(get_include_path());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(1) "."
NULL
string(1) "."
diff --git a/ext/standard/tests/general_functions/is_array.phpt b/ext/standard/tests/general_functions/is_array.phpt
index 200ecbd6ac..37de6d5a5b 100644
--- a/ext/standard/tests/general_functions/is_array.phpt
+++ b/ext/standard/tests/general_functions/is_array.phpt
@@ -103,7 +103,7 @@ echo "Done\n";
fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_array() on different type of arrays ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_bool.phpt b/ext/standard/tests/general_functions/is_bool.phpt
index 7c8d693a1b..70aaed9c3f 100644
--- a/ext/standard/tests/general_functions/is_bool.phpt
+++ b/ext/standard/tests/general_functions/is_bool.phpt
@@ -134,7 +134,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_bool() with valid boolean values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_float_64bit.phpt b/ext/standard/tests/general_functions/is_float_64bit.phpt
index dc6df0f109..1815e53c00 100644
--- a/ext/standard/tests/general_functions/is_float_64bit.phpt
+++ b/ext/standard/tests/general_functions/is_float_64bit.phpt
@@ -131,7 +131,7 @@ foreach ($not_floats as $value ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_float(), is_double() and is_real() with float values***
-- Iteration 1 --
bool(false)
diff --git a/ext/standard/tests/general_functions/is_int_64bit.phpt b/ext/standard/tests/general_functions/is_int_64bit.phpt
index e5c6ce77e0..8e5e9332c0 100644
--- a/ext/standard/tests/general_functions/is_int_64bit.phpt
+++ b/ext/standard/tests/general_functions/is_int_64bit.phpt
@@ -136,7 +136,7 @@ foreach ($not_int_types as $type ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_int(), is_integer() & is_long() with valid integer values ***
--Iteration 1--
bool(true)
diff --git a/ext/standard/tests/general_functions/is_null.phpt b/ext/standard/tests/general_functions/is_null.phpt
index 4fc325c744..6560707e57 100644
--- a/ext/standard/tests/general_functions/is_null.phpt
+++ b/ext/standard/tests/general_functions/is_null.phpt
@@ -134,7 +134,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_null() with valid null values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_numeric.phpt b/ext/standard/tests/general_functions/is_numeric.phpt
index 491aa5d15b..8883c57ac2 100644
--- a/ext/standard/tests/general_functions/is_numeric.phpt
+++ b/ext/standard/tests/general_functions/is_numeric.phpt
@@ -152,7 +152,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_numeric() with valid numeric values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_object.phpt b/ext/standard/tests/general_functions/is_object.phpt
index dd0e7689fd..8a5ac1bcbe 100644
--- a/ext/standard/tests/general_functions/is_object.phpt
+++ b/ext/standard/tests/general_functions/is_object.phpt
@@ -145,7 +145,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_object() with valid objects ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_scalar.phpt b/ext/standard/tests/general_functions/is_scalar.phpt
index f7ef3f5317..6a89da9f56 100644
--- a/ext/standard/tests/general_functions/is_scalar.phpt
+++ b/ext/standard/tests/general_functions/is_scalar.phpt
@@ -112,7 +112,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_string.phpt b/ext/standard/tests/general_functions/is_string.phpt
index 7760f79831..a4ef7a47b1 100644
--- a/ext/standard/tests/general_functions/is_string.phpt
+++ b/ext/standard/tests/general_functions/is_string.phpt
@@ -147,7 +147,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_string() with valid string values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/ob_get_length_basic.phpt b/ext/standard/tests/general_functions/ob_get_length_basic.phpt
index 46d5d2d0f6..0eb1adf9ee 100644
--- a/ext/standard/tests/general_functions/ob_get_length_basic.phpt
+++ b/ext/standard/tests/general_functions/ob_get_length_basic.phpt
@@ -32,7 +32,7 @@ dump_string_length( '' );
dump_string_length( null );
?>
---EXPECTF--
+--EXPECT--
*** Testing ob_get_length() : basic functionality ***
bool(false)
int(26)
diff --git a/ext/standard/tests/general_functions/php_uname_error.phpt b/ext/standard/tests/general_functions/php_uname_error.phpt
index 23859a33ac..c64c15b404 100644
--- a/ext/standard/tests/general_functions/php_uname_error.phpt
+++ b/ext/standard/tests/general_functions/php_uname_error.phpt
@@ -13,7 +13,7 @@ echo "\n-- Testing php_uname() function with invalid mode --\n";
var_dump( php_uname('z') == php_uname('z') );
?>
---EXPECTF--
+--EXPECT--
*** Testing php_uname() - error test
-- Testing php_uname() function with invalid mode --
diff --git a/ext/standard/tests/general_functions/print_r.phpt b/ext/standard/tests/general_functions/print_r.phpt
index 3f24a5bc9d..d2ec63f5b4 100644
--- a/ext/standard/tests/general_functions/print_r.phpt
+++ b/ext/standard/tests/general_functions/print_r.phpt
@@ -276,7 +276,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing print_r() on integer variables ***
-- Iteration 1 --
diff --git a/ext/standard/tests/general_functions/print_r_64bit.phpt b/ext/standard/tests/general_functions/print_r_64bit.phpt
index a0e9e148c6..5df1637dbd 100644
--- a/ext/standard/tests/general_functions/print_r_64bit.phpt
+++ b/ext/standard/tests/general_functions/print_r_64bit.phpt
@@ -280,7 +280,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing print_r() on integer variables ***
-- Iteration 1 --
diff --git a/ext/standard/tests/general_functions/var_dump_64bit.phpt b/ext/standard/tests/general_functions/var_dump_64bit.phpt
index 0600775f58..7b74761586 100644
--- a/ext/standard/tests/general_functions/var_dump_64bit.phpt
+++ b/ext/standard/tests/general_functions/var_dump_64bit.phpt
@@ -279,7 +279,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing var_dump() on integer variables ***
-- Iteration 1 --
int(0)
diff --git a/ext/standard/tests/general_functions/var_export-locale.phpt b/ext/standard/tests/general_functions/var_export-locale.phpt
index bdc61d9928..9f9cd0e896 100644
--- a/ext/standard/tests/general_functions/var_export-locale.phpt
+++ b/ext/standard/tests/general_functions/var_export-locale.phpt
@@ -307,7 +307,7 @@ echo "\nDone";
?>
---EXPECTF--
+--EXPECT--
*** Testing var_export() with integer values ***
*** Output for integer values ***
diff --git a/ext/standard/tests/image/image_type_to_extension.phpt b/ext/standard/tests/image/image_type_to_extension.phpt
index 249df57943..448aac4e99 100644
--- a/ext/standard/tests/image/image_type_to_extension.phpt
+++ b/ext/standard/tests/image/image_type_to_extension.phpt
@@ -33,7 +33,7 @@ image_type_to_extension()
var_dump(image_type_to_extension(0));
?>
Done
---EXPECTF--
+--EXPECT--
Constant: IMAGETYPE_GIF
With dot: .gif
Without dot: gif
diff --git a/ext/standard/tests/math/lcg_value_basic.phpt b/ext/standard/tests/math/lcg_value_basic.phpt
index 95811c6f3c..ca76b5c836 100644
--- a/ext/standard/tests/math/lcg_value_basic.phpt
+++ b/ext/standard/tests/math/lcg_value_basic.phpt
@@ -24,7 +24,7 @@ if ($i != 100) {
echo "MATHS test script completed\n";
?>
---EXPECTF--
+--EXPECT--
MATHS test script started
lcg_value tests...
diff --git a/ext/standard/tests/network/inet.phpt b/ext/standard/tests/network/inet.phpt
index 29b4aa0e6b..b25265446f 100644
--- a/ext/standard/tests/network/inet.phpt
+++ b/ext/standard/tests/network/inet.phpt
@@ -35,7 +35,7 @@ foreach ($array as $val) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(9) "127.0.0.1"
string(13) "255.255.255.0"
bool(false)
diff --git a/ext/standard/tests/network/ip_x86_64.phpt b/ext/standard/tests/network/ip_x86_64.phpt
index c659eb70fb..dd81bde55c 100644
--- a/ext/standard/tests/network/ip_x86_64.phpt
+++ b/ext/standard/tests/network/ip_x86_64.phpt
@@ -29,7 +29,7 @@ var_dump(long2ip(-110000));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(2130706433)
string(9) "127.0.0.1"
int(167772161)
diff --git a/ext/standard/tests/random/random_int.phpt b/ext/standard/tests/random/random_int.phpt
index 94654a7f72..6fd04420ee 100644
--- a/ext/standard/tests/random/random_int.phpt
+++ b/ext/standard/tests/random/random_int.phpt
@@ -15,7 +15,7 @@ var_dump(is_int(random_int(PHP_INT_MIN, PHP_INT_MAX)));
var_dump(random_int(42,42));
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(true)
diff --git a/ext/standard/tests/serialize/bug45706.phpt b/ext/standard/tests/serialize/bug45706.phpt
index cc71dec4e6..c29081cab7 100644
--- a/ext/standard/tests/serialize/bug45706.phpt
+++ b/ext/standard/tests/serialize/bug45706.phpt
@@ -12,7 +12,7 @@ $s = serialize($x);
$s = str_replace("Foo", "Bar", $s);
$y = unserialize($s);
var_dump($y);
---EXPECTF--
+--EXPECT--
array(2) {
[0]=>
object(__PHP_Incomplete_Class)#3 (5) {
diff --git a/ext/standard/tests/streams/bug61115.phpt b/ext/standard/tests/streams/bug61115.phpt
index 3caffde232..ce6b57651c 100644
--- a/ext/standard/tests/streams/bug61115.phpt
+++ b/ext/standard/tests/streams/bug61115.phpt
@@ -13,5 +13,5 @@ try {
echo $e->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
Object of class Closure could not be converted to string
diff --git a/ext/standard/tests/streams/bug78662.phpt b/ext/standard/tests/streams/bug78662.phpt
index e874d5aef6..2ea00b67b1 100644
--- a/ext/standard/tests/streams/bug78662.phpt
+++ b/ext/standard/tests/streams/bug78662.phpt
@@ -26,7 +26,7 @@ var_dump(fwrite($f, "bar"));
var_dump(fread($f, 100));
?>
Done
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
Done
diff --git a/ext/standard/tests/streams/stream_set_timeout_error.phpt b/ext/standard/tests/streams/stream_set_timeout_error.phpt
index 7dcc645422..64e9aa5773 100644
--- a/ext/standard/tests/streams/stream_set_timeout_error.phpt
+++ b/ext/standard/tests/streams/stream_set_timeout_error.phpt
@@ -41,7 +41,7 @@ fclose($server);
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing stream_set_timeout() : error conditions ***
-- Testing stream_set_timeout() function with a closed socket --
diff --git a/ext/standard/tests/strings/chr_error.phpt b/ext/standard/tests/strings/chr_error.phpt
index 2603b69210..b6bd9973b6 100644
--- a/ext/standard/tests/strings/chr_error.phpt
+++ b/ext/standard/tests/strings/chr_error.phpt
@@ -26,7 +26,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing chr() : error conditions ***
-- Testing chr() function with no arguments --
diff --git a/ext/standard/tests/strings/fprintf_error.phpt b/ext/standard/tests/strings/fprintf_error.phpt
index 1ffc188051..bfef30a75b 100644
--- a/ext/standard/tests/strings/fprintf_error.phpt
+++ b/ext/standard/tests/strings/fprintf_error.phpt
@@ -29,7 +29,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing Error Conditions ***
Wrong parameter count for fprintf()
Wrong parameter count for fprintf()
diff --git a/ext/standard/tests/strings/htmlentities24.phpt b/ext/standard/tests/strings/htmlentities24.phpt
index f2abfd5ba8..2a04bd345e 100644
--- a/ext/standard/tests/strings/htmlentities24.phpt
+++ b/ext/standard/tests/strings/htmlentities24.phpt
@@ -37,7 +37,7 @@ var_dump( htmlentities($str, ENT_COMPAT) );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Retrieving htmlentities for 256 characters ***
string(12) "636872283029"
string(12) "636872283129"
diff --git a/ext/standard/tests/strings/htmlspecialchars.phpt b/ext/standard/tests/strings/htmlspecialchars.phpt
index 6e5c5fac36..5677da6fe2 100644
--- a/ext/standard/tests/strings/htmlspecialchars.phpt
+++ b/ext/standard/tests/strings/htmlspecialchars.phpt
@@ -37,7 +37,7 @@ var_dump( htmlspecialchars($str, ENT_COMPAT) );
echo "Done\n"
?>
---EXPECTF--
+--EXPECT--
*** Retrieving htmlspecialchars for 256 characters ***
string(12) "636872283029"
string(12) "636872283129"
diff --git a/ext/standard/tests/strings/ltrim.phpt b/ext/standard/tests/strings/ltrim.phpt
index 51287e04d7..8ac57ca92e 100644
--- a/ext/standard/tests/strings/ltrim.phpt
+++ b/ext/standard/tests/strings/ltrim.phpt
@@ -41,7 +41,7 @@ var_dump( ltrim($str, "\nusi") );
echo "\nDone\n";
?>
---EXPECTF--
+--EXPECT--
*** Output for Error Conditions ***
*** Using heredoc string ***
diff --git a/ext/standard/tests/strings/metaphone.phpt b/ext/standard/tests/strings/metaphone.phpt
index 2bc16b3248..a6b52e3934 100644
--- a/ext/standard/tests/strings/metaphone.phpt
+++ b/ext/standard/tests/strings/metaphone.phpt
@@ -24,7 +24,7 @@ foreach($array as $str) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(0) ""
bool(false)
diff --git a/ext/standard/tests/strings/parse_str_basic1.phpt b/ext/standard/tests/strings/parse_str_basic1.phpt
index 60277fa184..38652ba0fa 100644
--- a/ext/standard/tests/strings/parse_str_basic1.phpt
+++ b/ext/standard/tests/strings/parse_str_basic1.phpt
@@ -27,7 +27,7 @@ var_dump(parse_str($s1, $res3_array));
var_dump($res3_array);
?>
---EXPECTF--
+--EXPECT--
*** Testing parse_str() : basic functionality ***
Basic test WITH undefined var for result arg
diff --git a/ext/standard/tests/strings/parse_str_basic3.phpt b/ext/standard/tests/strings/parse_str_basic3.phpt
index 25b5f8745d..0ea88a365b 100644
--- a/ext/standard/tests/strings/parse_str_basic3.phpt
+++ b/ext/standard/tests/strings/parse_str_basic3.phpt
@@ -73,7 +73,7 @@ var_dump(parse_str($str, $res));
var_dump($res);
?>
---EXPECTF--
+--EXPECT--
*** Testing parse_str() : basic functionality ***
Test string with array values and results array
diff --git a/ext/standard/tests/strings/printf_error.phpt b/ext/standard/tests/strings/printf_error.phpt
index 62591e9e6f..e9fc0a4383 100644
--- a/ext/standard/tests/strings/printf_error.phpt
+++ b/ext/standard/tests/strings/printf_error.phpt
@@ -61,7 +61,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing printf() : error conditions ***
-- Testing printf() function with Zero arguments --
diff --git a/ext/standard/tests/strings/rtrim.phpt b/ext/standard/tests/strings/rtrim.phpt
index 223a839f58..2fc531faad 100644
--- a/ext/standard/tests/strings/rtrim.phpt
+++ b/ext/standard/tests/strings/rtrim.phpt
@@ -42,7 +42,7 @@ var_dump( rtrim($str, "ing") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Output for Normal Behaviour ***
string(10) "rtrim test"
string(13) "rtrim test "
diff --git a/ext/standard/tests/strings/soundex.phpt b/ext/standard/tests/strings/soundex.phpt
index ef61ac495e..c4acc2ff68 100644
--- a/ext/standard/tests/strings/soundex.phpt
+++ b/ext/standard/tests/strings/soundex.phpt
@@ -30,7 +30,7 @@ foreach ($array as $str) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
bool(false)
string(4) "0000"
string(4) "F650"
diff --git a/ext/standard/tests/strings/sprintf_variation15.phpt b/ext/standard/tests/strings/sprintf_variation15.phpt
index 07774a92ec..66d85647ff 100644
--- a/ext/standard/tests/strings/sprintf_variation15.phpt
+++ b/ext/standard/tests/strings/sprintf_variation15.phpt
@@ -74,7 +74,7 @@ foreach($string_values as $string_value) {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing sprintf() : string formats with string values ***
-- Iteration 1 --
diff --git a/ext/standard/tests/strings/sscanf_error.phpt b/ext/standard/tests/strings/sscanf_error.phpt
index ffaefb8418..0af8f9ed14 100644
--- a/ext/standard/tests/strings/sscanf_error.phpt
+++ b/ext/standard/tests/strings/sscanf_error.phpt
@@ -20,7 +20,7 @@ try {
echo $exception->getMessage() . "\n";
}
?>
---EXPECTF--
+--EXPECT--
*** Testing sscanf() : error conditions ***
-- Testing sscanf() function with more than expected no. of arguments --
diff --git a/ext/standard/tests/strings/str_ireplace.phpt b/ext/standard/tests/strings/str_ireplace.phpt
index a5a35769e4..c360004a14 100644
--- a/ext/standard/tests/strings/str_ireplace.phpt
+++ b/ext/standard/tests/strings/str_ireplace.phpt
@@ -44,7 +44,7 @@ var_dump($Data = str_ireplace("\n", "<br>", $Data));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(8) "aaaaaaaT"
string(8) "aaaaaaaT"
diff --git a/ext/standard/tests/strings/stristr.phpt b/ext/standard/tests/strings/stristr.phpt
index 7b1b5312a1..09e6cff53c 100644
--- a/ext/standard/tests/strings/stristr.phpt
+++ b/ext/standard/tests/strings/stristr.phpt
@@ -14,7 +14,7 @@ stristr() function
var_dump(md5(stristr("\\\\a\\", "\\a")));
var_dump(stristr("tEsT sTrInG", " "));
?>
---EXPECTF--
+--EXPECT--
string(11) "tEsT sTrInG"
string(6) "sTrInG"
string(6) "sTrInG"
diff --git a/ext/standard/tests/strings/strrchr_variation1.phpt b/ext/standard/tests/strings/strrchr_variation1.phpt
index a75dd96bbf..f28571ba7f 100644
--- a/ext/standard/tests/strings/strrchr_variation1.phpt
+++ b/ext/standard/tests/strings/strrchr_variation1.phpt
@@ -81,7 +81,7 @@ for($index=0; $index<count($needle); $index++) {
}
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strrchr() function: with various double quoted strings ***
-- Iteration 1 --
string(16) "lo123456he #4 A "
diff --git a/ext/standard/tests/strings/strrchr_variation2.phpt b/ext/standard/tests/strings/strrchr_variation2.phpt
index 2ff6720fb9..e6e510dd55 100644
--- a/ext/standard/tests/strings/strrchr_variation2.phpt
+++ b/ext/standard/tests/strings/strrchr_variation2.phpt
@@ -81,7 +81,7 @@ for($index=0; $index<count($needle); $index++) {
}
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strrchr() function: with various single quoted strings ***
-- Iteration 1 --
string(22) "lo123456he \x234 \101 "
diff --git a/ext/standard/tests/strings/strtolower.phpt b/ext/standard/tests/strings/strtolower.phpt
index 7c7e2bb4c7..041b66a00c 100644
--- a/ext/standard/tests/strings/strtolower.phpt
+++ b/ext/standard/tests/strings/strtolower.phpt
@@ -65,7 +65,7 @@ else
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strtolower() with 128 chars ***
00 => 00
01 => 01
diff --git a/ext/standard/tests/strings/strtoupper1.phpt b/ext/standard/tests/strings/strtoupper1.phpt
index c243ff10c7..6c7434ba16 100644
--- a/ext/standard/tests/strings/strtoupper1.phpt
+++ b/ext/standard/tests/strings/strtoupper1.phpt
@@ -65,7 +65,7 @@ else
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strtoupper() with 128 chars ***
00 => 00
01 => 01
diff --git a/ext/standard/tests/strings/strval_error.phpt b/ext/standard/tests/strings/strval_error.phpt
index a363e26f24..88cca824a6 100644
--- a/ext/standard/tests/strings/strval_error.phpt
+++ b/ext/standard/tests/strings/strval_error.phpt
@@ -25,7 +25,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing strval() : error conditions ***
-- Testing strval() function with object which has not toString() method --
diff --git a/ext/standard/tests/strings/substr.phpt b/ext/standard/tests/strings/substr.phpt
index fe687ed1ae..6028c17008 100644
--- a/ext/standard/tests/strings/substr.phpt
+++ b/ext/standard/tests/strings/substr.phpt
@@ -66,7 +66,7 @@ var_dump (substr("abcdef" , 2, NULL) );
echo"\nDone";
?>
---EXPECTF--
+--EXPECT--
--- Iteration 1 ---
-- Variations for two arguments --
diff --git a/ext/standard/tests/strings/trim1.phpt b/ext/standard/tests/strings/trim1.phpt
index 1ad504c61d..a31d7213a1 100644
--- a/ext/standard/tests/strings/trim1.phpt
+++ b/ext/standard/tests/strings/trim1.phpt
@@ -49,7 +49,7 @@ var_dump( trim($str, "us\ning") );
echo "\nDone";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(0) ""
string(1) "0"
diff --git a/ext/standard/tests/strings/vfprintf_error1.phpt b/ext/standard/tests/strings/vfprintf_error1.phpt
index f2057ea388..fdaecd6fb3 100644
--- a/ext/standard/tests/strings/vfprintf_error1.phpt
+++ b/ext/standard/tests/strings/vfprintf_error1.phpt
@@ -42,7 +42,7 @@ $file = 'vfprintf_error1.txt';
unlink( $file );
?>
---EXPECTF--
+--EXPECT--
-- Testing vfprintf() function with more than expected no. of arguments --
Wrong parameter count for vfprintf()
Wrong parameter count for vfprintf()
diff --git a/ext/standard/tests/time/strptime_error.phpt b/ext/standard/tests/time/strptime_error.phpt
index d7eb11fc55..87965cd1a2 100644
--- a/ext/standard/tests/time/strptime_error.phpt
+++ b/ext/standard/tests/time/strptime_error.phpt
@@ -24,7 +24,7 @@ $format = '%b %d %Y %H:%M:%S';
var_dump( strptime('foo', $format) );
?>
---EXPECTF--
+--EXPECT--
*** Testing strptime() : error conditions ***
-- Testing strptime() function on failure --
diff --git a/ext/tokenizer/tests/001.phpt b/ext/tokenizer/tests/001.phpt
index 8e58c81891..006377d5e9 100644
--- a/ext/tokenizer/tests/001.phpt
+++ b/ext/tokenizer/tests/001.phpt
@@ -129,7 +129,7 @@ echo token_name(0x8000000F), "\n";
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
T_INCLUDE
T_INCLUDE_ONCE
T_EVAL
diff --git a/ext/xmlreader/tests/static.phpt b/ext/xmlreader/tests/static.phpt
index 1c6cb5b870..a722e31105 100644
--- a/ext/xmlreader/tests/static.phpt
+++ b/ext/xmlreader/tests/static.phpt
@@ -22,7 +22,7 @@ while ($reader->read()) {
echo $reader->name, "\n";
}
?>
---EXPECTF--
+--EXPECT--
books
books
books
diff --git a/ext/xmlwriter/tests/bug41326.phpt b/ext/xmlwriter/tests/bug41326.phpt
index 886e149261..c04ffe3167 100644
--- a/ext/xmlwriter/tests/bug41326.phpt
+++ b/ext/xmlwriter/tests/bug41326.phpt
@@ -35,7 +35,7 @@ $xw->endElement();
$xw->endDocument();
print $xw->flush(true);
?>
---EXPECTF--
+--EXPECT--
<?xml version="1.0"?>
<test>
<foo/>
diff --git a/tests/output/stream_isatty_err.phpt b/tests/output/stream_isatty_err.phpt
index 55a25f1c9f..e7c1038350 100644
--- a/tests/output/stream_isatty_err.phpt
+++ b/tests/output/stream_isatty_err.phpt
@@ -13,7 +13,7 @@ STDERR
require __DIR__.'/stream_isatty.inc';
testToStdErr();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
diff --git a/tests/output/stream_isatty_in-err.phpt b/tests/output/stream_isatty_in-err.phpt
index 2554eb4689..73514955d4 100644
--- a/tests/output/stream_isatty_in-err.phpt
+++ b/tests/output/stream_isatty_in-err.phpt
@@ -13,7 +13,7 @@ STDIN STDERR
require __DIR__.'/stream_isatty.inc';
testToStdErr();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_in-out-err.phpt b/tests/output/stream_isatty_in-out-err.phpt
index 496bdd100e..9b65e8861b 100644
--- a/tests/output/stream_isatty_in-out-err.phpt
+++ b/tests/output/stream_isatty_in-out-err.phpt
@@ -13,7 +13,7 @@ STDIN STDOUT STDERR
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_in-out.phpt b/tests/output/stream_isatty_in-out.phpt
index d58e9aa05c..c2bb346854 100644
--- a/tests/output/stream_isatty_in-out.phpt
+++ b/tests/output/stream_isatty_in-out.phpt
@@ -13,7 +13,7 @@ STDIN STDOUT
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_out-err.phpt b/tests/output/stream_isatty_out-err.phpt
index e3ec1237bc..dc113a9720 100644
--- a/tests/output/stream_isatty_out-err.phpt
+++ b/tests/output/stream_isatty_out-err.phpt
@@ -13,7 +13,7 @@ STDOUT STDERR
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
diff --git a/tests/output/stream_isatty_out.phpt b/tests/output/stream_isatty_out.phpt
index 3ea4996ac4..f18c986c5a 100644
--- a/tests/output/stream_isatty_out.phpt
+++ b/tests/output/stream_isatty_out.phpt
@@ -13,7 +13,7 @@ STDOUT
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch and 'fork/tests/use-simpler-expect-section' have diverged,
# and have 1 and 1 different commits each, respectively.
# (use "git pull" to merge the remote branch into yours)
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch is up to date with 'fork/tests/use-simpler-expect-section'.
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch is up to date with 'fork/tests/use-simpler-expect-section'.
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
2020-04-28 13:51:24 +08:00
Xinchen Hui
d2c6bf203a
Folder mark
2020-04-28 13:47:04 +08:00
Xinchen Hui
a233e128a5
Use ascii lowercase if locale is default C
2020-04-28 11:33:02 +08:00
Xinchen Hui
5f900b3285
update NEWS
2020-04-28 11:13:33 +08:00
Xinchen Hui
6e2c1d7234
Merge branch 'sse2_strtolower' of https://github.com/laruence/php-src
...
* 'sse2_strtolower' of https://github.com/laruence/php-src :
Also zend_str_tolower_dup_ex
Remove unnecessary register qualifier
SSE2 str_tolower
2020-04-28 11:11:58 +08:00
Xinchen Hui
11491b63f8
Also zend_str_tolower_dup_ex
2020-04-28 11:04:20 +08:00
Dmitry Stogov
5fe723c92d
Fix libtool to provide a simple way to generate only "shared" object files or libraries.
...
- Support for "-shared" option is taken from libtool-2.0 that is already at lease 15 years old.
- Change PHP build system to use "-shared" instead of "--tag=disable-static".
2020-04-27 23:31:54 +03:00
Gabriel Caruso
5dafd7b4fe
Use EXPECT instead of EXPECTF when possible
EXPECTF logic in run tests is considerable, so lets avoid it
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# On branch tests/use-simpler-expect-section
# Your branch is behind 'fork/tests/use-simpler-expect-section' by 1 commit, and can be fast-forwarded.
# (use "git pull" to update your local branch)
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# ------------------------ >8 ------------------------
# Do not modify or remove the line above.
# Everything below it will be ignored.
diff --git a/Zend/tests/005.phpt b/Zend/tests/005.phpt
index f4abfb6c51..413f3205ad 100644
--- a/Zend/tests/005.phpt
+++ b/Zend/tests/005.phpt
@@ -13,7 +13,7 @@ var_dump(strcasecmp("01", "01"));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(0)
int(-3)
int(-1)
diff --git a/Zend/tests/bug27669.phpt b/Zend/tests/bug27669.phpt
index 7067c23e0d..9cd845e337 100644
--- a/Zend/tests/bug27669.phpt
+++ b/Zend/tests/bug27669.phpt
@@ -10,5 +10,5 @@ Bug #27669 (PHP 5 didn't support all possibilities for calling static methods dy
$y[0] = 'hello';
A::{$y[0]}();
?>
---EXPECTF--
+--EXPECT--
Hello World
diff --git a/Zend/tests/bug51827.phpt b/Zend/tests/bug51827.phpt
index 6c3d721716..1a2d9bdf39 100644
--- a/Zend/tests/bug51827.phpt
+++ b/Zend/tests/bug51827.phpt
@@ -13,7 +13,7 @@ register_shutdown_function('ABC');
register_shutdown_function('exploDe');
?>
---EXPECTF--
+--EXPECT--
int(1)
Fatal error: Uncaught ArgumentCountError: explode() expects at least 2 parameters, 0 given in [no active file]:0
diff --git a/Zend/tests/bug63206.phpt b/Zend/tests/bug63206.phpt
index dc7bb1fd1d..6aba55eca1 100644
--- a/Zend/tests/bug63206.phpt
+++ b/Zend/tests/bug63206.phpt
@@ -22,7 +22,7 @@ set_error_handler(function() {
$triggerNotice1++;
$triggerNotice2++;
?>
---EXPECTF--
+--EXPECT--
Second handler
Internal handler
Second handler
diff --git a/Zend/tests/bug63206_1.phpt b/Zend/tests/bug63206_1.phpt
index f08f913824..d054211638 100644
--- a/Zend/tests/bug63206_1.phpt
+++ b/Zend/tests/bug63206_1.phpt
@@ -22,5 +22,5 @@ restore_error_handler();
$triggerNotice++;
?>
---EXPECTF--
+--EXPECT--
Second handler
diff --git a/Zend/tests/bug63206_2.phpt b/Zend/tests/bug63206_2.phpt
index 7a2bf38543..a4a67f577e 100644
--- a/Zend/tests/bug63206_2.phpt
+++ b/Zend/tests/bug63206_2.phpt
@@ -22,5 +22,5 @@ restore_exception_handler();
throw new Exception();
?>
---EXPECTF--
+--EXPECT--
Second handler
diff --git a/Zend/tests/incompat_ctx_user.phpt b/Zend/tests/incompat_ctx_user.phpt
index 8c7461e4f7..3fe0456175 100644
--- a/Zend/tests/incompat_ctx_user.phpt
+++ b/Zend/tests/incompat_ctx_user.phpt
@@ -16,5 +16,5 @@ try {
echo "Exception: " . $e->getMessage() . "\n";
}
?>
---EXPECTF--
+--EXPECT--
Exception: Non-static method A::foo() cannot be called statically
diff --git a/Zend/tests/instanceof_001.phpt b/Zend/tests/instanceof_001.phpt
index 27170420f0..02b7d59baf 100644
--- a/Zend/tests/instanceof_001.phpt
+++ b/Zend/tests/instanceof_001.phpt
@@ -17,7 +17,7 @@ var_dump($c[0] instanceof stdClass);
var_dump(@$inexistent instanceof stdClass);
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(true)
diff --git a/Zend/tests/unexpected_ref_bug.phpt b/Zend/tests/unexpected_ref_bug.phpt
index 0d78410d1a..172b1e6224 100644
--- a/Zend/tests/unexpected_ref_bug.phpt
+++ b/Zend/tests/unexpected_ref_bug.phpt
@@ -15,5 +15,5 @@ $my_var = str_repeat("A", 64);
$data = call_user_func_array("str_replace", array(&$my_var, new Test(), "foo"));
echo "Done.\n";
?>
---EXPECTF--
+--EXPECT--
Done.
diff --git a/ext/date/tests/012.phpt b/ext/date/tests/012.phpt
index ee8faf1c00..0997ef047c 100644
--- a/ext/date/tests/012.phpt
+++ b/ext/date/tests/012.phpt
@@ -13,7 +13,7 @@ var_dump(date_isodate_set($dto, 2006, 100, 15));
var_dump($dto->format("Y/m/d H:i:s"));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
object(DateTime)#1 (3) {
["date"]=>
string(26) "2006-01-23 00:00:00.000000"
diff --git a/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt b/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
index 715ea63dc9..f96753b019 100644
--- a/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
+++ b/ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
@@ -14,6 +14,6 @@ try {
echo $exception->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
DatePeriod::__construct(): The recurrence count '0' is invalid. Needs to be > 0
DatePeriod::__construct(): The recurrence count '-1' is invalid. Needs to be > 0
diff --git a/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt b/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
index cb948e9df5..670dcb2ee3 100644
--- a/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
+++ b/ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
@@ -22,7 +22,7 @@ echo "\n-- Format a sample entry --\n";
var_dump( $abbr["acst"] );
?>
---EXPECTF--
+--EXPECT--
*** Testing DateTimeZone::listAbbreviations() : basic functionality ***
string(5) "array"
int(144)
diff --git a/ext/date/tests/date_parse_001.phpt b/ext/date/tests/date_parse_001.phpt
index 0d58c1f8e9..36f8d9bbdd 100644
--- a/ext/date/tests/date_parse_001.phpt
+++ b/ext/date/tests/date_parse_001.phpt
@@ -14,7 +14,7 @@ Test basic date_parse()
var_dump(date_parse(""));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(12) {
["year"]=>
int(2006)
diff --git a/ext/date/tests/date_parse_error.phpt b/ext/date/tests/date_parse_error.phpt
index 24b0094c9e..6a5180fdfb 100644
--- a/ext/date/tests/date_parse_error.phpt
+++ b/ext/date/tests/date_parse_error.phpt
@@ -17,7 +17,7 @@ $invalid_date = "2OO9-02--27 10:00?00.5";
var_dump( date_parse($invalid_date) );
?>
---EXPECTF--
+--EXPECT--
*** Testing date_parse() : error conditions ***
-- Testing date_parse() function with unexpected characters in $date argument --
diff --git a/ext/date/tests/gmmktime_basic.phpt b/ext/date/tests/gmmktime_basic.phpt
index 303bd9b010..f96b635c08 100644
--- a/ext/date/tests/gmmktime_basic.phpt
+++ b/ext/date/tests/gmmktime_basic.phpt
@@ -22,6 +22,6 @@ $year = 2008;
var_dump( gmmktime($hour, $min, $sec, $mon, $day, $year) );
?>
---EXPECTF--
+--EXPECT--
*** Testing gmmktime() : basic functionality ***
int(1218182888)
diff --git a/ext/date/tests/mktime_error.phpt b/ext/date/tests/mktime_error.phpt
index e40e40f38d..8bdb61df7b 100644
--- a/ext/date/tests/mktime_error.phpt
+++ b/ext/date/tests/mktime_error.phpt
@@ -35,7 +35,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing mktime() : error conditions ***
-- Testing mktime() function with Zero arguments --
diff --git a/ext/date/tests/timezone_abbreviations_list_basic1.phpt b/ext/date/tests/timezone_abbreviations_list_basic1.phpt
index b3bf7c84a1..0640b8a83d 100644
--- a/ext/date/tests/timezone_abbreviations_list_basic1.phpt
+++ b/ext/date/tests/timezone_abbreviations_list_basic1.phpt
@@ -22,7 +22,7 @@ echo "\n-- Format a sample entry --\n";
var_dump( $abbr["acst"] );
?>
---EXPECTF--
+--EXPECT--
*** Testing timezone_abbreviations_list() : basic functionality ***
string(5) "array"
int(144)
diff --git a/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt b/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
index 50a1559f58..855acaaed8 100644
--- a/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
+++ b/ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
@@ -25,7 +25,7 @@ $finfo = new finfo( FILEINFO_NONE, $magicFile );
var_dump( $finfo->set_flags( FILEINFO_MIME ) );
?>
---EXPECTF--
+--EXPECT--
*** Testing finfo_set_flags() : basic functionality ***
bool(true)
bool(true)
diff --git a/ext/fileinfo/tests/finfo_set_flags_basic.phpt b/ext/fileinfo/tests/finfo_set_flags_basic.phpt
index 95f2648f51..fe2921b560 100644
--- a/ext/fileinfo/tests/finfo_set_flags_basic.phpt
+++ b/ext/fileinfo/tests/finfo_set_flags_basic.phpt
@@ -25,7 +25,7 @@ $finfo = new finfo( FILEINFO_NONE, $magicFile );
var_dump( $finfo->set_flags( FILEINFO_MIME ) );
?>
---EXPECTF--
+--EXPECT--
*** Testing finfo_set_flags() : basic functionality ***
bool(true)
bool(true)
diff --git a/ext/filter/tests/007.phpt b/ext/filter/tests/007.phpt
index dc966b8cc9..b5f285342b 100644
--- a/ext/filter/tests/007.phpt
+++ b/ext/filter/tests/007.phpt
@@ -23,7 +23,7 @@ var_dump(filter_has_var(INPUT_POST, ""));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(false)
diff --git a/ext/filter/tests/008.phpt b/ext/filter/tests/008.phpt
index 75e0968c62..1d4d64529d 100644
--- a/ext/filter/tests/008.phpt
+++ b/ext/filter/tests/008.phpt
@@ -9,7 +9,7 @@ var_dump(filter_list());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(21) {
[0]=>
string(3) "int"
diff --git a/ext/filter/tests/010.phpt b/ext/filter/tests/010.phpt
index 14f8db01af..46b6044668 100644
--- a/ext/filter/tests/010.phpt
+++ b/ext/filter/tests/010.phpt
@@ -17,7 +17,7 @@ var_dump(filter_var(1, 0, array()));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
array(7) {
[0]=>
int(1)
diff --git a/ext/hash/tests/hash_hkdf_edges.phpt b/ext/hash/tests/hash_hkdf_edges.phpt
index cee86ae82e..ceb21631d1 100644
--- a/ext/hash/tests/hash_hkdf_edges.phpt
+++ b/ext/hash/tests/hash_hkdf_edges.phpt
@@ -25,7 +25,7 @@ catch (\Error $e) {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing hash_hkdf(): edge cases ***
Length < digestSize: 98b16391063ece
Length % digestSize != 0: 98b16391063ecee006a3ca8ee5776b1e5f
diff --git a/ext/hash/tests/hash_hmac_file_basic.phpt b/ext/hash/tests/hash_hmac_file_basic.phpt
index 4569c46c35..11b9d05738 100644
--- a/ext/hash/tests/hash_hmac_file_basic.phpt
+++ b/ext/hash/tests/hash_hmac_file_basic.phpt
@@ -57,7 +57,7 @@ echo "sha256(raw): " . bin2hex(hash_hmac_file('sha256', $file, $key, TRUE)). "\n
unlink($file);
?>
---EXPECTF--
+--EXPECT--
*** Testing hash_hmac_file() : basic functionality ***
gost: 94c39a40d5db852a8dc3d24e37eebf2d53e3d711457c59cd02b614f792a9d918
haval128,3: f1cea637451097d790354a86de3f54a3
diff --git a/ext/json/tests/json_last_error_msg_error.phpt b/ext/json/tests/json_last_error_msg_error.phpt
index 75b06f72a2..0eb55c4c66 100644
--- a/ext/json/tests/json_last_error_msg_error.phpt
+++ b/ext/json/tests/json_last_error_msg_error.phpt
@@ -14,6 +14,6 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
string(8) "No error"
json_last_error_msg() expects exactly 0 parameters, 1 given
diff --git a/ext/libxml/tests/bug76777.phpt b/ext/libxml/tests/bug76777.phpt
index 5e15024b81..c50e52203f 100644
--- a/ext/libxml/tests/bug76777.phpt
+++ b/ext/libxml/tests/bug76777.phpt
@@ -29,7 +29,7 @@ libxml_set_external_entity_loader(function($p,$s,$c) {
$dom=new DOMDocument($xml);
$dom->schemaValidateSource($xsd);
?>
---EXPECTF--
+--EXPECT--
NULL
string(15) "nonexistent.xsd"
array(4) {
diff --git a/ext/pcre/tests/preg_replace_error2.phpt b/ext/pcre/tests/preg_replace_error2.phpt
index 2401e0bb49..d7748bf954 100644
--- a/ext/pcre/tests/preg_replace_error2.phpt
+++ b/ext/pcre/tests/preg_replace_error2.phpt
@@ -29,7 +29,7 @@ try {
}
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing preg_replace() : error conditions ***
Arg value is: this is a string
diff --git a/ext/pcre/tests/split2.phpt b/ext/pcre/tests/split2.phpt
index 5fafee3b87..3d9714a420 100644
--- a/ext/pcre/tests/split2.phpt
+++ b/ext/pcre/tests/split2.phpt
@@ -19,7 +19,7 @@ var_dump(preg_split('/(\d*)/', 'ab2c3u'));
var_dump(preg_last_error() == PREG_RECURSION_LIMIT_ERROR);
?>
---EXPECTF--
+--EXPECT--
array(15) {
[0]=>
string(0) ""
diff --git a/ext/phar/tests/phar_isvalidpharfilename.phpt b/ext/phar/tests/phar_isvalidpharfilename.phpt
index 8b9088b9b3..d44c0603e9 100644
--- a/ext/phar/tests/phar_isvalidpharfilename.phpt
+++ b/ext/phar/tests/phar_isvalidpharfilename.phpt
@@ -72,7 +72,7 @@ var_dump(Phar::isValidPharFilename('dir.phar.php', false));
--CLEAN--
<?php
rmdir(__DIR__ . '/.phar');
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
bool(false)
diff --git a/ext/phar/tests/pharfileinfo_chmod.phpt b/ext/phar/tests/pharfileinfo_chmod.phpt
index 822b5ac628..26d7257602 100644
--- a/ext/phar/tests/pharfileinfo_chmod.phpt
+++ b/ext/phar/tests/pharfileinfo_chmod.phpt
@@ -24,5 +24,5 @@ $b->chmod(0666);
?>
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar'); ?>
---EXPECTF--
+--EXPECT--
Phar entry "a" is a temporary directory (not an actual entry in the archive), cannot chmod
diff --git a/ext/phar/tests/pharfileinfo_setmetadata.phpt b/ext/phar/tests/pharfileinfo_setmetadata.phpt
index 38e23f706d..8b4385ad5f 100644
--- a/ext/phar/tests/pharfileinfo_setmetadata.phpt
+++ b/ext/phar/tests/pharfileinfo_setmetadata.phpt
@@ -40,7 +40,7 @@ echo $e->getMessage(), "\n";
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar'); ?>
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.tar'); ?>
---EXPECTF--
+--EXPECT--
Phar entry is a temporary directory (not an actual entry in the archive), cannot set metadata
Phar entry is a temporary directory (not an actual entry in the archive), cannot delete metadata
Write operations disabled by the php.ini setting phar.readonly
diff --git a/ext/phar/tests/stat2_5.3.phpt b/ext/phar/tests/stat2_5.3.phpt
index 19acc3ba99..9e9e158602 100644
--- a/ext/phar/tests/stat2_5.3.phpt
+++ b/ext/phar/tests/stat2_5.3.phpt
@@ -35,7 +35,7 @@ include $fname3;
--CLEAN--
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.phar.tar'); ?>
<?php unlink(__DIR__ . '/' . basename(__FILE__, '.clean.php') . '.tar'); ?>
---EXPECTF--
+--EXPECT--
bool(true)
is_link
bool(false)
diff --git a/ext/posix/tests/posix_getgrgid_error.phpt b/ext/posix/tests/posix_getgrgid_error.phpt
index e9dbe2a6ce..36ffcf4952 100644
--- a/ext/posix/tests/posix_getgrgid_error.phpt
+++ b/ext/posix/tests/posix_getgrgid_error.phpt
@@ -20,7 +20,7 @@ var_dump( posix_getgrgid($gid));
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getgrgid() : error conditions ***
-- Testing posix_getgrgid() function with a negative group id --
diff --git a/ext/posix/tests/posix_getpgid_error.phpt b/ext/posix/tests/posix_getpgid_error.phpt
index 19e306b2ee..85f12d4917 100644
--- a/ext/posix/tests/posix_getpgid_error.phpt
+++ b/ext/posix/tests/posix_getpgid_error.phpt
@@ -22,7 +22,7 @@ var_dump( posix_getpgid($pid) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getpgid() : error conditions ***
-- Testing posix_getpgid() with negative pid --
diff --git a/ext/posix/tests/posix_getpwuid_error.phpt b/ext/posix/tests/posix_getpwuid_error.phpt
index 365033b689..b4ec515e74 100644
--- a/ext/posix/tests/posix_getpwuid_error.phpt
+++ b/ext/posix/tests/posix_getpwuid_error.phpt
@@ -20,7 +20,7 @@ var_dump( posix_getpwuid($uid) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_getpwuid() : error conditions ***
-- Testing posix_getpwuid() function negative uid --
diff --git a/ext/posix/tests/posix_getsid_error.phpt b/ext/posix/tests/posix_getsid_error.phpt
index 8e05a23496..08080230aa 100644
--- a/ext/posix/tests/posix_getsid_error.phpt
+++ b/ext/posix/tests/posix_getsid_error.phpt
@@ -15,5 +15,5 @@ PHP Testfest Berlin 2009-05-10
<?php
var_dump( posix_getsid(-1) );
?>
---EXPECTF--
+--EXPECT--
bool(false)
diff --git a/ext/posix/tests/posix_initgroups.phpt b/ext/posix/tests/posix_initgroups.phpt
index 20cf8cef8b..c77acfe3a4 100644
--- a/ext/posix/tests/posix_initgroups.phpt
+++ b/ext/posix/tests/posix_initgroups.phpt
@@ -11,5 +11,5 @@ if (!function_exists('posix_initgroups')) die('skip posix_initgroups() not found
var_dump(posix_initgroups(NULL, NULL));
?>
---EXPECTF--
+--EXPECT--
bool(false)
diff --git a/ext/posix/tests/posix_kill_error.phpt b/ext/posix/tests/posix_kill_error.phpt
index 89474c4994..ea9b4f45dc 100644
--- a/ext/posix/tests/posix_kill_error.phpt
+++ b/ext/posix/tests/posix_kill_error.phpt
@@ -28,7 +28,7 @@ var_dump( posix_kill($pid, 999) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_kill() : error conditions ***
-- Testing posix_kill() function with invalid signal --
diff --git a/ext/posix/tests/posix_strerror_error.phpt b/ext/posix/tests/posix_strerror_error.phpt
index 60b096656a..2792ff5b3b 100644
--- a/ext/posix/tests/posix_strerror_error.phpt
+++ b/ext/posix/tests/posix_strerror_error.phpt
@@ -20,7 +20,7 @@ echo gettype( posix_strerror($errno) )."\n";
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing posix_strerror() : error conditions ***
-- Testing posix_strerror() function with invalid error number --
diff --git a/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt b/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
index a135939052..607fead65c 100644
--- a/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
+++ b/ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
@@ -16,7 +16,7 @@ var_dump($rc->hasProperty(1));
var_dump($rc->hasProperty(1.5));
var_dump($rc->hasProperty(true));
?>
---EXPECTF--
+--EXPECT--
Check invalid params:
bool(false)
bool(false)
diff --git a/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt b/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
index 728ddf9265..7e45eec411 100644
--- a/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
+++ b/ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
@@ -43,7 +43,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing ReflectionMethod::getClosure() : error conditions ***
-- Testing ReflectionMethod::getClosure() function with invalid object --
diff --git a/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt b/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
index 113cabbbeb..c3bab48d6f 100644
--- a/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
+++ b/ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
@@ -69,7 +69,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
Non-instance:
string(72) "Given object is not an instance of the class this method was declared in"
diff --git a/ext/reflection/tests/ReflectionObject_getName_basic.phpt b/ext/reflection/tests/ReflectionObject_getName_basic.phpt
index 1885695cb1..94ad1e2c7b 100644
--- a/ext/reflection/tests/ReflectionObject_getName_basic.phpt
+++ b/ext/reflection/tests/ReflectionObject_getName_basic.phpt
@@ -15,7 +15,7 @@ $r3 = new ReflectionObject($r2);
var_dump($r3->getName());
?>
---EXPECTF--
+--EXPECT--
string(8) "stdClass"
string(1) "C"
string(16) "ReflectionObject"
diff --git a/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt b/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
index 1472615178..7defcb76e0 100644
--- a/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
+++ b/ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
@@ -25,7 +25,7 @@ reflectProperty("TestClass", "prot");
reflectProperty("TestClass", "priv");
?>
---EXPECTF--
+--EXPECT--
**********************************
Reflecting on property TestClass::pub
diff --git a/ext/reflection/tests/ReflectionProperty_setValue_error.phpt b/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
index f58590b3ea..1f0c2b5f2b 100644
--- a/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
+++ b/ext/reflection/tests/ReflectionProperty_setValue_error.phpt
@@ -32,7 +32,7 @@ $propInfo = new ReflectionProperty('TestClass', 'pub2');
var_dump($propInfo->setValue($instanceWithNoProperties, "NewValue"));
var_dump($instanceWithNoProperties->pub2);
?>
---EXPECTF--
+--EXPECT--
Protected property:
Cannot access non-public member TestClass::$prot
diff --git a/ext/session/tests/bug79221.phpt b/ext/session/tests/bug79221.phpt
index b0972c4697..0813457035 100644
--- a/ext/session/tests/bug79221.phpt
+++ b/ext/session/tests/bug79221.phpt
@@ -40,6 +40,6 @@ session_start();
var_dump($_SESSION);
session_destroy();
---EXPECTF--
+--EXPECT--
array(0) {
}
diff --git a/ext/session/tests/session_cache_limiter_error.phpt b/ext/session/tests/session_cache_limiter_error.phpt
index 284649e277..d291d531c0 100644
--- a/ext/session/tests/session_cache_limiter_error.phpt
+++ b/ext/session/tests/session_cache_limiter_error.phpt
@@ -89,7 +89,7 @@ fclose($fp);
echo "Done";
ob_end_flush();
?>
---EXPECTF--
+--EXPECT--
*** Testing session_cache_limiter() : error functionality ***
-- Iteration 1 --
diff --git a/ext/spl/tests/bug61347.phpt b/ext/spl/tests/bug61347.phpt
index b83f48f7ff..4b4f9eaedf 100644
--- a/ext/spl/tests/bug61347.phpt
+++ b/ext/spl/tests/bug61347.phpt
@@ -21,7 +21,7 @@ var_dump(isset($b[37])); //true
var_dump(isset($b['no_exists'])); //false
var_dump(empty($b['b'])); //true
var_dump(empty($b[37])); //true
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
bool(false)
diff --git a/ext/spl/tests/fileobject_005.phpt b/ext/spl/tests/fileobject_005.phpt
index e26a8d7aea..cce4a7d6a6 100644
--- a/ext/spl/tests/fileobject_005.phpt
+++ b/ext/spl/tests/fileobject_005.phpt
@@ -27,6 +27,6 @@ $fo->fwrite("blahlubba");
$path = __DIR__.DIRECTORY_SEPARATOR.'fileobject_005.txt';
unlink($path);
?>
---EXPECTF--
+--EXPECT--
bool(true)
string(4) "blah"
diff --git a/ext/spl/tests/iterator_045.phpt b/ext/spl/tests/iterator_045.phpt
index 63d78cc78e..e245b95688 100644
--- a/ext/spl/tests/iterator_045.phpt
+++ b/ext/spl/tests/iterator_045.phpt
@@ -88,7 +88,7 @@ $it->testUnset($unsets);
$it->show();
?>
---EXPECTF--
+--EXPECT--
Exception: MyCachingIterator does not use a full cache (see CachingIterator::__construct)
Exception: MyCachingIterator does not use a full cache (see CachingIterator::__construct)
MyCachingIterator::testSet()
diff --git a/ext/spl/tests/regexIterator_setMode_error.phpt b/ext/spl/tests/regexIterator_setMode_error.phpt
index 4816896d8a..3b0eaf1d66 100644
--- a/ext/spl/tests/regexIterator_setMode_error.phpt
+++ b/ext/spl/tests/regexIterator_setMode_error.phpt
@@ -18,7 +18,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
int(0)
string(14) "Illegal mode 7"
int(0)
diff --git a/ext/spl/tests/spl_heap_is_empty_basic.phpt b/ext/spl/tests/spl_heap_is_empty_basic.phpt
index 4a90734ad4..abf64f8d9d 100644
--- a/ext/spl/tests/spl_heap_is_empty_basic.phpt
+++ b/ext/spl/tests/spl_heap_is_empty_basic.phpt
@@ -22,7 +22,7 @@ var_dump($heap->isEmpty());
$heap->extract();
var_dump($heap->isEmpty());
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(false)
bool(true)
diff --git a/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt b/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
index 994c67e0c3..459beeca53 100644
--- a/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
+++ b/ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
@@ -69,7 +69,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
int(1)
Unable to prepare statement: 23, not authorized
bool(true)
diff --git a/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt b/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
index 3f9fe84130..9a893c590d 100644
--- a/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
+++ b/ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
@@ -44,7 +44,7 @@ var_dump($db->close());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
Getting expanded SQL statement
string(21) "SELECT 42, 'php', 43;"
Execute statement
diff --git a/ext/standard/tests/array/005.phpt b/ext/standard/tests/array/005.phpt
index c51e98a67b..ed9f0458c4 100644
--- a/ext/standard/tests/array/005.phpt
+++ b/ext/standard/tests/array/005.phpt
@@ -69,7 +69,7 @@ var_dump( current($mixed_array[1]) );
echo"Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing Error Conditions ***
NULL
diff --git a/ext/standard/tests/array/009.phpt b/ext/standard/tests/array/009.phpt
index c62be0d27c..fc10d293ff 100644
--- a/ext/standard/tests/array/009.phpt
+++ b/ext/standard/tests/array/009.phpt
@@ -71,7 +71,7 @@ foreach ($varient_arrays as $sub_array ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
-- Iteration 1 --
int(0)
diff --git a/ext/standard/tests/array/array_diff_assoc_error.phpt b/ext/standard/tests/array/array_diff_assoc_error.phpt
index 6aa7864ee9..69015289e2 100644
--- a/ext/standard/tests/array/array_diff_assoc_error.phpt
+++ b/ext/standard/tests/array/array_diff_assoc_error.phpt
@@ -33,7 +33,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff_assoc() : error conditions ***
-- Testing array_diff_assoc() function with zero arguments --
diff --git a/ext/standard/tests/array/array_diff_error.phpt b/ext/standard/tests/array/array_diff_error.phpt
index d269f010b8..889c5ce1b2 100644
--- a/ext/standard/tests/array/array_diff_error.phpt
+++ b/ext/standard/tests/array/array_diff_error.phpt
@@ -33,7 +33,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff() : error conditions ***
-- Testing array_diff() function with zero arguments --
diff --git a/ext/standard/tests/array/array_diff_key_error.phpt b/ext/standard/tests/array/array_diff_key_error.phpt
index e957abce1c..80ff5728fe 100644
--- a/ext/standard/tests/array/array_diff_key_error.phpt
+++ b/ext/standard/tests/array/array_diff_key_error.phpt
@@ -28,7 +28,7 @@ try {
echo $e->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
*** Testing array_diff_key() : error conditions ***
-- Testing array_diff_key() function with less than expected no. of arguments --
diff --git a/ext/standard/tests/array/array_filter.phpt b/ext/standard/tests/array/array_filter.phpt
index a1b18bd234..2cb21ca609 100644
--- a/ext/standard/tests/array/array_filter.phpt
+++ b/ext/standard/tests/array/array_filter.phpt
@@ -28,7 +28,7 @@ var_dump(array_filter($array3, "even"));
var_dump(array_filter(array()));
?>
---EXPECTF--
+--EXPECT--
Odd :
array(3) {
["a"]=>
diff --git a/ext/standard/tests/array/array_filter_variation10.phpt b/ext/standard/tests/array/array_filter_variation10.phpt
index 265daf1fb4..ff88d7a7f8 100644
--- a/ext/standard/tests/array/array_filter_variation10.phpt
+++ b/ext/standard/tests/array/array_filter_variation10.phpt
@@ -56,7 +56,7 @@ try {
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_filter() : usage variations - using array keys in 'callback' ***
0 = 0
1 = 1
diff --git a/ext/standard/tests/array/array_key_exists_variation3.phpt b/ext/standard/tests/array/array_key_exists_variation3.phpt
index 4a6409bb1f..ef6cf45139 100644
--- a/ext/standard/tests/array/array_key_exists_variation3.phpt
+++ b/ext/standard/tests/array/array_key_exists_variation3.phpt
@@ -34,7 +34,7 @@ foreach($keys as $key) {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_key_exists() : usage variations ***
-- Iteration 1 --
diff --git a/ext/standard/tests/array/array_map_error.phpt b/ext/standard/tests/array/array_map_error.phpt
index 4739bbf663..b41871e1c4 100644
--- a/ext/standard/tests/array/array_map_error.phpt
+++ b/ext/standard/tests/array/array_map_error.phpt
@@ -38,7 +38,7 @@ var_dump( array_map('callback2', $arr1, $arr2, $arr3) );
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_map() : error conditions ***
-- Testing array_map() function with one less than expected no. of arguments --
diff --git a/ext/standard/tests/array/array_merge.phpt b/ext/standard/tests/array/array_merge.phpt
index 08ecbf7147..75007779fa 100644
--- a/ext/standard/tests/array/array_merge.phpt
+++ b/ext/standard/tests/array/array_merge.phpt
@@ -83,7 +83,7 @@ var_dump(array_merge());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_merge() basic functionality ***
--- Iteration 0 ---
diff --git a/ext/standard/tests/array/array_push.phpt b/ext/standard/tests/array/array_push.phpt
index 227a520ac1..78076b8fc4 100644
--- a/ext/standard/tests/array/array_push.phpt
+++ b/ext/standard/tests/array/array_push.phpt
@@ -60,7 +60,7 @@ var_dump( $mixed_array[2] );
echo"\nDone";
?>
---EXPECTF--
+--EXPECT--
*** Testing Edge Conditions ***
int(11)
int(1)
diff --git a/ext/standard/tests/array/array_slice.phpt b/ext/standard/tests/array/array_slice.phpt
index d19f5195d6..a76277883a 100644
--- a/ext/standard/tests/array/array_slice.phpt
+++ b/ext/standard/tests/array/array_slice.phpt
@@ -68,7 +68,7 @@ foreach ($var_array as $sub_array)
var_dump (array_slice($var_array[2], -3, -2, false) );
?>
---EXPECTF--
+--EXPECT--
*** Iteration 1 ***
*** Variation with first two Arguments ***
diff --git a/ext/standard/tests/array/array_unshift.phpt b/ext/standard/tests/array/array_unshift.phpt
index 9ebe83391e..265de4e846 100644
--- a/ext/standard/tests/array/array_unshift.phpt
+++ b/ext/standard/tests/array/array_unshift.phpt
@@ -12,7 +12,7 @@ var_dump($a);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
array(1) {
[0]=>
diff --git a/ext/standard/tests/array/array_walk.phpt b/ext/standard/tests/array/array_walk.phpt
index 1f5457c9f7..151c9c70d0 100644
--- a/ext/standard/tests/array/array_walk.phpt
+++ b/ext/standard/tests/array/array_walk.phpt
@@ -24,7 +24,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
int(0)
string(4) "data"
diff --git a/ext/standard/tests/array/array_walk_error2.phpt b/ext/standard/tests/array/array_walk_error2.phpt
index dfc95d3af8..e5aeadcdc0 100644
--- a/ext/standard/tests/array/array_walk_error2.phpt
+++ b/ext/standard/tests/array/array_walk_error2.phpt
@@ -54,7 +54,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk() : error conditions - callback parameters ***
Exception: Too few arguments to function callback1(), 2 passed and exactly 3 expected
Exception: Too few arguments to function callback2(), 3 passed and exactly 4 expected
diff --git a/ext/standard/tests/array/array_walk_recursive1.phpt b/ext/standard/tests/array/array_walk_recursive1.phpt
index 472cb1032d..d4d3e7d8eb 100644
--- a/ext/standard/tests/array/array_walk_recursive1.phpt
+++ b/ext/standard/tests/array/array_walk_recursive1.phpt
@@ -24,7 +24,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(1)
int(0)
string(4) "data"
diff --git a/ext/standard/tests/array/array_walk_recursive_error2.phpt b/ext/standard/tests/array/array_walk_recursive_error2.phpt
index f1686d7acd..2509c95f60 100644
--- a/ext/standard/tests/array/array_walk_recursive_error2.phpt
+++ b/ext/standard/tests/array/array_walk_recursive_error2.phpt
@@ -54,7 +54,7 @@ try {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk_recursive() : error conditions - callback parameters ***
Exception: Too few arguments to function callback1(), 2 passed and exactly 3 expected
Exception: Too few arguments to function callback2(), 3 passed and exactly 4 expected
diff --git a/ext/standard/tests/array/array_walk_recursive_variation7.phpt b/ext/standard/tests/array/array_walk_recursive_variation7.phpt
index a0c159d71d..a1cbdad2bd 100644
--- a/ext/standard/tests/array/array_walk_recursive_variation7.phpt
+++ b/ext/standard/tests/array/array_walk_recursive_variation7.phpt
@@ -33,7 +33,7 @@ echo "-- Anonymous function with null argument --\n";
var_dump( array_walk_recursive( $input, function() { echo "1\n"; }));
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk_recursive() : anonymous function as callback ***
-- Anonymous function with one argument --
int(2)
diff --git a/ext/standard/tests/array/array_walk_variation7.phpt b/ext/standard/tests/array/array_walk_variation7.phpt
index 0354782eda..3689f8a798 100644
--- a/ext/standard/tests/array/array_walk_variation7.phpt
+++ b/ext/standard/tests/array/array_walk_variation7.phpt
@@ -33,7 +33,7 @@ echo "-- Anonymous function with null argument --\n";
var_dump( array_walk( $input, function() { echo "1\n"; }));
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing array_walk() : anonymous function as callback ***
-- Anonymous function with one argument --
int(2)
diff --git a/ext/standard/tests/array/uasort_variation8.phpt b/ext/standard/tests/array/uasort_variation8.phpt
index d27cd569c0..b6abdeaef3 100644
--- a/ext/standard/tests/array/uasort_variation8.phpt
+++ b/ext/standard/tests/array/uasort_variation8.phpt
@@ -29,7 +29,7 @@ var_dump($array_arg);
echo "Done"
?>
---EXPECTF--
+--EXPECT--
*** Testing uasort() : built in function as 'cmp_function' ***
-- Testing uasort() with built-in 'cmp_function': strcasecmp() --
bool(true)
diff --git a/ext/standard/tests/array/usort_variation8.phpt b/ext/standard/tests/array/usort_variation8.phpt
index 55ff362d41..4a750ccefa 100644
--- a/ext/standard/tests/array/usort_variation8.phpt
+++ b/ext/standard/tests/array/usort_variation8.phpt
@@ -31,7 +31,7 @@ var_dump( usort($temp_array2, 'strcmp') );
var_dump($temp_array2);
?>
---EXPECTF--
+--EXPECT--
*** Testing usort() : usage variation ***
-- Testing usort() with built-in 'cmp_function': strcasecmp() --
diff --git a/ext/standard/tests/assert/assert_variation.phpt b/ext/standard/tests/assert/assert_variation.phpt
index a28ea58d5a..7b550b36d1 100644
--- a/ext/standard/tests/assert/assert_variation.phpt
+++ b/ext/standard/tests/assert/assert_variation.phpt
@@ -67,7 +67,7 @@ var_dump($rao=assert_options(ASSERT_CALLBACK));
echo "ini.get(\"assert.callback\") => [".ini_get("assert.callback")."]\n\n";
var_dump($r2=assert(0 != 0));
echo"\n";
---EXPECTF--
+--EXPECT--
Initial values: assert_options(ASSERT_CALLBACK) => [f1]
Initial values: ini.get("assert.callback") => [f1]
f1 called
diff --git a/ext/standard/tests/file/auto_detect_line_endings_1.phpt b/ext/standard/tests/file/auto_detect_line_endings_1.phpt
index c79082ecdb..5a4ff0a10f 100644
--- a/ext/standard/tests/file/auto_detect_line_endings_1.phpt
+++ b/ext/standard/tests/file/auto_detect_line_endings_1.phpt
@@ -15,7 +15,7 @@ var_dump(fgets(STDIN));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(1) "1"
string(8) "fooBar1
"
string(8) "fooBar2
"
diff --git a/ext/standard/tests/file/auto_detect_line_endings_2.phpt b/ext/standard/tests/file/auto_detect_line_endings_2.phpt
index f33a055e08..3994f1ee3b 100644
--- a/ext/standard/tests/file/auto_detect_line_endings_2.phpt
+++ b/ext/standard/tests/file/auto_detect_line_endings_2.phpt
@@ -16,7 +16,7 @@ var_dump(fgets($stdin));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(2) "on"
string(8) "fooBar1
"
string(8) "fooBar2
"
diff --git a/ext/standard/tests/file/basename.phpt b/ext/standard/tests/file/basename.phpt
index 8352f4da4b..7a98e833a3 100644
--- a/ext/standard/tests/file/basename.phpt
+++ b/ext/standard/tests/file/basename.phpt
@@ -138,7 +138,7 @@ check_basename( $file_path_variations );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
--Iteration 1--
diff --git a/ext/standard/tests/file/fscanf.phpt b/ext/standard/tests/file/fscanf.phpt
index 6605b795ff..4acadc6169 100644
--- a/ext/standard/tests/file/fscanf.phpt
+++ b/ext/standard/tests/file/fscanf.phpt
@@ -75,7 +75,7 @@ echo "Done\n";
$filename = __DIR__."/fscanf.dat";
unlink($filename);
?>
---EXPECTF--
+--EXPECT--
int(0)
NULL
int(1)
diff --git a/ext/standard/tests/file/fscanf_variation10.phpt b/ext/standard/tests/file/fscanf_variation10.phpt
index f657c07005..507ed8e22d 100644
--- a/ext/standard/tests/file/fscanf_variation10.phpt
+++ b/ext/standard/tests/file/fscanf_variation10.phpt
@@ -82,7 +82,7 @@ $file_path = __DIR__;
$filename = "$file_path/fscanf_variation10.tmp";
unlink($filename);
?>
---EXPECTF--
+--EXPECT--
*** Test fscanf(): different float format types with resource ***
-- iteration 1 --
diff --git a/ext/standard/tests/file/is_dir_variation3.phpt b/ext/standard/tests/file/is_dir_variation3.phpt
index e82d9ae034..1cf1f25138 100644
--- a/ext/standard/tests/file/is_dir_variation3.phpt
+++ b/ext/standard/tests/file/is_dir_variation3.phpt
@@ -30,7 +30,7 @@ foreach($dirnames as $dirname) {
var_dump( is_dir($dirname) );
}
?>
---EXPECTF--
+--EXPECT--
*** Testing is_dir() with Invalid arguments: expected bool(false) ***
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_executable_error.phpt b/ext/standard/tests/file/is_executable_error.phpt
index ad90d64435..e77ca86349 100644
--- a/ext/standard/tests/file/is_executable_error.phpt
+++ b/ext/standard/tests/file/is_executable_error.phpt
@@ -10,7 +10,7 @@ echo "\n*** Testing is_exceutable() on non-existent directory ***\n";
var_dump( is_executable(__DIR__."/is_executable") );
echo "Done\n";
---EXPECTF--
+--EXPECT--
*** Testing is_exceutable() on non-existent directory ***
bool(false)
Done
diff --git a/ext/standard/tests/file/is_executable_variation3.phpt b/ext/standard/tests/file/is_executable_variation3.phpt
index 92ad3320d3..802dbfdf7e 100644
--- a/ext/standard/tests/file/is_executable_variation3.phpt
+++ b/ext/standard/tests/file/is_executable_variation3.phpt
@@ -40,7 +40,7 @@ foreach( $invalid_files as $invalid_file ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_executable(): usage variations ***
*** Testing is_executable() on invalid files ***
diff --git a/ext/standard/tests/file/is_file_variation3.phpt b/ext/standard/tests/file/is_file_variation3.phpt
index d33b01dfb3..5bdb63e37c 100644
--- a/ext/standard/tests/file/is_file_variation3.phpt
+++ b/ext/standard/tests/file/is_file_variation3.phpt
@@ -39,7 +39,7 @@ foreach([
clearstatcache();
}
?>
---EXPECTF--
+--EXPECT--
float(-2.34555): 0
string(1) " ": 0
string(0) "": 0
diff --git a/ext/standard/tests/file/is_readable_error.phpt b/ext/standard/tests/file/is_readable_error.phpt
index 1520eb4d20..c8a6c34fa0 100644
--- a/ext/standard/tests/file/is_readable_error.phpt
+++ b/ext/standard/tests/file/is_readable_error.phpt
@@ -11,7 +11,7 @@ var_dump( is_readable(__DIR__."/is_readable.tmp") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_readable() on non-existent file ***
bool(false)
Done
diff --git a/ext/standard/tests/file/is_readable_variation3.phpt b/ext/standard/tests/file/is_readable_variation3.phpt
index 97c794d1b7..f7eebdc2b8 100644
--- a/ext/standard/tests/file/is_readable_variation3.phpt
+++ b/ext/standard/tests/file/is_readable_variation3.phpt
@@ -37,7 +37,7 @@ foreach( $misc_files as $misc_file ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_readable(): usage variations ***
*** Testing is_readable() on miscellaneous filenames ***
diff --git a/ext/standard/tests/file/is_uploaded_file_basic.phpt b/ext/standard/tests/file/is_uploaded_file_basic.phpt
index d053244a79..3e5bf6320c 100644
--- a/ext/standard/tests/file/is_uploaded_file_basic.phpt
+++ b/ext/standard/tests/file/is_uploaded_file_basic.phpt
@@ -30,7 +30,7 @@ var_dump(is_uploaded_file('random_filename.txt'));
var_dump(is_uploaded_file('__FILE__'));
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_writable_error.phpt b/ext/standard/tests/file/is_writable_error.phpt
index e2a38412cd..f01e69b13d 100644
--- a/ext/standard/tests/file/is_writable_error.phpt
+++ b/ext/standard/tests/file/is_writable_error.phpt
@@ -14,7 +14,7 @@ var_dump( is_writeable(__DIR__."/is_writable") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_writable() on non-existent file ***
bool(false)
bool(false)
diff --git a/ext/standard/tests/file/is_writable_variation3.phpt b/ext/standard/tests/file/is_writable_variation3.phpt
index c5843a5abf..167d874ac2 100644
--- a/ext/standard/tests/file/is_writable_variation3.phpt
+++ b/ext/standard/tests/file/is_writable_variation3.phpt
@@ -37,7 +37,7 @@ foreach( $misc_files as $misc_file ) {
clearstatcache();
}
?>
---EXPECTF--
+--EXPECT--
*** Testing is_writable(): usage variations ***
*** Testing is_writable() with invalid filenames ***
diff --git a/ext/standard/tests/file/move_uploaded_file_basic.phpt b/ext/standard/tests/file/move_uploaded_file_basic.phpt
index 7af8748fe2..b80c052691 100644
--- a/ext/standard/tests/file/move_uploaded_file_basic.phpt
+++ b/ext/standard/tests/file/move_uploaded_file_basic.phpt
@@ -50,7 +50,7 @@ var_dump(move_uploaded_file($_FILES['file2']['tmp_name'], $destination4));
unlink($destination4);
?>
---EXPECTF--
+--EXPECT--
Valid move
bool(true)
bool(true)
diff --git a/ext/standard/tests/general_functions/get_include_path_basic.phpt b/ext/standard/tests/general_functions/get_include_path_basic.phpt
index bb7ccf542b..c17d5d3e71 100644
--- a/ext/standard/tests/general_functions/get_include_path_basic.phpt
+++ b/ext/standard/tests/general_functions/get_include_path_basic.phpt
@@ -20,7 +20,7 @@ if (ini_get("include_path") == get_include_path()) {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing get_include_path()
string(1) "."
PASSED
diff --git a/ext/standard/tests/general_functions/include_path.phpt b/ext/standard/tests/general_functions/include_path.phpt
index 56327500ea..06e806b3a2 100644
--- a/ext/standard/tests/general_functions/include_path.phpt
+++ b/ext/standard/tests/general_functions/include_path.phpt
@@ -31,7 +31,7 @@ var_dump(get_include_path());
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(1) "."
NULL
string(1) "."
diff --git a/ext/standard/tests/general_functions/is_array.phpt b/ext/standard/tests/general_functions/is_array.phpt
index 200ecbd6ac..37de6d5a5b 100644
--- a/ext/standard/tests/general_functions/is_array.phpt
+++ b/ext/standard/tests/general_functions/is_array.phpt
@@ -103,7 +103,7 @@ echo "Done\n";
fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_array() on different type of arrays ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_bool.phpt b/ext/standard/tests/general_functions/is_bool.phpt
index 7c8d693a1b..70aaed9c3f 100644
--- a/ext/standard/tests/general_functions/is_bool.phpt
+++ b/ext/standard/tests/general_functions/is_bool.phpt
@@ -134,7 +134,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_bool() with valid boolean values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_float_64bit.phpt b/ext/standard/tests/general_functions/is_float_64bit.phpt
index dc6df0f109..1815e53c00 100644
--- a/ext/standard/tests/general_functions/is_float_64bit.phpt
+++ b/ext/standard/tests/general_functions/is_float_64bit.phpt
@@ -131,7 +131,7 @@ foreach ($not_floats as $value ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_float(), is_double() and is_real() with float values***
-- Iteration 1 --
bool(false)
diff --git a/ext/standard/tests/general_functions/is_int_64bit.phpt b/ext/standard/tests/general_functions/is_int_64bit.phpt
index e5c6ce77e0..8e5e9332c0 100644
--- a/ext/standard/tests/general_functions/is_int_64bit.phpt
+++ b/ext/standard/tests/general_functions/is_int_64bit.phpt
@@ -136,7 +136,7 @@ foreach ($not_int_types as $type ) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing is_int(), is_integer() & is_long() with valid integer values ***
--Iteration 1--
bool(true)
diff --git a/ext/standard/tests/general_functions/is_null.phpt b/ext/standard/tests/general_functions/is_null.phpt
index 4fc325c744..6560707e57 100644
--- a/ext/standard/tests/general_functions/is_null.phpt
+++ b/ext/standard/tests/general_functions/is_null.phpt
@@ -134,7 +134,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_null() with valid null values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_numeric.phpt b/ext/standard/tests/general_functions/is_numeric.phpt
index 491aa5d15b..8883c57ac2 100644
--- a/ext/standard/tests/general_functions/is_numeric.phpt
+++ b/ext/standard/tests/general_functions/is_numeric.phpt
@@ -152,7 +152,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_numeric() with valid numeric values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_object.phpt b/ext/standard/tests/general_functions/is_object.phpt
index dd0e7689fd..8a5ac1bcbe 100644
--- a/ext/standard/tests/general_functions/is_object.phpt
+++ b/ext/standard/tests/general_functions/is_object.phpt
@@ -145,7 +145,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_object() with valid objects ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_scalar.phpt b/ext/standard/tests/general_functions/is_scalar.phpt
index f7ef3f5317..6a89da9f56 100644
--- a/ext/standard/tests/general_functions/is_scalar.phpt
+++ b/ext/standard/tests/general_functions/is_scalar.phpt
@@ -112,7 +112,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing basic operations ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/is_string.phpt b/ext/standard/tests/general_functions/is_string.phpt
index 7760f79831..a4ef7a47b1 100644
--- a/ext/standard/tests/general_functions/is_string.phpt
+++ b/ext/standard/tests/general_functions/is_string.phpt
@@ -147,7 +147,7 @@ fclose($fp);
closedir($dfp);
?>
---EXPECTF--
+--EXPECT--
*** Testing is_string() with valid string values ***
-- Iteration 1 --
bool(true)
diff --git a/ext/standard/tests/general_functions/ob_get_length_basic.phpt b/ext/standard/tests/general_functions/ob_get_length_basic.phpt
index 46d5d2d0f6..0eb1adf9ee 100644
--- a/ext/standard/tests/general_functions/ob_get_length_basic.phpt
+++ b/ext/standard/tests/general_functions/ob_get_length_basic.phpt
@@ -32,7 +32,7 @@ dump_string_length( '' );
dump_string_length( null );
?>
---EXPECTF--
+--EXPECT--
*** Testing ob_get_length() : basic functionality ***
bool(false)
int(26)
diff --git a/ext/standard/tests/general_functions/php_uname_error.phpt b/ext/standard/tests/general_functions/php_uname_error.phpt
index 23859a33ac..c64c15b404 100644
--- a/ext/standard/tests/general_functions/php_uname_error.phpt
+++ b/ext/standard/tests/general_functions/php_uname_error.phpt
@@ -13,7 +13,7 @@ echo "\n-- Testing php_uname() function with invalid mode --\n";
var_dump( php_uname('z') == php_uname('z') );
?>
---EXPECTF--
+--EXPECT--
*** Testing php_uname() - error test
-- Testing php_uname() function with invalid mode --
diff --git a/ext/standard/tests/general_functions/print_r.phpt b/ext/standard/tests/general_functions/print_r.phpt
index 3f24a5bc9d..d2ec63f5b4 100644
--- a/ext/standard/tests/general_functions/print_r.phpt
+++ b/ext/standard/tests/general_functions/print_r.phpt
@@ -276,7 +276,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing print_r() on integer variables ***
-- Iteration 1 --
diff --git a/ext/standard/tests/general_functions/print_r_64bit.phpt b/ext/standard/tests/general_functions/print_r_64bit.phpt
index a0e9e148c6..5df1637dbd 100644
--- a/ext/standard/tests/general_functions/print_r_64bit.phpt
+++ b/ext/standard/tests/general_functions/print_r_64bit.phpt
@@ -280,7 +280,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing print_r() on integer variables ***
-- Iteration 1 --
diff --git a/ext/standard/tests/general_functions/var_dump_64bit.phpt b/ext/standard/tests/general_functions/var_dump_64bit.phpt
index 0600775f58..7b74761586 100644
--- a/ext/standard/tests/general_functions/var_dump_64bit.phpt
+++ b/ext/standard/tests/general_functions/var_dump_64bit.phpt
@@ -279,7 +279,7 @@ closedir($dir_handle);
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing var_dump() on integer variables ***
-- Iteration 1 --
int(0)
diff --git a/ext/standard/tests/general_functions/var_export-locale.phpt b/ext/standard/tests/general_functions/var_export-locale.phpt
index bdc61d9928..9f9cd0e896 100644
--- a/ext/standard/tests/general_functions/var_export-locale.phpt
+++ b/ext/standard/tests/general_functions/var_export-locale.phpt
@@ -307,7 +307,7 @@ echo "\nDone";
?>
---EXPECTF--
+--EXPECT--
*** Testing var_export() with integer values ***
*** Output for integer values ***
diff --git a/ext/standard/tests/image/image_type_to_extension.phpt b/ext/standard/tests/image/image_type_to_extension.phpt
index 249df57943..448aac4e99 100644
--- a/ext/standard/tests/image/image_type_to_extension.phpt
+++ b/ext/standard/tests/image/image_type_to_extension.phpt
@@ -33,7 +33,7 @@ image_type_to_extension()
var_dump(image_type_to_extension(0));
?>
Done
---EXPECTF--
+--EXPECT--
Constant: IMAGETYPE_GIF
With dot: .gif
Without dot: gif
diff --git a/ext/standard/tests/math/lcg_value_basic.phpt b/ext/standard/tests/math/lcg_value_basic.phpt
index 95811c6f3c..ca76b5c836 100644
--- a/ext/standard/tests/math/lcg_value_basic.phpt
+++ b/ext/standard/tests/math/lcg_value_basic.phpt
@@ -24,7 +24,7 @@ if ($i != 100) {
echo "MATHS test script completed\n";
?>
---EXPECTF--
+--EXPECT--
MATHS test script started
lcg_value tests...
diff --git a/ext/standard/tests/network/inet.phpt b/ext/standard/tests/network/inet.phpt
index 29b4aa0e6b..b25265446f 100644
--- a/ext/standard/tests/network/inet.phpt
+++ b/ext/standard/tests/network/inet.phpt
@@ -35,7 +35,7 @@ foreach ($array as $val) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(9) "127.0.0.1"
string(13) "255.255.255.0"
bool(false)
diff --git a/ext/standard/tests/network/ip_x86_64.phpt b/ext/standard/tests/network/ip_x86_64.phpt
index c659eb70fb..dd81bde55c 100644
--- a/ext/standard/tests/network/ip_x86_64.phpt
+++ b/ext/standard/tests/network/ip_x86_64.phpt
@@ -29,7 +29,7 @@ var_dump(long2ip(-110000));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
int(2130706433)
string(9) "127.0.0.1"
int(167772161)
diff --git a/ext/standard/tests/random/random_int.phpt b/ext/standard/tests/random/random_int.phpt
index 94654a7f72..6fd04420ee 100644
--- a/ext/standard/tests/random/random_int.phpt
+++ b/ext/standard/tests/random/random_int.phpt
@@ -15,7 +15,7 @@ var_dump(is_int(random_int(PHP_INT_MIN, PHP_INT_MAX)));
var_dump(random_int(42,42));
?>
---EXPECTF--
+--EXPECT--
bool(true)
bool(true)
bool(true)
diff --git a/ext/standard/tests/serialize/bug45706.phpt b/ext/standard/tests/serialize/bug45706.phpt
index cc71dec4e6..c29081cab7 100644
--- a/ext/standard/tests/serialize/bug45706.phpt
+++ b/ext/standard/tests/serialize/bug45706.phpt
@@ -12,7 +12,7 @@ $s = serialize($x);
$s = str_replace("Foo", "Bar", $s);
$y = unserialize($s);
var_dump($y);
---EXPECTF--
+--EXPECT--
array(2) {
[0]=>
object(__PHP_Incomplete_Class)#3 (5) {
diff --git a/ext/standard/tests/streams/bug61115.phpt b/ext/standard/tests/streams/bug61115.phpt
index 3caffde232..ce6b57651c 100644
--- a/ext/standard/tests/streams/bug61115.phpt
+++ b/ext/standard/tests/streams/bug61115.phpt
@@ -13,5 +13,5 @@ try {
echo $e->getMessage(), "\n";
}
?>
---EXPECTF--
+--EXPECT--
Object of class Closure could not be converted to string
diff --git a/ext/standard/tests/streams/bug78662.phpt b/ext/standard/tests/streams/bug78662.phpt
index e874d5aef6..2ea00b67b1 100644
--- a/ext/standard/tests/streams/bug78662.phpt
+++ b/ext/standard/tests/streams/bug78662.phpt
@@ -26,7 +26,7 @@ var_dump(fwrite($f, "bar"));
var_dump(fread($f, 100));
?>
Done
---EXPECTF--
+--EXPECT--
bool(false)
bool(false)
Done
diff --git a/ext/standard/tests/streams/stream_set_timeout_error.phpt b/ext/standard/tests/streams/stream_set_timeout_error.phpt
index 7dcc645422..64e9aa5773 100644
--- a/ext/standard/tests/streams/stream_set_timeout_error.phpt
+++ b/ext/standard/tests/streams/stream_set_timeout_error.phpt
@@ -41,7 +41,7 @@ fclose($server);
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing stream_set_timeout() : error conditions ***
-- Testing stream_set_timeout() function with a closed socket --
diff --git a/ext/standard/tests/strings/chr_error.phpt b/ext/standard/tests/strings/chr_error.phpt
index 2603b69210..b6bd9973b6 100644
--- a/ext/standard/tests/strings/chr_error.phpt
+++ b/ext/standard/tests/strings/chr_error.phpt
@@ -26,7 +26,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing chr() : error conditions ***
-- Testing chr() function with no arguments --
diff --git a/ext/standard/tests/strings/fprintf_error.phpt b/ext/standard/tests/strings/fprintf_error.phpt
index 1ffc188051..bfef30a75b 100644
--- a/ext/standard/tests/strings/fprintf_error.phpt
+++ b/ext/standard/tests/strings/fprintf_error.phpt
@@ -29,7 +29,7 @@ try {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Testing Error Conditions ***
Wrong parameter count for fprintf()
Wrong parameter count for fprintf()
diff --git a/ext/standard/tests/strings/htmlentities24.phpt b/ext/standard/tests/strings/htmlentities24.phpt
index f2abfd5ba8..2a04bd345e 100644
--- a/ext/standard/tests/strings/htmlentities24.phpt
+++ b/ext/standard/tests/strings/htmlentities24.phpt
@@ -37,7 +37,7 @@ var_dump( htmlentities($str, ENT_COMPAT) );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Retrieving htmlentities for 256 characters ***
string(12) "636872283029"
string(12) "636872283129"
diff --git a/ext/standard/tests/strings/htmlspecialchars.phpt b/ext/standard/tests/strings/htmlspecialchars.phpt
index 6e5c5fac36..5677da6fe2 100644
--- a/ext/standard/tests/strings/htmlspecialchars.phpt
+++ b/ext/standard/tests/strings/htmlspecialchars.phpt
@@ -37,7 +37,7 @@ var_dump( htmlspecialchars($str, ENT_COMPAT) );
echo "Done\n"
?>
---EXPECTF--
+--EXPECT--
*** Retrieving htmlspecialchars for 256 characters ***
string(12) "636872283029"
string(12) "636872283129"
diff --git a/ext/standard/tests/strings/ltrim.phpt b/ext/standard/tests/strings/ltrim.phpt
index 51287e04d7..8ac57ca92e 100644
--- a/ext/standard/tests/strings/ltrim.phpt
+++ b/ext/standard/tests/strings/ltrim.phpt
@@ -41,7 +41,7 @@ var_dump( ltrim($str, "\nusi") );
echo "\nDone\n";
?>
---EXPECTF--
+--EXPECT--
*** Output for Error Conditions ***
*** Using heredoc string ***
diff --git a/ext/standard/tests/strings/metaphone.phpt b/ext/standard/tests/strings/metaphone.phpt
index 2bc16b3248..a6b52e3934 100644
--- a/ext/standard/tests/strings/metaphone.phpt
+++ b/ext/standard/tests/strings/metaphone.phpt
@@ -24,7 +24,7 @@ foreach($array as $str) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(0) ""
bool(false)
diff --git a/ext/standard/tests/strings/parse_str_basic1.phpt b/ext/standard/tests/strings/parse_str_basic1.phpt
index 60277fa184..38652ba0fa 100644
--- a/ext/standard/tests/strings/parse_str_basic1.phpt
+++ b/ext/standard/tests/strings/parse_str_basic1.phpt
@@ -27,7 +27,7 @@ var_dump(parse_str($s1, $res3_array));
var_dump($res3_array);
?>
---EXPECTF--
+--EXPECT--
*** Testing parse_str() : basic functionality ***
Basic test WITH undefined var for result arg
diff --git a/ext/standard/tests/strings/parse_str_basic3.phpt b/ext/standard/tests/strings/parse_str_basic3.phpt
index 25b5f8745d..0ea88a365b 100644
--- a/ext/standard/tests/strings/parse_str_basic3.phpt
+++ b/ext/standard/tests/strings/parse_str_basic3.phpt
@@ -73,7 +73,7 @@ var_dump(parse_str($str, $res));
var_dump($res);
?>
---EXPECTF--
+--EXPECT--
*** Testing parse_str() : basic functionality ***
Test string with array values and results array
diff --git a/ext/standard/tests/strings/printf_error.phpt b/ext/standard/tests/strings/printf_error.phpt
index 62591e9e6f..e9fc0a4383 100644
--- a/ext/standard/tests/strings/printf_error.phpt
+++ b/ext/standard/tests/strings/printf_error.phpt
@@ -61,7 +61,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing printf() : error conditions ***
-- Testing printf() function with Zero arguments --
diff --git a/ext/standard/tests/strings/rtrim.phpt b/ext/standard/tests/strings/rtrim.phpt
index 223a839f58..2fc531faad 100644
--- a/ext/standard/tests/strings/rtrim.phpt
+++ b/ext/standard/tests/strings/rtrim.phpt
@@ -42,7 +42,7 @@ var_dump( rtrim($str, "ing") );
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
*** Output for Normal Behaviour ***
string(10) "rtrim test"
string(13) "rtrim test "
diff --git a/ext/standard/tests/strings/soundex.phpt b/ext/standard/tests/strings/soundex.phpt
index ef61ac495e..c4acc2ff68 100644
--- a/ext/standard/tests/strings/soundex.phpt
+++ b/ext/standard/tests/strings/soundex.phpt
@@ -30,7 +30,7 @@ foreach ($array as $str) {
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
bool(false)
string(4) "0000"
string(4) "F650"
diff --git a/ext/standard/tests/strings/sprintf_variation15.phpt b/ext/standard/tests/strings/sprintf_variation15.phpt
index 07774a92ec..66d85647ff 100644
--- a/ext/standard/tests/strings/sprintf_variation15.phpt
+++ b/ext/standard/tests/strings/sprintf_variation15.phpt
@@ -74,7 +74,7 @@ foreach($string_values as $string_value) {
echo "Done";
?>
---EXPECTF--
+--EXPECT--
*** Testing sprintf() : string formats with string values ***
-- Iteration 1 --
diff --git a/ext/standard/tests/strings/sscanf_error.phpt b/ext/standard/tests/strings/sscanf_error.phpt
index ffaefb8418..0af8f9ed14 100644
--- a/ext/standard/tests/strings/sscanf_error.phpt
+++ b/ext/standard/tests/strings/sscanf_error.phpt
@@ -20,7 +20,7 @@ try {
echo $exception->getMessage() . "\n";
}
?>
---EXPECTF--
+--EXPECT--
*** Testing sscanf() : error conditions ***
-- Testing sscanf() function with more than expected no. of arguments --
diff --git a/ext/standard/tests/strings/str_ireplace.phpt b/ext/standard/tests/strings/str_ireplace.phpt
index a5a35769e4..c360004a14 100644
--- a/ext/standard/tests/strings/str_ireplace.phpt
+++ b/ext/standard/tests/strings/str_ireplace.phpt
@@ -44,7 +44,7 @@ var_dump($Data = str_ireplace("\n", "<br>", $Data));
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(8) "aaaaaaaT"
string(8) "aaaaaaaT"
diff --git a/ext/standard/tests/strings/stristr.phpt b/ext/standard/tests/strings/stristr.phpt
index 7b1b5312a1..09e6cff53c 100644
--- a/ext/standard/tests/strings/stristr.phpt
+++ b/ext/standard/tests/strings/stristr.phpt
@@ -14,7 +14,7 @@ stristr() function
var_dump(md5(stristr("\\\\a\\", "\\a")));
var_dump(stristr("tEsT sTrInG", " "));
?>
---EXPECTF--
+--EXPECT--
string(11) "tEsT sTrInG"
string(6) "sTrInG"
string(6) "sTrInG"
diff --git a/ext/standard/tests/strings/strrchr_variation1.phpt b/ext/standard/tests/strings/strrchr_variation1.phpt
index a75dd96bbf..f28571ba7f 100644
--- a/ext/standard/tests/strings/strrchr_variation1.phpt
+++ b/ext/standard/tests/strings/strrchr_variation1.phpt
@@ -81,7 +81,7 @@ for($index=0; $index<count($needle); $index++) {
}
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strrchr() function: with various double quoted strings ***
-- Iteration 1 --
string(16) "lo123456he #4 A "
diff --git a/ext/standard/tests/strings/strrchr_variation2.phpt b/ext/standard/tests/strings/strrchr_variation2.phpt
index 2ff6720fb9..e6e510dd55 100644
--- a/ext/standard/tests/strings/strrchr_variation2.phpt
+++ b/ext/standard/tests/strings/strrchr_variation2.phpt
@@ -81,7 +81,7 @@ for($index=0; $index<count($needle); $index++) {
}
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strrchr() function: with various single quoted strings ***
-- Iteration 1 --
string(22) "lo123456he \x234 \101 "
diff --git a/ext/standard/tests/strings/strtolower.phpt b/ext/standard/tests/strings/strtolower.phpt
index 7c7e2bb4c7..041b66a00c 100644
--- a/ext/standard/tests/strings/strtolower.phpt
+++ b/ext/standard/tests/strings/strtolower.phpt
@@ -65,7 +65,7 @@ else
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strtolower() with 128 chars ***
00 => 00
01 => 01
diff --git a/ext/standard/tests/strings/strtoupper1.phpt b/ext/standard/tests/strings/strtoupper1.phpt
index c243ff10c7..6c7434ba16 100644
--- a/ext/standard/tests/strings/strtoupper1.phpt
+++ b/ext/standard/tests/strings/strtoupper1.phpt
@@ -65,7 +65,7 @@ else
echo "*** Done ***";
?>
---EXPECTF--
+--EXPECT--
*** Testing strtoupper() with 128 chars ***
00 => 00
01 => 01
diff --git a/ext/standard/tests/strings/strval_error.phpt b/ext/standard/tests/strings/strval_error.phpt
index a363e26f24..88cca824a6 100644
--- a/ext/standard/tests/strings/strval_error.phpt
+++ b/ext/standard/tests/strings/strval_error.phpt
@@ -25,7 +25,7 @@ try {
}
?>
---EXPECTF--
+--EXPECT--
*** Testing strval() : error conditions ***
-- Testing strval() function with object which has not toString() method --
diff --git a/ext/standard/tests/strings/substr.phpt b/ext/standard/tests/strings/substr.phpt
index fe687ed1ae..6028c17008 100644
--- a/ext/standard/tests/strings/substr.phpt
+++ b/ext/standard/tests/strings/substr.phpt
@@ -66,7 +66,7 @@ var_dump (substr("abcdef" , 2, NULL) );
echo"\nDone";
?>
---EXPECTF--
+--EXPECT--
--- Iteration 1 ---
-- Variations for two arguments --
diff --git a/ext/standard/tests/strings/trim1.phpt b/ext/standard/tests/strings/trim1.phpt
index 1ad504c61d..a31d7213a1 100644
--- a/ext/standard/tests/strings/trim1.phpt
+++ b/ext/standard/tests/strings/trim1.phpt
@@ -49,7 +49,7 @@ var_dump( trim($str, "us\ning") );
echo "\nDone";
?>
---EXPECTF--
+--EXPECT--
string(0) ""
string(0) ""
string(1) "0"
diff --git a/ext/standard/tests/strings/vfprintf_error1.phpt b/ext/standard/tests/strings/vfprintf_error1.phpt
index f2057ea388..fdaecd6fb3 100644
--- a/ext/standard/tests/strings/vfprintf_error1.phpt
+++ b/ext/standard/tests/strings/vfprintf_error1.phpt
@@ -42,7 +42,7 @@ $file = 'vfprintf_error1.txt';
unlink( $file );
?>
---EXPECTF--
+--EXPECT--
-- Testing vfprintf() function with more than expected no. of arguments --
Wrong parameter count for vfprintf()
Wrong parameter count for vfprintf()
diff --git a/ext/standard/tests/time/strptime_error.phpt b/ext/standard/tests/time/strptime_error.phpt
index d7eb11fc55..87965cd1a2 100644
--- a/ext/standard/tests/time/strptime_error.phpt
+++ b/ext/standard/tests/time/strptime_error.phpt
@@ -24,7 +24,7 @@ $format = '%b %d %Y %H:%M:%S';
var_dump( strptime('foo', $format) );
?>
---EXPECTF--
+--EXPECT--
*** Testing strptime() : error conditions ***
-- Testing strptime() function on failure --
diff --git a/ext/tokenizer/tests/001.phpt b/ext/tokenizer/tests/001.phpt
index 8e58c81891..006377d5e9 100644
--- a/ext/tokenizer/tests/001.phpt
+++ b/ext/tokenizer/tests/001.phpt
@@ -129,7 +129,7 @@ echo token_name(0x8000000F), "\n";
echo "Done\n";
?>
---EXPECTF--
+--EXPECT--
T_INCLUDE
T_INCLUDE_ONCE
T_EVAL
diff --git a/ext/xmlreader/tests/static.phpt b/ext/xmlreader/tests/static.phpt
index 1c6cb5b870..a722e31105 100644
--- a/ext/xmlreader/tests/static.phpt
+++ b/ext/xmlreader/tests/static.phpt
@@ -22,7 +22,7 @@ while ($reader->read()) {
echo $reader->name, "\n";
}
?>
---EXPECTF--
+--EXPECT--
books
books
books
diff --git a/ext/xmlwriter/tests/bug41326.phpt b/ext/xmlwriter/tests/bug41326.phpt
index 886e149261..c04ffe3167 100644
--- a/ext/xmlwriter/tests/bug41326.phpt
+++ b/ext/xmlwriter/tests/bug41326.phpt
@@ -35,7 +35,7 @@ $xw->endElement();
$xw->endDocument();
print $xw->flush(true);
?>
---EXPECTF--
+--EXPECT--
<?xml version="1.0"?>
<test>
<foo/>
diff --git a/tests/output/stream_isatty_err.phpt b/tests/output/stream_isatty_err.phpt
index 55a25f1c9f..e7c1038350 100644
--- a/tests/output/stream_isatty_err.phpt
+++ b/tests/output/stream_isatty_err.phpt
@@ -13,7 +13,7 @@ STDERR
require __DIR__.'/stream_isatty.inc';
testToStdErr();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
diff --git a/tests/output/stream_isatty_in-err.phpt b/tests/output/stream_isatty_in-err.phpt
index 2554eb4689..73514955d4 100644
--- a/tests/output/stream_isatty_in-err.phpt
+++ b/tests/output/stream_isatty_in-err.phpt
@@ -13,7 +13,7 @@ STDIN STDERR
require __DIR__.'/stream_isatty.inc';
testToStdErr();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_in-out-err.phpt b/tests/output/stream_isatty_in-out-err.phpt
index 496bdd100e..9b65e8861b 100644
--- a/tests/output/stream_isatty_in-out-err.phpt
+++ b/tests/output/stream_isatty_in-out-err.phpt
@@ -13,7 +13,7 @@ STDIN STDOUT STDERR
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_in-out.phpt b/tests/output/stream_isatty_in-out.phpt
index d58e9aa05c..c2bb346854 100644
--- a/tests/output/stream_isatty_in-out.phpt
+++ b/tests/output/stream_isatty_in-out.phpt
@@ -13,7 +13,7 @@ STDIN STDOUT
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(false)
STDIN (fopen): bool(false)
STDIN (php://fd/0): bool(false)
diff --git a/tests/output/stream_isatty_out-err.phpt b/tests/output/stream_isatty_out-err.phpt
index e3ec1237bc..dc113a9720 100644
--- a/tests/output/stream_isatty_out-err.phpt
+++ b/tests/output/stream_isatty_out-err.phpt
@@ -13,7 +13,7 @@ STDOUT STDERR
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
diff --git a/tests/output/stream_isatty_out.phpt b/tests/output/stream_isatty_out.phpt
index 3ea4996ac4..f18c986c5a 100644
--- a/tests/output/stream_isatty_out.phpt
+++ b/tests/output/stream_isatty_out.phpt
@@ -13,7 +13,7 @@ STDOUT
require __DIR__.'/stream_isatty.inc';
testToStdOut();
?>
---EXPECTF--
+--EXPECT--
STDIN (constant): bool(true)
STDIN (fopen): bool(true)
STDIN (php://fd/0): bool(true)
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch and 'fork/tests/use-simpler-expect-section' have diverged,
# and have 1 and 1 different commits each, respectively.
# (use "git pull" to merge the remote branch into yours)
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch is up to date with 'fork/tests/use-simpler-expect-section'.
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
#
# Date: Mon Apr 27 21:01:47 2020 +0200
#
# On branch tests/use-simpler-expect-section
# Your branch is up to date with 'fork/tests/use-simpler-expect-section'.
#
# Changes to be committed:
# modified: Zend/tests/005.phpt
# modified: Zend/tests/bug27669.phpt
# modified: Zend/tests/bug51827.phpt
# modified: Zend/tests/bug63206.phpt
# modified: Zend/tests/bug63206_1.phpt
# modified: Zend/tests/bug63206_2.phpt
# modified: Zend/tests/incompat_ctx_user.phpt
# modified: Zend/tests/instanceof_001.phpt
# modified: Zend/tests/unexpected_ref_bug.phpt
# modified: ext/date/tests/012.phpt
# modified: ext/date/tests/DatePeriod_wrong_recurrence_on_constructor.phpt
# modified: ext/date/tests/DateTimeZone_listAbbreviations_basic1.phpt
# modified: ext/date/tests/date_parse_001.phpt
# modified: ext/date/tests/date_parse_error.phpt
# modified: ext/date/tests/gmmktime_basic.phpt
# modified: ext/date/tests/mktime_error.phpt
# modified: ext/date/tests/timezone_abbreviations_list_basic1.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic-mb.phpt
# modified: ext/fileinfo/tests/finfo_set_flags_basic.phpt
# modified: ext/filter/tests/007.phpt
# modified: ext/filter/tests/008.phpt
# modified: ext/filter/tests/010.phpt
# modified: ext/hash/tests/hash_hkdf_edges.phpt
# modified: ext/hash/tests/hash_hmac_file_basic.phpt
# modified: ext/json/tests/json_last_error_msg_error.phpt
# modified: ext/libxml/tests/bug76777.phpt
# modified: ext/pcre/tests/preg_replace_error2.phpt
# modified: ext/pcre/tests/split2.phpt
# modified: ext/phar/tests/phar_isvalidpharfilename.phpt
# modified: ext/phar/tests/pharfileinfo_chmod.phpt
# modified: ext/phar/tests/pharfileinfo_setmetadata.phpt
# modified: ext/phar/tests/stat2_5.3.phpt
# modified: ext/posix/tests/posix_getgrgid_error.phpt
# modified: ext/posix/tests/posix_getpgid_error.phpt
# modified: ext/posix/tests/posix_getpwuid_error.phpt
# modified: ext/posix/tests/posix_getsid_error.phpt
# modified: ext/posix/tests/posix_initgroups.phpt
# modified: ext/posix/tests/posix_kill_error.phpt
# modified: ext/posix/tests/posix_strerror_error.phpt
# modified: ext/reflection/tests/ReflectionClass_hasProperty_002.phpt
# modified: ext/reflection/tests/ReflectionMethod_getClosure_error.phpt
# modified: ext/reflection/tests/ReflectionMethod_invokeArgs_error3.phpt
# modified: ext/reflection/tests/ReflectionObject_getName_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_isDefault_basic.phpt
# modified: ext/reflection/tests/ReflectionProperty_setValue_error.phpt
# modified: ext/session/tests/bug79221.phpt
# modified: ext/session/tests/session_cache_limiter_error.phpt
# modified: ext/spl/tests/bug61347.phpt
# modified: ext/spl/tests/fileobject_005.phpt
# modified: ext/spl/tests/iterator_045.phpt
# modified: ext/spl/tests/regexIterator_setMode_error.phpt
# modified: ext/spl/tests/spl_heap_is_empty_basic.phpt
# modified: ext/sqlite3/tests/sqlite3_40_setauthorizer.phpt
# modified: ext/sqlite3/tests/sqlite3stmt_getsql_expanded.phpt
# modified: ext/standard/tests/array/005.phpt
# modified: ext/standard/tests/array/009.phpt
# modified: ext/standard/tests/array/array_diff_assoc_error.phpt
# modified: ext/standard/tests/array/array_diff_error.phpt
# modified: ext/standard/tests/array/array_diff_key_error.phpt
# modified: ext/standard/tests/array/array_filter.phpt
# modified: ext/standard/tests/array/array_filter_variation10.phpt
# modified: ext/standard/tests/array/array_key_exists_variation3.phpt
# modified: ext/standard/tests/array/array_map_error.phpt
# modified: ext/standard/tests/array/array_merge.phpt
# modified: ext/standard/tests/array/array_push.phpt
# modified: ext/standard/tests/array/array_slice.phpt
# modified: ext/standard/tests/array/array_unshift.phpt
# modified: ext/standard/tests/array/array_walk.phpt
# modified: ext/standard/tests/array/array_walk_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive1.phpt
# modified: ext/standard/tests/array/array_walk_recursive_error2.phpt
# modified: ext/standard/tests/array/array_walk_recursive_variation7.phpt
# modified: ext/standard/tests/array/array_walk_variation7.phpt
# modified: ext/standard/tests/array/uasort_variation8.phpt
# modified: ext/standard/tests/array/usort_variation8.phpt
# modified: ext/standard/tests/assert/assert_variation.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_1.phpt
# modified: ext/standard/tests/file/auto_detect_line_endings_2.phpt
# modified: ext/standard/tests/file/basename.phpt
# modified: ext/standard/tests/file/fscanf.phpt
# modified: ext/standard/tests/file/fscanf_variation10.phpt
# modified: ext/standard/tests/file/is_dir_variation3.phpt
# modified: ext/standard/tests/file/is_executable_error.phpt
# modified: ext/standard/tests/file/is_executable_variation3.phpt
# modified: ext/standard/tests/file/is_file_variation3.phpt
# modified: ext/standard/tests/file/is_readable_error.phpt
# modified: ext/standard/tests/file/is_readable_variation3.phpt
# modified: ext/standard/tests/file/is_uploaded_file_basic.phpt
# modified: ext/standard/tests/file/is_writable_error.phpt
# modified: ext/standard/tests/file/is_writable_variation3.phpt
# modified: ext/standard/tests/file/move_uploaded_file_basic.phpt
# modified: ext/standard/tests/general_functions/get_include_path_basic.phpt
# modified: ext/standard/tests/general_functions/include_path.phpt
# modified: ext/standard/tests/general_functions/is_array.phpt
# modified: ext/standard/tests/general_functions/is_bool.phpt
# modified: ext/standard/tests/general_functions/is_float_64bit.phpt
# modified: ext/standard/tests/general_functions/is_int_64bit.phpt
# modified: ext/standard/tests/general_functions/is_null.phpt
# modified: ext/standard/tests/general_functions/is_numeric.phpt
# modified: ext/standard/tests/general_functions/is_object.phpt
# modified: ext/standard/tests/general_functions/is_scalar.phpt
# modified: ext/standard/tests/general_functions/is_string.phpt
# modified: ext/standard/tests/general_functions/ob_get_length_basic.phpt
# modified: ext/standard/tests/general_functions/php_uname_error.phpt
# modified: ext/standard/tests/general_functions/print_r.phpt
# modified: ext/standard/tests/general_functions/print_r_64bit.phpt
# modified: ext/standard/tests/general_functions/var_dump_64bit.phpt
# modified: ext/standard/tests/general_functions/var_export-locale.phpt
# modified: ext/standard/tests/image/image_type_to_extension.phpt
# modified: ext/standard/tests/math/lcg_value_basic.phpt
# modified: ext/standard/tests/network/inet.phpt
# modified: ext/standard/tests/network/ip_x86_64.phpt
# modified: ext/standard/tests/random/random_int.phpt
# modified: ext/standard/tests/serialize/bug45706.phpt
# modified: ext/standard/tests/streams/bug61115.phpt
# modified: ext/standard/tests/streams/bug78662.phpt
# modified: ext/standard/tests/streams/stream_set_timeout_error.phpt
# modified: ext/standard/tests/strings/chr_error.phpt
# modified: ext/standard/tests/strings/fprintf_error.phpt
# modified: ext/standard/tests/strings/htmlentities24.phpt
# modified: ext/standard/tests/strings/htmlspecialchars.phpt
# modified: ext/standard/tests/strings/ltrim.phpt
# modified: ext/standard/tests/strings/metaphone.phpt
# modified: ext/standard/tests/strings/parse_str_basic1.phpt
# modified: ext/standard/tests/strings/parse_str_basic3.phpt
# modified: ext/standard/tests/strings/printf_error.phpt
# modified: ext/standard/tests/strings/rtrim.phpt
# modified: ext/standard/tests/strings/soundex.phpt
# modified: ext/standard/tests/strings/sprintf_variation15.phpt
# modified: ext/standard/tests/strings/sscanf_error.phpt
# modified: ext/standard/tests/strings/str_ireplace.phpt
# modified: ext/standard/tests/strings/stristr.phpt
# modified: ext/standard/tests/strings/strrchr_variation1.phpt
# modified: ext/standard/tests/strings/strrchr_variation2.phpt
# modified: ext/standard/tests/strings/strtolower.phpt
# modified: ext/standard/tests/strings/strtoupper1.phpt
# modified: ext/standard/tests/strings/strval_error.phpt
# modified: ext/standard/tests/strings/substr.phpt
# modified: ext/standard/tests/strings/trim1.phpt
# modified: ext/standard/tests/strings/vfprintf_error1.phpt
# modified: ext/standard/tests/time/strptime_error.phpt
# modified: ext/tokenizer/tests/001.phpt
# modified: ext/xmlreader/tests/static.phpt
# modified: ext/xmlwriter/tests/bug41326.phpt
# modified: tests/output/stream_isatty_err.phpt
# modified: tests/output/stream_isatty_in-err.phpt
# modified: tests/output/stream_isatty_in-out-err.phpt
# modified: tests/output/stream_isatty_in-out.phpt
# modified: tests/output/stream_isatty_out-err.phpt
# modified: tests/output/stream_isatty_out.phpt
#
# Changes not staged for commit:
# modified: run-tests.php
#
2020-04-27 21:04:41 +02:00
Gabriel Caruso
aaa30f14eb
Reduce code duplication using for loop
2020-04-27 17:03:40 +02:00
Gabriel Caruso
7ce8c5ad89
Slipt error messages while checking magic methods attributes
...
Closes GH-5465
2020-04-27 16:32:00 +02:00
Nikita Popov
f38d6cea42
Check func_info consistency
...
Make sure explicitly specified func_info is a subset of
automatically computed info. This will at least prevent
cases where a type is removed from stubs, but not removed
from func_info.
Closes GH-5471.
2020-04-27 16:25:59 +02:00
Nikita Popov
16e9d74f07
Fixed bug #79432
2020-04-27 16:22:32 +02:00
Nikita Popov
c5f87eee5d
Mark passthru() as RC0
...
This function only returns null/false, RC1 does not make sense.
2020-04-27 15:39:31 +02:00
Nikita Popov
58eafbe734
Make array_rand() type info more accurate
2020-04-27 15:36:32 +02:00
Nikita Popov
cc8a8613b6
Remove MAY_BE_FALSE from range() type info
2020-04-27 15:36:32 +02:00
Máté Kocsis
a6960cfb05
Fix inaccurate func infos
...
Closes GH-5472
2020-04-27 15:35:44 +02:00
Nikita Popov
19e886d9d8
Avoid throw expression leaks
...
Mark "throw" used in expression context with a flag, and don't
treat it as a BB terminator in that case. This prevents us from
optimizing away the following opcodes as unreachable, which may
result in live ranges being dropped incorrectly.
Close GH-5450.
2020-04-27 15:22:05 +02:00
Dmitry Stogov
29fc6846d8
Fixed incorrect side exit address
2020-04-27 15:59:37 +03:00
Christoph M. Becker
51dfba3d7b
Show all tests on AppVeyor
...
This is a temporary measure to try to resolve the often failing
mysqli_insert_packet_overflow.phpt issue. Unfortunately, I have not
been able to reproduce the test failure locally, or in my php-src fork.
2020-04-27 14:57:07 +02:00
Alex Dowad
af67b06995
SessionUpdateTimestampHandler class was never implemented
...
It seems that in 2015, work was being done so that users could add their own custom
session handlers. The implementer intended to add a class called
SessionUpdateTimestampHandler, but never did so. The variable which was intended to point
to its class entry is never initialized.
The implementer also coded two methods for this class. Strangely, the method bodies
are declared with PHP_METHOD(SessionHandler, ...) rather than
PHP(SessionUpdateTimestampHandler, ...). However, these method implementations are not
added to the method table of any class or interface. They are just dead code.
2020-04-27 14:51:33 +02:00
Xinchen Hui
58005d7b42
Remove unnecessary register qualifier
2020-04-27 20:31:06 +08:00
Nikita Popov
a447897db0
Use information about classes returned by internal functions
2020-04-27 12:50:24 +02:00
Nikita Popov
fd00c7cf10
Pass existing lcname to check_magic_method_implementation
2020-04-27 12:33:29 +02:00
Gabriel Caruso
74f1547591
Use zend_string in zend_check_magic_method implementation
2020-04-27 12:23:37 +02:00
Symeon Charalabides
d5e51fc186
Test xml_error_string() and xml_get_error_code()
...
Closes GH-5456.
2020-04-27 11:56:58 +02:00
Flávio Heleno
1baa58317f
Fixed run-tests.php for PHP 7.2
...
Flexible heredoc syntax is only available since PHP 7.3.
Closes GH-5444.
2020-04-27 11:55:40 +02:00
Alex Dowad
bbb8b95dbd
Remove duplicate tests
...
Remove duplicate test (iterator_018.phpt)
This is exactly the same as iterator_011.phpt.
Remove duplicate test (offsets_chaining_2.phpt)
This is exactly the same as offsets_chaining_1.phpt.
Remove duplicate test (offsets_chaining_4.phpt)
This is exactly the same as offsets_chaining_3.phpt.
Remove duplicate test (ReflectionObject_export_basic1.phpt)
This is exactly the same as ReflectionObject___toString_basic1.phpt.
Remove duplicate test (ReflectionObject_export_basic2.phpt)
This is exactly the same as ReflectionObject___toString_basic2.phpt.
Closes GH-5467.
2020-04-27 11:53:57 +02:00
Vladyslav Startsev
b64aee9706
Ensure bcmath scale is between 0 and INT_MAX
...
Make sure bcmatch scale is between 0 and INT_MAX, both for the
ini setting, and all the functions accepting a scale argument.
A ValueError is thrown if a function argument is out of range.
Closes GH-5455.
2020-04-27 11:53:26 +02:00
Nikita Popov
48a34bc120
Add helper APIs for get_gc implementations
...
get_gc() implementations that need to explore heterogeneous data
currently work by computing how many GC entries they need,
allocating a buffer for that and storing it on the object. This
is inefficient and wastes memory, because the buffer is retained
after the GC run.
This commit adds an API for a single global GC buffer, which can
be reused by get_gc implementations (as only one get_gc call is
ever active at the same time). The GC buffer will automatically
grow during the GC run and be discarded at the end.
2020-04-27 10:48:22 +02:00
Xinchen Hui
6a500cb249
SSE2 str_tolower
2020-04-27 16:35:06 +08:00
Nikita Popov
41c7d28c11
Add macro to get ini target address
2020-04-27 10:30:00 +02:00
Christoph M. Becker
ecc6b8cc29
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79065 : DOM classes do not expose properties to Reflection
2020-04-27 10:28:00 +02:00
Christoph M. Becker
f578d57ee9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79470 : PHP incompatible with 3rd party file system on demand
2020-04-27 09:32:02 +02:00
Levi Morrison
90db6f2cc5
Add case insensitive find_ptr hash functions
...
- zend_hash_find_ptr_lc(ht, zend_string *key)
- zend_hash_str_find_ptr_lc(ht, const char *str, size_t len)
Note that zend_hash_str_find_ptr_lc used to exist in zend_compile.c
as zend_hash_find_ptr_lc. When exporting this I figured it
was best to use the same conventions as the rest of zend_hash.h.
2020-04-26 23:29:41 +02:00
Christoph M. Becker
e2f1586225
Add gen_stub.php to devel pack
2020-04-26 12:33:33 +02:00
Máté Kocsis
33c3691c33
Generate method entries from stubs for Zend classes
...
Closes GH-5459
2020-04-26 11:13:14 +02:00
Gabriel Caruso
d21d23afef
Clean section of test not working due to short open tags
...
Closes GH-5440
2020-04-26 02:20:43 +02:00
Gabriel Caruso
6f908a0bf4
Check Serialization magic methods structure
...
Closes GH-5441
2020-04-26 02:16:39 +02:00
Máté Kocsis
5bf01fca60
Use the default type error message for Exception::__construct()
...
Closes GH-5460
2020-04-26 00:25:42 +02:00
Máté Kocsis
d7f7080bb5
Generate methods entries from stubs for ext/spl
...
Closes GH-5458
2020-04-25 23:54:56 +02:00
Alex Dowad
77ee4e63a6
Nothing in codebase cares whether platform has fpclass()
...
Therefore, don't bother checking for it in 'configure' script.
Closes GH-5453
2020-04-24 21:39:55 +02:00
Christoph M. Becker
82a72ab457
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79514 : Memory leaks while including unexistent file
2020-04-24 18:17:21 +02:00
Dmitry Stogov
6ab2e82ab5
Avoid STORE of register inherited from parent trace
2020-04-24 16:32:31 +03:00
Dmitry Stogov
8a04d39d1c
Skip life range with LOAD and single use
2020-04-24 16:14:58 +03:00
Dmitry Stogov
9ddf9ac98e
cleanup
2020-04-24 16:14:44 +03:00
Derick Rethans
8397df274a
Updated to version 2020.1 (2020a)
2020-04-24 12:31:33 +01:00
Derick Rethans
79b5ca7735
Empty merge
2020-04-24 12:31:33 +01:00
Dmitry Stogov
dc379e1c45
Abort register allocation if no candidates
2020-04-24 14:24:52 +03:00
Nikita Popov
786e0ae574
Use zend_make_tmp_result() helper in more places
2020-04-24 12:10:06 +02:00
Nikita Popov
f264bf2d69
Accept result znode in zend_compile_class_decl()
...
Make this use the same pattern we use everywhere else.
2020-04-24 12:04:54 +02:00
Ilija Tovilo
f65240759f
Use return in compile_expr for consistency
2020-04-24 12:01:10 +02:00
Christoph M. Becker
c915c60171
Update intl test suite for ICU 67.1
2020-04-24 11:24:44 +02:00
Symeon Charalabides
f7ad25f6c1
Test XSLTProcessor::importStylesheet() with invalid stylesheet
2020-04-24 10:12:50 +02:00
Christoph M. Becker
767a77ac19
Fix #36365 : scandir duplicates file name at every 65535th file
...
Since DIR_W32.offset is declared as `uint16_t`, we have an overflow for
directories with many entries. This patch changes the field to
`uint32_t`.
2020-04-24 09:47:56 +02:00
Sara Golemon
41a04f96b4
Remove dead checks for LOG_FILE paths, replace with CONFIG_ONLY option
2020-04-24 01:27:40 +00:00
Christoph M. Becker
53e0331302
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add additional preg_match test case
2020-04-23 17:39:47 +02:00
Ilija Tovilo
0810fcd0d0
Make throw statement an expression
...
RFC: https://wiki.php.net/rfc/throw_expression
This has an open issue with temporaries that are live at the time
of the throw being leaked. Landing this now for easier testing and
will revert if we cannot resolve the issue.
Closes GH-5279.
2020-04-23 12:51:23 +02:00
Jacob Dreesen
64d30c1976
Fix typo in UPGRADING [ci skip]
2020-04-23 11:54:18 +02:00
Nikita Popov
cf7c68283d
Fix treatment of "self" when validating against trait method
...
If we're validating a class method against a trait method, we need
to treat "self" in the trait method as the class where the method
is used. To achieve this, we need to thread the proto scope through
all methods, so it can be provided separately from proto.common->scope.
2020-04-23 11:41:34 +02:00
Dmitry Stogov
13df3fcb0a
More accurate life range termination
2020-04-23 11:49:28 +03:00
Your Name
ef0e4478c5
Add get_debug_type() function
...
RFC: https://wiki.php.net/rfc/get_debug_type
2020-04-23 10:45:08 +02:00
Nikita Popov
8597ec00d4
Remove support for libmysqlclient 5.0
...
Closes GH-5391.
2020-04-23 10:38:20 +02:00
Nikita Popov
baabb5398f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79447
2020-04-23 10:31:07 +02:00
Alex Dowad
c36b9e93fa
Remove unneeded prototype for spl_array_get_iterator
2020-04-23 10:05:21 +02:00
Alex Dowad
03ad54af96
Remove unused 'ce_get_iterator' field from spl_fixedarray_object
2020-04-23 10:05:08 +02:00
Alex Dowad
258bffca91
Remove unused 'ce_get_iterator' field from spl_heap_object
2020-04-23 10:05:08 +02:00
George Peter Banyard and Christoph M. Becker
f91f72607b
Drop unnecessary stdint and inttypes header checks
...
These are always available as of C99.
Closes GH-5323
Co-authored-by: "Christoph M. Becker" <cmbecker69@gmx.de >
2020-04-22 20:18:19 +02:00
Nicolas Grekas
657f756ccd
Skip non-existing properties returned by __sleep()
2020-04-22 16:41:04 +02:00
Symeon Charalabides
d9a96629fe
Tests for the default case of the parameter of xml_parser_get_option() and xml_parser_set_option(). These cases are, as of now, not being tested.
2020-04-22 16:13:03 +02:00
Tyson Andre
630897f996
Document change to ReflectionMethod->isConstructor/isDestructor
...
See https://externals.io/message/109377
This prevented PHPUnit's test doubles from being created for interfaces.
The reason this changed is
https://github.com/php/php-src/pull/3846/files#diff-3a8139128d4026ce0cb0c86beba4e6b9L5549-R5605
(ReflectionMethod::isConstruct checks if the method is the zend_class_entry's
constructor, etc.)
2020-04-22 15:24:35 +02:00
Christoph M. Becker
c33e5043a8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79503 : Memory leak on duplicate metadata
2020-04-22 15:09:14 +02:00
Christoph M. Becker
6b2c002c41
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add additional preg_match test case
2020-04-22 15:03:26 +02:00
Dmitry Stogov
11c698f1f3
Reorder conditions
2020-04-22 15:56:54 +03:00
Christoph M. Becker
1b42f7d9bf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade to PCRE2 10.34
2020-04-22 14:24:57 +02:00
Nikita Popov
427cc4f496
Diagnose missing format specifier at end of string
2020-04-22 13:05:16 +02:00
Dmitry Stogov
572b799b52
Fixed register allocation constraints
2020-04-22 13:49:54 +03:00
Nikita Popov
f6455c5048
Emit diagnostic on unknown printf specifier
...
Removing lots of bogus tests...
Closes GH-5435.
2020-04-22 12:42:24 +02:00
Nikita Popov
6ef0d470bf
Remove some redundant sprintf variation tests
...
Add a single test that feeds different data types into the relevant
format specifiers, and remove tests that test full matrices of
different types with different formats and modifiers. We're just
interested in how the types are going to be interpreted, the behavior
of all the modifiers is going to stay the same.
2020-04-22 11:09:46 +02:00
Nikita Popov
02e5539637
printf: Unify error case
...
There were a couple of places using efree() on result, which works,
but is very fishy. Unify error handling with goto.
2020-04-22 10:18:03 +02:00
Nikita Popov
30a5f3da99
printf: Report error if missing padding character
2020-04-22 10:14:30 +02:00
George Peter Banyard
0b99017516
Fix error message in ext/socket
2020-04-22 00:50:32 +02:00
George Peter Banyard
7ff8eaa545
Promote warnings to Errors in sockets's extension.
2020-04-21 20:41:26 +02:00
Nikita Popov
2aa661887f
Remove redundant vfprintf/vsprintf variation tests
...
These duplicate vprintf() variation tests. While it's useful to
test the vfprintf() and vsprintf() variants of the function, the
main formatting machinery is shared between them, and it makes
little sense to repeat the full set of format tests for all of
them.
2020-04-21 18:26:59 +02:00
Nikita Popov
40ceafc7f2
Fix number of required parameters in printf
...
If n$ references are involved, the maximum argnum referenced may
not the one at the end. Store it explicitly.
2020-04-21 17:01:47 +02:00
Dmitry Stogov
94fba02621
Reuse registers allocated for parent trace in side traces
2020-04-21 17:34:31 +03:00
Dmitry Stogov
333a28ed58
Register allocation is useless if JIT just calls standarad VM handlers
2020-04-21 14:56:56 +03:00
Nikita Popov
292085f336
Generate zend_builtin_functions FEs from stubs
2020-04-21 12:23:56 +02:00
Dmitry Stogov
832cfa15eb
Removed old TODO
2020-04-21 12:07:36 +03:00
Nikita Popov
370c00e9cf
Add crude memory limit to tracked alloc
...
Check whether the requested allocation size exceeds limit (rather
than the cumulative size).
This is useful to prevent allocations triggering OOM during fuzzing.
2020-04-21 10:44:15 +02:00
Nikita Popov
fa4bdf1cda
Make gen_stub parallelism safe
...
If PHP-Parser is not yet installed, make sure we don't try to
install it N times in parallel.
2020-04-21 10:20:51 +02:00
Symeon Charalabides
d554d91ce7
Ensure hash_update_stream() always returns the same hash when $length = 0
2020-04-21 08:55:15 +02:00
Christoph M. Becker
321d9d9ae3
Fix OPcache build
...
`||` at the beginning of a line has special meaning for the DynAsm
preprocessor.
2020-04-20 17:40:16 +02:00
Christoph M. Becker
3d1b730c11
Fix #71417 : fread() does not report zlib.inflate errors
...
If the zlib.inflate filter fails to decompress the stream, we raise a
notice instead of failing silently.
2020-04-20 16:49:08 +02:00
Nikita Popov
661c0ac7f3
Remove support for EBCDIC
...
Closes GH-5390.
2020-04-20 16:39:39 +02:00
Nikita Popov
58f9c4053e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't rand() in test
2020-04-20 16:37:19 +02:00
Dmitry Stogov
b0b43e86ae
Register allocator and deoptimizer for tracing JIT.
2020-04-20 16:02:03 +03:00
Christoph M. Becker
d757be640f
Fix #71263 : fread() does not report bzip2.decompress errors
...
If the bzip2.decompress filter fails to decompress the stream, we raise
a notice instead of failing silently.
2020-04-20 14:21:50 +02:00
Máté Kocsis
6111d64cda
Improve a last couple of argument error messages
...
Closes GH-5404
2020-04-20 13:09:00 +02:00
Nikita Popov
283d37ad8f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file name clash in touch_variation1.phpt
2020-04-20 12:07:59 +02:00
Nikita Popov
3d5db42ca5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #67369 ArrayObject serializatino drops the iterator class
2020-04-20 11:56:35 +02:00
Christoph M. Becker
193cb97a0e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79491 : Search for .user.ini extends up to root dir
2020-04-20 11:00:01 +02:00
Nikita Popov
ae5d7e4e96
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Apply doc root fix for FPM
2020-04-20 10:48:20 +02:00
Máté Kocsis
9955230312
Fix order of ZPP in ext/sqlite3
2020-04-20 10:39:09 +02:00
Máté Kocsis
4815be44db
Generate function entries from stubs
...
Converts ext/pcntl, ext/simplexml, ext/snmp, ext/soap, ext/sqlite3.
Closes GH-5421
2020-04-20 10:38:41 +02:00
Nikita Popov
8e9bc90004
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79497 : Fix php_openssl_subtract_timeval()
2020-04-20 10:26:45 +02:00
Tyson Andre
cd56395d47
Speed up ZEND_SWITCH_STRING/ZEND_SWITCH_LONG for wrong type
...
This has the minor benefit of avoiding loading the address of the
jump table when the expression for the switch isn't a string/long.
gcc doesn't seem to optimize that.
The previous function body is the original implementation: ad8652818a
```
// Before: 0.267s, after: 0.265s
function test_switch($x) {
for ($i = 0; $i < 10000000; $i++) {
switch ($x) {
case 'a':
case 'b':
echo "i=$i\n";
}
}
}
test_switch(null);
```
Closes GH-5419
2020-04-19 17:31:18 -04:00
Máté Kocsis
928b25cd6e
Generate function entries from stubs for mysqli
...
Closes GH-5420
2020-04-19 21:56:47 +02:00
Tyson Andre
4e1219ac88
[skip ci] Fix typos in jit code comments
...
And in Opcache's zend_cfg.h
Closes GH-5414
2020-04-19 10:03:49 -04:00
George Peter Banyard
3b9d33dc20
[skip ci] Fix comment in Tidy autoconf file
2020-04-19 15:53:06 +02:00
Benjamin Eberlei
ec88bbc4c6
Enhance test failure SH script to allow gdb, valgrind, rr as alternative modes.
2020-04-18 16:14:00 +02:00
George Peter Banyard
826a745671
Fix [-Wjump-misses-init] in generated zend_opcode.c
2020-04-18 14:52:49 +02:00
George Peter Banyard
594287a736
Fix [-Wjump-misses-init] warning in MySQL new driver extension
2020-04-18 14:52:49 +02:00
George Peter Banyard
925679b057
Fix [-Wjump-misses-init] in spl_directory.c by adding an inner scope
2020-04-18 14:52:48 +02:00
George Peter Banyard
9f8eb9d515
Fix [-Wjump-misses-init] in sockets extension
2020-04-18 14:52:48 +02:00
George Peter Banyard
2a4c81f1ee
Fix [-Wjump-misses-init] in php_mbregex.c by adding an inner scope
2020-04-18 14:52:48 +02:00
Nikita Popov
08c5c69eff
Remove ZEND_ACC_DTOR flag
...
This is only used in reflection, where doing a simple string check
is acceptable.
I'm also dropping the "dtor" printing in the reflection dump.
Dtors are just one of many magic methods, I don't think there's
a point in explicitly highlighting them, when the name is already
unambiguous.
2020-04-17 15:32:47 +02:00
Nikita Popov
7352213b38
Early return if variadic type check fails
...
Don't check all the remaining arguments after one check failed.
I don't think this makes an observable behavior difference,
because we already suppress duplicate exceptions in argument
type error reporting.
2020-04-17 14:24:44 +02:00
Christoph M. Becker
7574823911
Enable JIT for AppVeyor CI
...
This is not supposed to bring any test performance optimization, but
allows us to test basic JIT functionality on Windows.
2020-04-17 14:17:14 +02:00
Dmitry Stogov
1a5a6d72a1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zend_timeout() may access EX(opline)
2020-04-17 14:56:18 +03:00
Christoph M. Becker
a1eaaa692e
Fix #79475 : [JIT] func_get_args() assertion violation
...
`func_get_args()` may return `zend_empty_array`, which has refcount 2
to enforce separation. We have to cater to that during type inference
so that the optimization in the JIT macro `SEPARATE_ARRAY` doesn't
prevent the separation.
2020-04-17 09:53:23 +02:00
Máté Kocsis
7a260a4a1c
Revert unintended test change
2020-04-16 18:56:23 +02:00
Gabriel Caruso
add8c15a31
Align magic methods' camelCase with documentation
...
Closes GH-5398
2020-04-16 13:53:13 +02:00
Dmitry Stogov
ea0110f0de
Improve registers reuse
2020-04-16 14:35:51 +03:00
George Peter Banyard
850feffac0
Add S390X architecture as a Travis job
...
This gives us a way to compile and test a big endian architecture.
Closes GH-5382.
2020-04-16 12:20:50 +02:00
Nikita Popov
810c5c74e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79336
2020-04-16 12:18:50 +02:00
Nikita Popov
00013401ff
Allow using prototypes when optimizing arg passing
...
Closes GH-5193.
2020-04-16 12:15:19 +02:00
Christoph M. Becker
bd7a52c9b2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move test to its folder
2020-04-16 11:57:54 +02:00
Nikita Popov
a866ef88ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix MySQL local infile / attr handling on big endian systems
2020-04-16 11:23:11 +02:00
Gabriel Caruso
b10b73eb86
Fix magic method name
2020-04-16 10:39:25 +02:00
Gabriel Caruso
75a58ba522
Improve error messages for magic methods by appending method's class
...
Closes GH-5397.
2020-04-16 10:34:58 +02:00
vibhutisawant
481caf17bc
Fix Bug #79431 Various compiler warnings on Big endian architecture with GCC 5.4.0
...
Fix [-Werror=maybe-uninitialized] compilation warnings on big endian system
Closes GH-5373
2020-04-15 23:30:06 +02:00
Nikita Popov
dd163d05ff
Remove OP_RANGE_EX distinction
...
Only leave OP_RANGE macros, which always have the "EX" behavior.
This was already done for most other macros before, but these
were missed. This helps avoid mistakes by using the wrong macro.
2020-04-15 13:00:36 +02:00
Dmitry Stogov
99084262c3
Use proper macro
2020-04-15 13:09:55 +03:00
Dmitry Stogov
782dc8d73b
Removed unused parameter
2020-04-15 13:08:09 +03:00
Nikita Popov
fd5dc55759
Force short_open_tag=0 in run-tests.php
...
Make sure we don't accidentially add tests depending on short tags.
2020-04-15 11:27:03 +02:00
Nikita Popov
5e8be710ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix directory clash in tempnam_variation4 test
2020-04-15 11:25:18 +02:00
Nikita Popov
72512418d5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79477
2020-04-15 11:22:05 +02:00
Nikita Popov
d68dfaf05e
Remove return value from llist apply functions
...
Unlike the hash apply functions, these do not return int.
2020-04-15 11:01:12 +02:00
Nikita Popov
9043563775
Make zend_list_free return void
...
And assert that the refcount is zero. This function should only
be used internally as the resource destructor.
2020-04-15 11:01:12 +02:00
Nikita Popov
e15409b43c
Adjust zend_write_func signature
...
Make it return size_t instead of int, to line up with actual
implementation.
2020-04-15 11:01:12 +02:00
Nikita Popov
7643cf1996
More precise ifunc resolver return type
...
Fixes -Wattribute-alias warning.
2020-04-15 11:01:12 +02:00
Nikita Popov
fb718ccc7e
Suppress SIG_ERR cast warnings
...
By casting to void*. I don't want to deal with this right now.
2020-04-15 11:01:12 +02:00
Nikita Popov
2d517f68fb
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.
2020-04-15 11:01:12 +02:00
Nikita Popov
4d5ad3fb24
Fix PHP_HAVALUpdate signature
...
Fixes a -Wcast-function-type warning.
2020-04-15 11:01:12 +02:00
Nikita Popov
53e07bac79
Fix function libxml free error signature
...
Fixes a -Wcast-function-type warning.
2020-04-15 09:58:19 +02:00
Remi Collet
8e5df6092d
fix test using short_tag
2020-04-15 09:26:55 +02:00
Remi Collet
ed179c2ef4
workaround typo in system libgd 2.3.0
2020-04-15 09:07:21 +02:00
George Peter Banyard
1c334db4c8
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
2020-04-14 22:22:35 +02:00
George Peter Banyard
a2a6c7f227
Add -Wno-type-limits compiler flag to Sodium extension
...
This may happen on 32bits
2020-04-14 22:22:33 +02:00
George Peter Banyard
13938342f8
Add -Wno-ignored-qualifiers compiler flag to Tidy extension.
...
This is an issue in the provided library and needs to be fixed upstream.
2020-04-14 22:22:33 +02:00
Dmitry Stogov
ed1ad33ba4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79472 : ext/ffi/tests/040.phpt TC fails on Big endian arch
2020-04-14 20:38:42 +03:00
Christoph M. Becker
e88169e3bf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing CVE
2020-04-14 18:20:58 +02:00
Nikita Popov
110e6e4f95
Make gen_stub.php compatible with PHP 7.1 again
...
Not worth bumping requirements over this...
2020-04-14 17:55:27 +02:00
Nikita Popov
177c455f04
Fix test after callback name change
2020-04-14 17:50:54 +02:00
Alex Dowad
907bf786f1
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.
2020-04-14 17:41:52 +02:00
Nikita Popov
7a185b5d0a
Fix filter_(var|input)_array default
2020-04-14 17:41:01 +02:00
George Peter Banyard
af63050071
Remove XFAIL section of a passing COM test
...
Closes GH-5297
2020-04-14 17:31:06 +02:00
Nikita Popov
4fb705a03d
Add zend_string_concat2 API
2020-04-14 17:18:05 +02:00
Sara Golemon
489a51bff0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79468
NEWS
2020-04-14 11:14:04 -04:00
Guillaume Charifi
adea221b1a
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
2020-04-14 17:10:21 +02:00
Nikita Popov
4a935bc2c9
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.
2020-04-14 17:02:47 +02:00
Nikita Popov
bac5137e4e
Add zend_create_member_string() API
...
This is a recurring pattern.
2020-04-14 16:52:13 +02:00
Nikita Popov
d0006b5fac
Use UNKNOWN default for socket_connect()
...
Specifying the port is mandatory for INET sockets.
2020-04-14 16:09:01 +02:00
Nikita Popov
b9b2e8ddde
Fix socket_write() default value
2020-04-14 16:08:55 +02:00
Nikita Popov
e9bdbce53f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't leak peername if accept fails
2020-04-14 16:08:43 +02:00
George Peter Banyard
04ab4d09be
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.
2020-04-14 15:30:01 +02:00
Máté Kocsis
1f48feebb9
Improve some TypeError and ValueError messages
...
Closes GH-5377
2020-04-14 14:38:45 +02:00
Dmitry Stogov
11c5c78401
Added missed '~'
2020-04-14 15:37:20 +03:00
Christoph M. Becker
6e21932521
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test cases
2020-04-14 14:01:00 +02:00
Máté Kocsis
f00bcfbb7d
Generate method entries for ext/intl
...
Closes GH-5370
2020-04-14 13:39:00 +02:00
Nikita Popov
ae1364c350
Increase timeout on ubsan/asan job
...
This one occasionally runs for more than 2:30 hours.
2020-04-14 12:52:24 +02:00
Nikita Popov
56d30bb35a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79468
2020-04-14 12:02:22 +02:00
Máté Kocsis
1c469adb8b
Remove PDO::dbh_constructor()
2020-04-14 11:49:02 +02:00
Máté Kocsis
c6485535c2
Generate method entries from stubs for curl, ffi, pdo, phar
...
Closes GH-5375
2020-04-14 11:49:02 +02:00
Máté Kocsis
c5fb4f0794
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.
2020-04-14 11:49:02 +02:00
Alex Dowad
80598f1250
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.
2020-04-14 11:22:23 +02:00
Nikita Popov
d4471c6aae
Remove int6store()
...
The implementation is broken (syntactically). As it's not used
anyway, I'm just dropping it instead.
2020-04-14 10:37:37 +02:00
Christoph M. Becker
5951ff7ee5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add NEWS entries [ci skip]
2020-04-14 08:57:29 +02:00
Stanislav Malyshev
d3fbdf0048
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
2020-04-13 21:09:23 -07:00
George Peter Banyard
8300458814
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
2020-04-13 23:03:31 +02:00
George Peter Banyard
446724bcd9
Fix [-Werror=missing-braces] compiler warning
...
Partial fix to bug 79431
2020-04-13 23:03:31 +02:00
Máté Kocsis
1bba691ecc
Generate method entries for ext/session and ext/reflection
...
Closes GH-5376
2020-04-13 13:04:06 +02:00
Máté Kocsis
dfd0acf0d7
Generate method entries for ext/dom
...
Closes GH-5374
2020-04-13 00:13:11 +02:00
George Peter Banyard
422c8390a0
Fix [-Wempty-body] compiler warning in Phar extension
2020-04-12 21:10:03 +02:00
George Peter Banyard
01762e56ed
Adapt assertion as mbfl_strwidth returns a size_t
2020-04-12 19:34:05 +02:00
Máté Kocsis
68a56483ea
Generate method entries for ext/xsl
...
Closes GH-5372
2020-04-12 10:18:21 +02:00
Máté Kocsis
e088836bbc
Fix nullable types in PHPDoc
2020-04-12 00:25:33 +02:00
Tyson Andre
047d814704
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
2020-04-11 17:17:28 -04:00
Máté Kocsis
7b2a8a6dda
Lowercase NULL to null in stubs
2020-04-11 14:13:11 +02:00
Máté Kocsis
3fe49d81f8
Generate method entries from stubs for a couple of extensions
...
Closes GH-5368
2020-04-11 13:28:53 +02:00
Máté Kocsis
ca006e54e3
Add missing visibility modifiers in stubs
2020-04-11 10:23:51 +02:00
Máté Kocsis
1d05771a70
Add support for generating method entries from stubs
...
Closes GH-5363
2020-04-11 09:15:14 +02:00
Máté Kocsis
fe9860c2b0
Improve the default value format in incompatible signature error messages
...
Closes GH-5361
2020-04-10 22:50:33 +02:00
Máté Kocsis
4aa137c6a6
Fix the default value of the $length parameter of grapheme_substr()
2020-04-10 18:17:18 +02:00
Máté Kocsis
ce3b49a8e8
Fix default value of the $class_name parameter of mysqli_fetch_object()
2020-04-10 18:17:18 +02:00
Máté Kocsis
7a72e1cc7a
Fix the default value of the $flags parameter of mysqli_begin_transaction()
2020-04-10 18:17:18 +02:00
Máté Kocsis
481c8c2958
Add missing parameter to the stub of mysqli_real_connect
2020-04-10 18:17:18 +02:00
George Peter Banyard
3eba187b15
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.
2020-04-10 17:56:05 +02:00
Máté Kocsis
beff93f60d
Fix the default parameter values of stream_socket_client()
...
$timeout and $flags were mixed up
2020-04-10 17:17:12 +02:00
Máté Kocsis and Christoph M. Becker
5868aced2e
Fix the default parameter values of session_set_save_handler()
...
Co-Authored-By: Christoph M. Becker <cmbecker69@gmx.de >
2020-04-10 17:07:26 +02:00
Dmitry Stogov
0a408be0d2
Separate zend_jit_dump_lifetime_interval() function
2020-04-10 16:10:19 +03:00
Dmitry Stogov
d3dda1e0f1
Fixed overflow handling
2020-04-10 14:42:26 +03:00
Dmitry Stogov
66f2ebe448
Register allocator refactoring
2020-04-09 19:31:18 +03:00
Nikita Popov
fcc6da3e42
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.
2020-04-09 16:54:42 +02:00
Nikita Popov
c10f30fdf9
Mark spl_autoload_register function arg as UNKNOWN
...
Not passing any parameters to this function has magic behavior.
2020-04-09 16:54:40 +02:00
Nikita Popov
8a5b9cbc9f
Fix mysqli_get_client_info() stub
...
The dummy link argument is not nullable.
2020-04-09 16:54:39 +02:00
Nikita Popov
636c827aa2
Mark fgets() argument as UNKNOWN
...
If no value is passed, this reads as much as necessary, not 1024
bytes.
2020-04-09 16:22:34 +02:00
Christoph M. Becker
62e8dcbc48
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.
2020-04-09 16:15:47 +02:00
Nikita Popov
87ba975e31
Make touch() $atime parameter UNKNOWN
...
The actual default here is $time, not 0.
2020-04-09 16:11:17 +02:00
Nikita Popov
258c4dfdb2
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.
2020-04-09 16:10:56 +02:00
Nikita Popov
1dcb559664
Mark array_walk $userdata arg as UNKNOWN
...
It makes a difference whether this arg is not passed or is null.
2020-04-09 16:10:39 +02:00
Nikita Popov
b3f3a80f9c
Make stream_socket_enable_crypto() session stream nullable
2020-04-09 16:10:33 +02:00
Nikita Popov
217dfc0832
Accept null context in stream_socket_(client|server)
2020-04-09 16:10:27 +02:00
Nikita Popov
2d1bf6970d
Add Z_PARAM_RESOURCE_OR_NULL()
...
As a more explicit alternative to Z_PARAM_RESOURCE_EX(, 1, 0).
2020-04-09 15:39:11 +02:00
Nikita Popov
d030ddb2cd
Export the zend_string_concat3() API
2020-04-09 15:06:53 +02:00
Nikita Popov
696ae335e3
Export API for fetching internal func default
...
Make this functionality available outside reflection.
2020-04-09 14:55:55 +02:00
Christoph M. Becker
175e5ed4bf
Fix typo (UNKOWN -> UNKNOWN)
2020-04-09 14:06:11 +02:00
George Peter Banyard
12ec7a2730
Convert if blocks to assertions and adapt stubs accordingly
2020-04-09 13:50:37 +02:00
George Peter Banyard
73455778d4
Cache MBFL encoding for Oniguruma regex functions.
...
Closes GH-5355
2020-04-09 13:48:55 +02:00
Dmitry Stogov
41c2b275f7
cleanup
2020-04-09 14:33:29 +03:00
Dmitry Stogov
ba64b3fd41
Don't get number of passed arguments from "fake" INIT frames
2020-04-09 13:38:40 +03:00
Christoph M. Becker
e6458d67cf
Fix #79462 : method_exists and property_exists incoherent behavior
...
Both functions are closely related, so should behave the same for wrong
input types, i.e. both should throw a TypeError.
2020-04-09 11:38:47 +02:00
Nikita Popov
12324364f7
Add test to make sure internal param default eval doesn't error
2020-04-09 11:22:55 +02:00
Nikita Popov
8ba6a833de
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78434
2020-04-09 10:35:50 +02:00
Máté Kocsis and Nikita Popov
3709e74b5e
Store default parameter values of internal functions in arg info
...
Closes GH-5353. From now on, PHP will have reflection information
about default values of parameters of internal functions.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com >
2020-04-08 18:37:51 +02:00
Nikita Popov
b0d8f012f9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add php_cli_server_connect() helper
2020-04-08 17:11:50 +02:00
Nikita Popov
5293c6d6d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make mysqli_poll test more deterministic
2020-04-08 16:38:18 +02:00
Nikita Popov
3ea94ed78e
Fix typo in GD stub
2020-04-08 12:03:14 +02:00
Nikita Popov
38d93262a0
Update mb_strrpos() stub
...
We no longer accept the encoding as 3rd param, so we can make this
a proper int argument.
2020-04-08 12:03:14 +02:00
Dmitry Stogov
3042b2b201
Dump information about trace side exits
2020-04-08 12:39:24 +03:00
Christoph M. Becker
6a67067c21
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Relax overly strict test expectation
2020-04-08 11:35:28 +02:00
Christoph M. Becker
d4f9d54f1a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak introduced by fixing bug #78221
2020-04-08 10:37:28 +02:00
Nikita Popov
cb338d8c4e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test
2020-04-08 09:41:26 +02:00
Dmitry Stogov
f915b5516c
Update stack type, only if necessary
2020-04-08 10:34:24 +03:00
Dmitry Stogov
a172e056a0
Fixed TYPE/INFO mismatch
2020-04-08 00:27:19 +03:00
George Peter Banyard
1e8459d626
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Went to fast and forgot to update tests"
Revert "Fix Bug #79448 0 is a valid Unicode codepoint, but mb_substitute_character(0) fails"
2020-04-07 22:49:17 +02:00
Dmitry Stogov
4e69970fb7
cleanup
2020-04-07 21:37:10 +03:00
Dmitry Stogov
cff7703a61
Revert "cleanup" (wrong commit)
...
This reverts commit 5db5f71f28 .
2020-04-07 21:34:18 +03:00
Dmitry Stogov
5db5f71f28
cleanup
2020-04-07 21:30:47 +03:00
Nikita Popov
07e739a2d5
Remove most uses of _default_get_name()
...
Instead fetch the name from the respective structure. The only
place where this is still used is ReflectionClassConst,
as zend_class_const does not store the name.
2020-04-07 16:42:40 +02:00
Nikita Popov
ab73d142c9
Eliminate uses of _default_load_name()
...
Instead fetch the name from the function/class/property,
as appropriate. This makes us independent of the property,
and eliminates error conditions related to it.
2020-04-07 16:25:44 +02:00
Nikita Popov
425c6f5815
Optimize internal name fetching in reflection
...
Directly fetch the name property, instead of construction the
properties hash table and performing a lookup in it. This is both
slow and wastes a lot of memory.
2020-04-07 16:10:19 +02:00
Nikita Popov
c81cf1c7af
Assert that arginfo parameter name is present
2020-04-07 16:05:33 +02:00
Christoph M. Becker
68139dbdd8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78221 : DOMNode::normalize() doesn't remove empty text nodes
2020-04-07 13:09:10 +02:00
Dmitry Stogov
864b1cc3ef
Free room for information about register allocation at astact stack and at trace_exit_info. Implement simple deoptimizer.
2020-04-07 12:01:48 +03:00
Dmitry Stogov
4006c0008e
Save CPU regesters on side exit for deoptimization
2020-04-06 23:48:20 +03:00
Dmitry Stogov
c4bdf41862
Minor register allocator refactoring
2020-04-06 16:17:02 +03:00
Christoph M. Becker
9809713844
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #69264 : __debugInfo() ignored while extending SPL classes
2020-04-06 12:04:12 +02:00
Nikita Popov
3e5fdef96e
Inline a ZEND_NUM_ARGS() variable
2020-04-06 11:41:44 +02:00
Christoph M. Becker
9cb32640af
Clean up constructor handling in com_dotnet
...
We substitute the construction magic with standard constructors, move
the ZPP checks to the beginning of the ctors, and also let the function
entries be generated from the stubs.
2020-04-06 10:53:45 +02:00
Máté Kocsis
50765075db
Improve some ValueError messages
...
Closes GH-5340
2020-04-06 10:41:01 +02:00
Máté Kocsis
21cfa03f17
Generate function entries for another batch of extensions
...
Closes GH-5352
2020-04-05 21:15:30 +02:00
Máté Kocsis
c0cbab6002
Add missing stub for xmlrpc_get_type()
2020-04-05 21:10:31 +02:00
George Peter Banyard
1b6f61e7c4
Promote invalid case mode to ValueError in mb_case_converter
...
Add assertions to check the return value is not NULL as this indicates a bug.
Add identical assertion to mb_strtoupper and mb_strtolower.
This means these functions can't return false anymore, ammend stubs accordingly.
2020-04-05 03:33:08 +02:00
George Peter Banyard
a34e73de5a
mb_scrub() can't return false anymore
...
Also drop the intermediary function which was only used here
2020-04-05 01:44:39 +02:00
George Peter Banyard
07062e1fc5
Promote some warnings to ValueError in mbstring
...
Promoted warnings are:
* Empty encoding lists
* Unknown language
* Start and Width out of bound
2020-04-05 01:44:38 +02:00
George Peter Banyard
bd52b62ae0
Convert some if blocks to assertions
2020-04-05 01:44:38 +02:00
Máté Kocsis
5322de1ba8
Generate functions entries from stubs for another set of extensions
...
Closes GH-5351
2020-04-05 00:59:44 +02:00
Máté Kocsis
d5bbb28f7d
Move variable declaration closer to its usage
2020-04-05 00:03:08 +02:00
Máté Kocsis
610815c0ce
Improve gen_stub.php
...
Closes GH-5350
Add support for generating deprecated function entries, as well as forward declaration
of function aliases.
2020-04-04 23:52:33 +02:00
Máté Kocsis
7c3078737f
Generate function entries from stubs for a couple of extensions
...
Closes GH-5347
2020-04-04 20:41:48 +02:00
Máté Kocsis
a43bc33fb2
Annotate function aliases in stubs
2020-04-04 13:03:16 +02:00
George Peter Banyard
fc5a88f614
Merge branch 'PHP-7.4'
2020-04-03 22:23:03 +02:00
George Peter Banyard
9cb9c53f1f
Merge branch 'PHP-7.4'
2020-04-03 21:30:35 +02:00
Nikita Popov
02a685ead3
Fix stub for zend_terminate_string()
2020-04-03 18:21:40 +02:00
Nikita Popov
2bcc4ab8f4
Verify that all stubs have a return type
2020-04-03 17:59:30 +02:00
Nikita Popov
d2c92d7fd3
Stubs: Store information per-class
...
We'll need this if we want to generate method entries.
2020-04-03 16:20:47 +02:00
Nikita Popov
2bfcd8825c
Remove now unnecessary PHP_FUNCTION() declarations
2020-04-03 15:41:41 +02:00
Nikita Popov
51bc6233b2
Generate function entries from stubs
...
If @generate-function-entries is specified in the stub file,
also generate function entries for the extension.
Currently limited to free functions only.
2020-04-03 15:41:41 +02:00
Máté Kocsis
305b17e85f
Do not include the same stub multiple times
...
Closes GH-5322
2020-04-03 14:23:54 +02:00
Christoph M. Becker
17d4e66204
Fix #68690 : Hypothetical off-by-one condition
...
We fix this, even though `filter->cache == jisx0213_u2_tbl_len` can
never be true here.
2020-04-03 14:20:37 +02:00
George Peter Banyard
fa3b8c75fb
Promote unknown encoding throws in encoding array/string list
...
For the string list we emit still emit a warning by comparing arg_num to 0
Closes GH-5337
2020-04-03 10:58:46 +02:00
Remi Collet
75b01c797e
add some output when generating arginfo
2020-04-03 10:48:20 +02:00
Remi Collet
e11d3b1690
Move gen_stub.php to build directory and install it so phpize can take care of it, and thus extension can use it as it is already in Makefile
2020-04-03 10:48:20 +02:00
Nikita Popov
6e1ff5f951
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix incorrect free for last_message
2020-04-03 10:06:52 +02:00
George Peter Banyard
656046873c
Refactor mb_substr_count()
...
Promote empty needle warning to ValueError
Convert if branch into an assertion as if mbfl_substr_count fails this now implies a bug
Thus mb_substr_count() can only return int now, fix stubs accordingly
2020-04-02 22:40:00 +02:00
George Peter Banyard
165fde9a37
Convert if branch to assertion in mb_strlen
...
This operation should never fail, therefore it's converted to an assertion.
Thus this mb_strlen() can now only return int, fix stubs accordingly
2020-04-02 22:40:00 +02:00
George Peter Banyard
d44ee9112f
Promote mb_str_split warning to ValueError
...
Also add a TODO about documenting this funcion on PHP.net
Convert some checks to assertions as if they don't hold something went wrong during memory allocation
Due to these changes this function cannot return false anymore, fix stubs accordingly
2020-04-02 22:40:00 +02:00
George Peter Banyard
f488b5d0f9
Merge mb_strstr() variants under a common implementation
...
This reduces heavy ducplicate code
2020-04-02 22:40:00 +02:00
George Peter Banyard
737871341f
Improve code flow
...
These nested if-else blocks are unnecessary since we return early.
2020-04-02 22:40:00 +02:00
George Peter Banyard
577de174de
Use ZEND_NUM_ARGS() macro instead of custom variable
...
Also why on earth would someone do this?
2020-04-02 22:40:00 +02:00
George Peter Banyard
4cd3d7b166
Promote empty string warning to ValueError in mb_ord()
2020-04-02 22:39:59 +02:00
Nikita Popov
cf3528bd44
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79434
2020-04-02 16:34:51 +02:00
Matteo Beccati
66ec60cb45
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip fpm tests not designed to be run as root
Allow fpm tests to be run with long socket path
2020-04-02 16:17:24 +02:00
Remi Collet
319c21b1f6
news / UPGRADING for zip 1.19.0
2020-04-02 14:58:13 +02:00
Remi Collet
2dc8d39bae
- add ZipArchive::EM_UNKNOWN constant - add ZipArchive::EM_TRAD_PKWARE constant - cleanup hack for libzip 1.3.1 (have only exist for a few days) - add ZipArchive::isCompressionMethodSupported() method (libzip 1.7.0) - add ZipArchive::isEncryptionMethodSupported() method (libzip 1.7.0) - bump version to 1.19.0-dev
2020-04-02 14:52:05 +02:00
Christoph M. Becker
6983ae751c
Fix #47983 : mixed LF and CRLF line endings in mail()
...
Email headers are supposed to be separated with CRLF. Period.
2020-04-02 14:51:14 +02:00
Christoph M. Becker
737f7dd8f6
Prevent imap mail tests from borking instead of skipping
...
As of commit e49593a[1], run-tests.php is rather picky regarding the
output of SKIPIF sections, so we have to suppress warnings for failing
imap_open().
[1] <http://git.php.net/?p=php-src.git;a=commit;h=e49593a7c3159a5673ce74b4e5133f1264dc313f >
2020-04-02 12:51:22 +02:00
Remi Collet
59e0674185
use a better setter for zip_error_t
2020-04-02 12:26:44 +02:00
Nikita Popov
184fdac7c2
Remove <default> prefix from reflection dump
...
This really doesn't add anything, and only makes for confusing
terminology. Only marking properties as dynamic is sufficient.
2020-04-02 11:25:41 +02:00
Nikita Popov
083b0c38a0
Display property default value in reflection dumps
2020-04-02 11:21:48 +02:00
Nikita Popov
b5991d3382
Show property type in reflection export
2020-04-02 11:05:04 +02:00
Nikita Popov
5430a466ff
Avoid control flow warning
2020-04-02 10:54:32 +02:00
Christoph M. Becker
919adcf161
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable error diagnostic for check_default_conf_path.phpt
2020-04-01 19:21:46 +02:00
Nikita Popov
3a7c716249
Remove unnecessary check in runtime_compile_time_binary_operands.phpt
...
Now that operator errors are detected more accurately, we no longer
have any cases where we throw a compile-time error instead of a
run-time exception, so we can drop this check now.
2020-04-01 14:49:52 +02:00
Nikita Popov
f1dd8b2af0
Make division by zero error check more accurate
...
For division (rather than modulus) we should check the double
value, otherwise the result might be zero after integer truncation,
but not zero as a floating point value.
2020-04-01 14:47:21 +02:00
Nikita Popov
1ed132e2e5
Unify checks for binary operator errors for ct eval
...
Move everything into one function and share it with opcache.
This fixes some discrepancies.
2020-04-01 14:42:58 +02:00
Nikita Popov
56b18d478e
Don't convert binop operand types in opcache
...
This may produce different behavior if operator overloading is
involved, and may change the error message.
If there's strong interest, this could be done in the DFA pass
with available type information. It does not look particularly
practically useful to me though.
2020-04-01 14:39:41 +02:00
Nikita Popov
2d8f9f34dd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix literal compaction collision between string and double
2020-04-01 14:23:07 +02:00
Nikita Popov
cdaf35033d
Improve "unsupported operands" error
...
By mentioning the operand types. We can do that now, as the
original operand types now remain available.
Closes GH-5330.
2020-04-01 11:26:43 +02:00
Nikita Popov
9c0afc859c
Remove op_func from TRY_BINARY_OP1 macro
...
And move the operator overloading helpers into zend_operators.c,
there's no reason for them to be in the header.
2020-04-01 10:15:03 +02:00
Christoph M. Becker
f973b712b2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add NEWS entryc [ci skip]
2020-04-01 09:29:07 +02:00
George Peter Banyard
a54ee6e591
Merge branch 'PHP-7.4'
2020-04-01 04:55:35 +02:00
George Peter Banyard
229dff9f08
Promote unsupported encoding warnings to ValueError
2020-04-01 00:54:36 +02:00
George Peter Banyard
21227dc1f1
Use php_mb_get_encoding instead of mbfl_name2encoding to get encoding
...
This reduces the number of places where the error message template is used.
Also promote the mb_check_encoding() warning to ValueError and add a test to cover the behaviour.
2020-03-31 23:39:39 +02:00
Nikita Popov
11f0e1d1cb
Move encoding fetching out of php_mb_convert_encoding()
2020-03-31 21:47:55 +02:00
Nikita Popov
857fe616fa
Remove unnecesary check in php_mb_check_encoding()
...
The caller makes sure that this is not NULL.
2020-03-31 21:02:00 +02:00
Nikita Popov
f182309e87
Refactor operator implementations
...
Instead of looping, use straight-line code with the following
layout:
1. Try to apply the base operation on the dereferenced operands.
2. Try overloaded object operations.
3. Try to convert operands to number, else error out.
4. Apply the base operation on the converted operands.
This makes the code easier to reason about and fixes some edge-case
bugs:
1. We should only try invoking operator overloading once prior to
type conversion. Previously it was invoked both before and after
type conversion.
2. We should not modify any values if an exception is thrown.
Previously we sometimes modified the LHS of a compound assignment
operator.
3. If conversion of the first operand fails, we no longer try to
convert the second operand. I think the previous behavior here
was fine as well, but this still seems a more typical.
This will also make some followup changes I have in mind simpler.
2020-03-31 20:49:39 +02:00
George Peter Banyard
daf45f68d2
Use explicit helper
2020-03-31 20:27:10 +02:00
George Peter Banyard
affc5a024a
Encoding argument is always MBREX(current_mbctype)
2020-03-31 20:27:10 +02:00
Nikita Popov
51f9cc6269
Add additional operator exception handling tests
...
These show that we may lose the old value of the LHS of a compound
assignment operator in some cases.
2020-03-31 18:36:42 +02:00
Nikita Popov
944b10e3d3
Remove unused argument form convert_object_to_type()
2020-03-31 17:31:35 +02:00
Máté Kocsis
b6229fbca2
Display nullability in type error messages for internal functions
...
Closes GH-5327
2020-03-31 16:55:36 +02:00
Nikita Popov
0509a1e066
Clean up silent/noisy flag in convert_to_number
2020-03-31 16:53:03 +02:00
George Peter Banyard
90eeca2531
Convert some unknown encoding warnings to ValueErrors in ext/mbstring
...
Promotes only the warnings where the encoding comes only from a string.
Functions which accept an array of encodings will be fixed at a later stage.
Closes GH-5317
2020-03-31 16:34:18 +02:00
George Peter Banyard
55a3e5b99e
Promote some warnings to Errors in Zend basic functions
...
Closes GH-5325
2020-03-31 16:32:58 +02:00
Derick Rethans
9ec7265291
Merge branch 'PHP-7.4'
2020-03-31 15:01:07 +01:00
Nikita Popov
8fd7f02ea4
Make cast_object handler required
...
Avoid subtle differences in behavior depending on whether the
handler is absent or returns FAILURE.
If you previously set cast_object to NULL, create a handler that
always returns FAILURE instead.
2020-03-31 14:37:49 +02:00
Máté Kocsis
36935e42ea
Improve undefined variable error messages
...
Closes GH-5312
2020-03-31 13:02:32 +02:00
Nikita Popov
6bf483a94a
Clarify SimpleXML comparison logic
2020-03-31 12:48:57 +02:00
Nikita Popov
fb5bfcb75b
Add a ZEND_UNCOMPARABLE value
...
To explicitly indicate that objects are uncomparable. For now
this has no functional difference from the usual 1 return value,
but makes intent clearer.
2020-03-31 12:36:48 +02:00
Nikita Popov
bef4b2e4e9
Report object cast failures internally
...
Make cast_object return FAILURE for casts to int/float, rather than
throwing a notice and returning SUCCESS. Instead move the emission
of the notice to the code invoking cast_object. This will allow us
to customize the behavior per call-site.
This change is written to be NFC, and the code in
zend_std_compare_objects() should illustrate the current behavior
doesn't make a lot of sense.
2020-03-31 12:07:25 +02:00
Nikita Popov
78d3af4529
Make sure php_get_internal_encoding() returns non-empty
...
Even if default_charset is set to "", we should still return
"UTF-8" as the default value here. Setting default_charset to ""
suppresses the header emission, but shouldn't change anything
about our encoding defaults.
2020-03-31 11:06:15 +02:00
Nikita Popov
3ca08ee764
Make sure mbstring.internal_encoding deprecation is always thrown
...
It was not thrown if the setting was specified via -d at least.
2020-03-31 10:47:23 +02:00
Christoph M. Becker
47918bdd33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Next is 7.3.18
2020-03-31 10:26:01 +02:00
Christoph M. Becker
12ca4fe65d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79413 : session_create_id() fails for active sessions
2020-03-31 08:41:08 +02:00
George Peter Banyard
457380cae7
Drop wchar header check as always defined since C95
2020-03-31 00:14:56 +02:00
George Peter Banyard
aa47543cb4
Fix format for tm member objects as they are stored as integers
...
Closes GH-5326
2020-03-30 17:09:49 +02:00
Nikita Popov
fbe19a6eb7
Clarify that return throws
2020-03-30 16:27:38 +02:00
Nikita Popov
8a2ce27bba
mb_detect_order(): Use proper array|string argument
2020-03-30 16:26:28 +02:00
Nikita Popov
500230fc85
Remove persistent arg from parse_encoding_array()
...
It is always zero.
2020-03-30 16:17:35 +02:00
Nikita Popov
b02b3539e7
mb_check_encoding(): Make var a proper array|string arg
2020-03-30 16:15:12 +02:00
Nikita Popov
50d07ff28c
mb_detect_encoding(): Use proper array|string parameter
...
Needed to add support for nullabiltiy in some places.
2020-03-30 16:15:12 +02:00
Tyson Andre
47ddd95836
Do constant evaluation for str_contains in opcache
...
Both arguments must be strings.
str_contains deliberately does not emit a warning for an empty needle.
Closes GH-5324
2020-03-30 09:54:38 -04:00
Nikita Popov
bb6523693c
mb_convert_variables(): Make $from an array|string argument
2020-03-30 15:51:04 +02:00
Nikita Popov
0d24422749
mb_convert_encoding(): Make $input a proper array|string arg
2020-03-30 15:41:55 +02:00
Nikita Popov
f24f6cbab9
mb_convert_encoding(): Make $from_encodings a proper array|string arg
...
Switching to FastZPP, as we don't support this in normal zpp.
2020-03-30 15:39:33 +02:00
Michael Voříšek
2c82b832f6
Add test to make sure that (self::class)::method() is not forwarding LSB
...
Related with Bug #79419 .
Closes GH-5310.
2020-03-30 15:26:19 +02:00
Nikita Popov
7cea789cfc
Parse mb_convert_encoding() encodings only once
...
Instead of re-parsing them for every converted value. Also reuse
the generic parse_array() helper.
2020-03-30 14:54:15 +02:00
Nikita Popov
cd5a29b820
Properly report unknown encoding in encoding lists
...
And clean up the related array and list parsing code.
2020-03-30 14:46:59 +02:00
Dmitry Stogov
44390beb42
cleanup
2020-03-30 14:27:01 +03:00
Nikita Popov
ed850f2723
Move encoding fetching outside php_mb_stripos()
2020-03-30 12:29:11 +02:00
Nikita Popov
295895342f
Remove unnecessary NULL check
...
This is a required zpp parameter, it cannot be null.
2020-03-30 12:24:39 +02:00
Dmitry Stogov
4c9ee6a8ca
Initialize variable numbers
2020-03-30 12:50:19 +03:00
Nikita Popov
44c70b881b
Disable Symfony test on PHP 8
...
Symfony is currently has an expected incompatibility with PHP 8:
Fatal error: Declaration of Symfony\Component\HttpClient\Response\MockResponse::schedule(Symfony\Component\HttpClient\Response\MockResponse $response, array &$runningResponses): void must be compatible with Symfony\Component\HttpClient\Response\ResponseTrait::schedule(Symfony\Component\HttpClient\Response\ResponseTrait $response, array &$runningResponses): void in /home/vsts/work/1/s/symfony/src/Symfony/Component/HttpClient/Response/MockResponse.php on line 135
Disable the job until this is fixed.
2020-03-30 10:58:33 +02:00
Nikita Popov
f9e4c71506
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't check directory nlink in stat tests
2020-03-30 10:54:34 +02:00
Nikita Popov
a34480ec82
SCCP: Optimize strpos with empty needle
...
This is no longer special cases in PHP 8.
2020-03-30 10:37:22 +02:00
Christoph M. Becker
6b6f0d63f3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #74940 : DateTimeZone loose comparison always true
2020-03-30 09:18:20 +02:00
Christoph M. Becker
2a1d7bd802
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79427 : Integer Overflow in shmop_open()
2020-03-30 08:58:45 +02:00
Jakub Zelenka
477efe935b
Merge branch 'PHP-7.4'
2020-03-29 20:21:24 +01:00
Remi Collet
5fa17fbf94
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Fix #79424 ext/zip: don't use gl_pathc after call to globfree
2020-03-29 14:24:12 +02:00
Dmitry Stogov
099ffc2169
BIND_GLOBAL and BIND_STATIC don't use value of the first operand
2020-03-27 15:20:21 +03:00
Christoph M. Becker
9e77d5a9da
Fix #76999 : mb_regex_set_options() return current options
...
When setting new options, `mb_regex_set_options()` is supposed to
return the *previous* options.
2020-03-27 10:34:16 +01:00
Dmitry Stogov
150df5b17c
Removed useless variable
2020-03-27 12:24:15 +03:00
Christoph M. Becker
b0b593504d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing 'skip' to bug79332.phpt skip message
2020-03-26 23:17:37 +01:00
Nikita Popov
e8e09b60b4
Remove rand_r implementation
...
We already use our own mt13397 implementation nowadays, so we no
longer need this shim.
2020-03-26 11:49:27 +01:00
Nikita Popov
97cb81ead5
Remove HAVE_REALPATH checks
...
We do not actually use realpath(), but a custom implementation.
Make sure the realpath() function is always available.
Closes GH-5290.
2020-03-26 11:46:00 +01:00
Nikita Popov
5a09b9fb0f
Add PhpToken class
...
RFC: https://wiki.php.net/rfc/token_as_object
Relative to the RFC, this also adds a __toString() method,
as discussed on list.
Closes GH-5176.
2020-03-26 11:09:18 +01:00
Nikita Popov
f74e30c07c
Check abstract method signatures coming from traits
...
RFC: https://wiki.php.net/rfc/abstract_trait_method_validation
Closes GH-5068.
2020-03-26 10:07:22 +01:00
Dmitry Stogov
beaacbc1b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Explicitly declare the char as signed in zend_ffi_val.
2020-03-26 10:29:34 +03:00
George Peter Banyard
69b7d011d8
Explicitly declare the char as signed in zend_ffi_val.
...
This causes issues down the line as char are unsigned on some platforms,
e.g. ARM and cause a [-Wtype-limits] warning to be emitted.
2020-03-26 10:22:34 +03:00
Christoph M. Becker
556573b290
Fix php_exec() output length
...
If trailing whitespace is stripped, we have to propagate the change of
`bufl` back to php_exec().
2020-03-26 01:09:50 +01:00
George Peter Banyard
3e6667d338
Fix -Wtype-limits warning by using correct type declaration in JIT trace
...
Namely int as that is the type of 'definition'
Closes GH-5299
2020-03-26 00:01:59 +01:00
Dmitry Stogov
51a305d2a4
Separate zend_jit_var_supports_reg() and cleanup
2020-03-25 23:09:32 +03:00
Dmitry Stogov
40fa6284eb
Fixed incorrect "TSSA start" headers
2020-03-25 23:07:21 +03:00
Dmitry Stogov
5a05fef2af
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79412 (Opcache chokes and uses 100% CPU on specific script).
2020-03-25 17:38:08 +03:00
Máté Kocsis
782f7e2ad8
Fix #75958 Return void instead of true
2020-03-25 15:04:33 +01:00
Máté Kocsis
2e8ccce5dc
Add stubs for SplDoublyLinkedList
...
Closes GH-5293
2020-03-25 15:01:24 +01:00
Dmitry Stogov
b7c6244dfc
Add new line before basic-block labels (except for the first BB0)
2020-03-25 14:26:42 +03:00
Dmitry Stogov
0684b9fcdc
Always print numeric opline numbers
2020-03-25 14:26:42 +03:00
Nikita Popov
a524785d5d
Clean up php_exec() implementation a bit
2020-03-25 11:11:30 +01:00
Nikita Popov
d6a19bae51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79410 (system() swallows last chunk if it is exactly 4095 bytes without newline)
2020-03-25 10:51:32 +01:00
Dmitry Stogov
ce8202f996
Rename "var" to "stack". This is an abstract stack that holds TSSA variable numbers.
2020-03-25 10:49:01 +03:00
Dmitry Stogov
af3142daaf
Make SSA dump format controlled by opcache.jit_debug more readable (always print opcode number).
...
This doesn't affect dumps controlled by opcache.opt_debug_level.
2020-03-24 22:44:11 +03:00
Máté Kocsis
c5fe1a192d
Improve error messages of ext/hash
...
Closes GH-5275
2020-03-24 10:23:11 +01:00
Máté Kocsis
d5871e26ad
Promote warnings to exceptions in ext/hash
2020-03-24 10:22:29 +01:00
Máté Kocsis
a42e8e8ec4
Add stubs for SPL iterators
...
Closes GH-5286
2020-03-24 08:02:27 +01:00
Máté Kocsis
01b266aac4
Improve error messages of various extensions
...
Closes GH-5278
2020-03-23 18:59:04 +01:00
Máté Kocsis
d7b73de8c9
Improve error messages of ext/reflection
...
Closes GH-5277
2020-03-23 17:23:45 +01:00
Nikita Popov
568592f1e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test file
2020-03-23 17:14:42 +01:00
Nikita Popov
dcbdcf87c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle NULL caller_call_opline
2020-03-23 17:12:55 +01:00
Christoph M. Becker
3b26a3868e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak on Windows as well
2020-03-23 16:33:26 +01:00
Christoph M. Becker
d963b78523
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test for Windows
2020-03-23 16:26:19 +01:00
Christoph M. Becker
324337a3b1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79200 : Some iconv functions cut Windows-1258
2020-03-23 14:31:16 +01:00
Nikita Popov
816a1fd4af
Don't use quiet zpp in RecursiveIteratorIterator ctor
...
Don't be a special snowflake, generate a standard TypeError here.
2020-03-23 14:22:51 +01:00
Christoph M. Becker
bdb63a3068
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79393 : Null coalescing operator failing with SplFixedArray
2020-03-23 13:59:22 +01:00
Máté Kocsis
fe88d23914
Fix ZPP of SplFileInfo::openFile()
2020-03-23 13:37:51 +01:00
Máté Kocsis
66fc55642c
Add stubs for SplFileInfo et al.
...
Closes GH-5287
2020-03-23 13:36:17 +01:00
Nikita Popov
e9c2dec720
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix RSA memory leak in mysqlnd auth
2020-03-23 12:01:15 +01:00
Nikita Popov
e88c7bf5c7
Fix signed integer overflow UB in dasm
...
Should hopefully fix the ubsan and community builds.
2020-03-23 11:12:42 +01:00
Nikita Popov
6766b5f9bc
Fix pointer UB in dynasm
...
Looks like newer GCC versions started warning about this.
2020-03-23 11:03:56 +01:00
Nikita Popov
adb7297b0f
Minor cleanup in spl_direcotry
...
* Rename variable for clarity
* Reduce section with replaced error handling
* Drop comment code line
2020-03-23 10:02:29 +01:00
ZoDream
28afaef6fa
Repair ext_skel.php to create the basic framework for a PHP extension
...
Copy the arginfo stubs file, and drop the %EXTNAME%_ to make things line up.
Closes GH-5289.
2020-03-23 09:25:06 +01:00
Tyson Andre
26b9780d02
Fix compilation error on mac with -Wshift-negative-value
...
Fix for mac OS build error seen in ccc49ead68
when shifting -1 (max argument count?)
```
ext/opcache/jit/zend_jit_trace.c:1668:2:
error: shifting a negative signed value is undefined
[-Werror,-Wshift-negative-value]
TRACE_FRAME_INIT(frame, op_array, 0, -1);
```
Closes GH-5284.
2020-03-23 09:24:26 +01:00
Tyson Andre
dcca0391e2
Skip ftruncate_bug76422 if disk_free_space() <= 4GB
...
Followup to https://github.com/php/php-src/pull/5043
In the middle of running this test with TESTS=-j9,
run-tests.php stopped the test suite because the partition started
with 3.5GB of free disk space and new test files couldn't be created.
Reclaiming the disk space of that file also took a while.
Closes GH-5283
2020-03-21 12:01:28 -04:00
Dmitry Stogov
4b8171e087
Add tracing JIT guards for INTI_FCALL_BY_NAME and INIT_NS_FCALL_BY_NAME
2020-03-20 16:59:02 +03:00
Remi Collet
d12b4c3c24
bump zip version
2020-03-20 14:08:57 +01:00
Christoph M. Becker
7defa7e883
Note that active => true has to be kept for $QA_RELEASES
...
Otherwise the bug tracker and test failure reporting will not work as
intended (and maybe there are even more issues).
2020-03-20 14:00:11 +01:00
Dmitry Stogov
3715475381
JIT for INIT_NS_FCALL_BY_NAME
2020-03-20 15:36:40 +03:00
Remi Collet
57042ac23e
add missing test
2020-03-20 12:13:25 +01:00
Remi Collet
db62ad18f3
fix test, thanks Indrek
2020-03-20 12:13:25 +01:00
Dmitry Stogov
166bc64caf
CAST to the same type mat be JIT-ed as QM_ASSIGN
2020-03-20 13:31:55 +03:00
Remi Collet
a4d12f46d1
ZipArchive::open(): Using empty file as ZipArchive is deprecated
2020-03-20 11:27:42 +01:00
Remi Collet
217ff8132e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
unneeded after fix
NEWS
NEWS
Fix Bug #79296 ZipArchive::open fails on empty file
2020-03-20 11:19:04 +01:00
Dmitry Stogov
517c30b05f
JIT for FETCH_THIS
2020-03-20 12:33:41 +03:00
Derick Rethans
9c6bda3027
Merge branch 'PHP-7.4'
2020-03-20 09:31:46 +00:00
Christoph M. Becker
825384c478
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix potential test conflict
2020-03-20 08:57:43 +01:00
Dmitry Stogov
ccc49ead68
Change jit_trace_stack_frame layout
2020-03-20 10:54:45 +03:00
Dmitry Stogov
7283dbba27
ZEND_MAKE_REF can't throw
2020-03-20 01:37:27 +03:00
Dmitry Stogov
9232af91fd
JIT for STRLEN
2020-03-20 01:23:36 +03:00
Dmitry Stogov
3958d5bdc5
JIT for ECHO and variable string operands
2020-03-20 01:01:33 +03:00
Dmitry Stogov
282265bccd
JIT for SEND_FUNC_ARG
2020-03-19 23:59:11 +03:00
Christoph M. Becker
8ea143a943
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79396 : DateTime hour incorrect during DST jump forward
2020-03-19 08:53:46 +01:00
Dmitry Stogov
8e879b9f44
JIT for ZEND_CHECK_FUNC_ARG
2020-03-18 23:56:03 +03:00
Máté Kocsis
bb6f374048
Improve argument error messages in ext/standard
...
Closes GH-5198
2020-03-18 19:56:10 +01:00
Dmitry Stogov
c2f1c36e30
Eliminate run-time check
2020-03-18 21:19:31 +03:00
Christoph M. Becker
ddf38fd764
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve FFI test suite for Windows
2020-03-18 17:01:30 +01:00
Nikita Popov
22a2817d3c
Improve build instructions in README
...
Provide enough information to get a build going without hunting
down packages.
If someone wants to add info for macos or other distros, that
would probably be nice as well.
2020-03-18 16:29:09 +01:00
Nikita Popov
f768a5563f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clarify session.cookie_samesite="None"
2020-03-18 16:00:23 +01:00
Dmitry Stogov
12cdab2d76
Improved JIT for BIND_GLOBAL
2020-03-18 17:20:40 +03:00
Nikita Popov
df79277de3
Revert "Fetch for read in nested property assignments"
...
This reverts commit bb43a3822e .
After thinking about this a bit more, this is now going to be
a complete solution for the "readonly properties" case, for example:
unset($foo->readOnly->bar);
should also be legal and
$foo->readOnly['bar'] = 42;
should also be legal if $foo->readOnly is not an array but an
ArrayAccess object.
I think it may be better to distinguish better on the BP_VAR flag
level. Reverting for now.
2020-03-18 14:54:43 +01:00
Remi Collet
a5f136b855
bump zp to 1.18.1 + doc
2020-03-18 14:09:50 +01:00
Remi Collet
3b22e10535
Fix bug #77960 add compr. /encr. options for ZipArchive::addGlob and ZipArchive::addPattern
...
options parameter now accepts:
- comp_method
- comp_flags
- enc_method
- enc_password
2020-03-18 14:05:09 +01:00
Nikita Popov
bb43a3822e
Fetch for read in nested property assignments
...
$a->b->c = 'd';
is now compiled the same way as
$b = $a->b;
$b->c = 'd';
That is, we perform a read fetch on $a->b, rather than a write
fetch.
This is possible, because PHP 8 removed auto-vivification support
for objects, so $a->b->c = 'd' may no longer modify $a->b proper
(i.e. not counting interior mutability of the object).
Closes GH-5250.
2020-03-18 12:08:06 +01:00
Nikita Popov
e957a8cd92
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make bug52820.phpt more robust
Explicitly start mysql
Use "set -e" in some pipeline steps
2020-03-18 11:46:37 +01:00
Nikita Popov
70ef2f3817
Use different scratch register in read_obj
...
We already use r0 to hold the zval.
2020-03-18 11:44:34 +01:00
Nikita Popov
69937870da
Explicitly pass scratch register to SAVE_VALID_OPLINE
2020-03-18 11:44:25 +01:00
Dmitry Stogov
f767807986
Result of ASSIGN may be different from the assigned value when LHS is a typed reference
2020-03-18 01:40:41 +03:00
Dmitry Stogov
a8e8c40ad4
Use zend_fetch_arg_info_type()
2020-03-17 18:10:27 +03:00
Dmitry Stogov
29bef78e9f
Use _const_op_type() for converting constant into type info
2020-03-17 17:55:34 +03:00
Nikita Popov
1ba6e66c46
Improve type inference
...
After thinking about this a bit more, the code here was too
conservative. We know that everything but an object is going to
throw, so it's sufficient to restrict the type to MAY_BE_OBJECT.
The change in the test is weird but not incorrect, because it
operates on empty inferred types, in which case the code must be
dead (which it is). We should probably add a more explicit removal
of code working on empty types.
2020-03-17 15:41:47 +01:00
Nikita Popov
41a86a72c4
Clean up a few more places
2020-03-17 15:23:52 +01:00
Nikita Popov
023039fbfc
Remove object auto-vivification leftovers in type-inference
...
undef/null/false no longer get promoted to object in PHP 8.
In fact, we may drop the SSA var defs outside RC inference mode now.
2020-03-17 14:54:11 +01:00
Christoph M. Becker and Nikita Popov
66d8d0c7d7
Drop support for iconv without proper errno setting
...
It is hard to impossible to work around iconv() implementations which
do not properly set errno according to POSIX. We therefore do no
longer allow to build against such iconv() implementations.
Co-Authored-By: Nikita Popov <nikita.ppv@googlemail.com >
2020-03-17 14:02:29 +01:00
Dmitry Stogov
4b89d96489
Improved JIT for ZEND_ASSIGN
2020-03-17 15:45:54 +03:00
Nikita Popov
b1a082da25
Fix typos
2020-03-17 12:59:37 +01:00
Remi Collet
d81182461a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump verison to 7.2.30-dev
2020-03-17 11:29:20 +01:00
Christoph M. Becker
8e7df57e30
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS
2020-03-17 11:15:48 +01:00
Christoph M. Becker
de0f9d0815
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
Fix test
Fix bug #79329 - get_headers should not accept \0
Fixed bug #79282
2020-03-17 11:00:48 +01:00
Christoph M. Becker
ea7cf2eb67
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
Fix test
Fix bug #79329 - get_headers should not accept \0
Fixed bug #79282
Fix #79283 : Segfault in libmagic patch contains a buffer overflow
Fix #79371 : mb_strtolower (UTF-32LE): stack-buffer-overflow
[ci skip] Update NEWS
Fix test
Fix bug #79329 - get_headers should not accept \0
Fixed bug #79282
Fix #79371 : mb_strtolower (UTF-32LE): stack-buffer-overflow
2020-03-17 10:33:28 +01:00
Stanislav Malyshev
03bf4edbe8
Fix test
2020-03-16 22:42:15 -07:00
Stanislav Malyshev
2bc92a0cf7
Fix bug #79329 - get_headers should not accept \0
2020-03-16 22:42:15 -07:00
Stanislav Malyshev
9ed82b1f7b
Fixed bug #79282
2020-03-16 22:42:15 -07:00
Christoph M. Becker
7702b693b5
Fix #79283 : Segfault in libmagic patch contains a buffer overflow
...
To solve this, we properly calculate the required string length upfront
instead of allocating an oversized string (`len * 4 + 4`).
2020-03-16 22:42:15 -07:00
Christoph M. Becker
ebdaeb8572
Fix #79371 : mb_strtolower (UTF-32LE): stack-buffer-overflow
...
We make sure that negative values are properly compared.
2020-03-16 22:42:15 -07:00
Dmitry Stogov
902e19ddf3
Store informaton about class
2020-03-17 00:25:47 +03:00
Dmitry Stogov
7069b55ba4
Fixed recording classes of object references
2020-03-16 23:08:07 +03:00
Nikita Popov
4565a7f269
Fix assertion when (real) is used
...
And bring back a test for it...
2020-03-16 18:37:01 +01:00
Nikita Popov
6a0b59d085
Slightly deduplicate code
...
This code is the same in both branches, extract it.
2020-03-16 17:07:27 +01:00
Nikita Popov
eb7e1df228
Remove "safe" argument from ZVAL_PTR_DTOR
...
This is no longer used
2020-03-16 17:07:27 +01:00
Nikita Popov
cfd79841f4
Fix typos
2020-03-16 17:07:27 +01:00
Nikita Popov
3723985058
Merge EX variants of INFO macros
2020-03-16 13:02:16 +01:00
Nikita Popov
d35ce5d661
Merge EX variants of RANGE macros
...
Only need to create the ssa_op variable in range inference...
2020-03-16 12:36:03 +01:00
Nikita Popov
44b3971b85
Merge zend_may_throw(_ex)
...
Explicitly pass ssa_op in the places that don't do so yet.
2020-03-16 12:24:40 +01:00
Nikita Popov
5c65562ce4
Remove unnecessary cast
2020-03-16 12:24:40 +01:00
Máté Kocsis
c3554eb2c4
Fix ZPP of MultipleIterator::detachIterator() and MultipleIterator::containsIterator()
2020-03-16 12:05:40 +01:00
Máté Kocsis
04a44e1f08
Add stubs for SplObjectStorage and MultipleIterator
...
Closes GH-5267
2020-03-16 12:05:23 +01:00
Máté Kocsis
0ae8a3f3d6
Add stubs for SplHeap and SplPriorityQueue
...
Closes GH-5266
2020-03-16 12:04:56 +01:00
Philipp Tanlak
1668ad7cb1
Add str_contains() function
...
RFC: https://wiki.php.net/rfc/str_contains
Closes GH-5179.
2020-03-16 11:05:26 +01:00
Nikita Popov
934e60b594
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't specify ports in socket_export_stream-4.phpt
2020-03-16 10:32:39 +01:00
Christoph M. Becker
4c0ddd094a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in php.ini comment
2020-03-15 15:02:10 +01:00
Dmitry Stogov
9a8f735c57
Emit warning about type narrowing for tracing JIT as well
2020-03-14 01:29:46 +03:00
Dmitry Stogov
29bf7902b3
Fixed RC inference for ZEND_ASSIGN_STATIC_PROP and removed useless checks during RC inference
2020-03-14 01:17:45 +03:00
Dmitry Stogov
4bf2d09ede
Tracing JIT (it doesn't support register allocation yet)
...
Use opcache.jit=1255 to swith it on (the third digit 5 really matters)
Use opcache.jit_debug=0xff001 to see how it works and what code it generates
2020-03-13 22:11:07 +03:00
Nikita Popov
d15012d5e8
Accept const op_array in zend_build_call_map
2020-03-13 16:25:28 +01:00
Nikita Popov
9e89f91341
Add assertions for DIM_W/RW uses
...
The result should be used only once and on the directly next opline,
otherwise it may not be safe. Add some assertions to that effect.
2020-03-13 13:11:42 +01:00
Nikita Popov
9ab2cb923e
Also remove dead arguments
2020-03-13 12:45:02 +01:00
Nikita Popov
b979e03159
Remove dead type narrowing code
...
Rename handle_type_narrowing() to clarify what it does, and
remove dead code for resetting dependent vars.
2020-03-13 12:27:49 +01:00
Dmitry Stogov
78b64bd4ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check asserts early
identation fix
Call global code of preloaded script in global context
Avoid "Anonymous class wasn't preloaded" error by lazely loading of not preloaded part of a preloaded script
2020-03-13 11:42:07 +03:00
George Peter Banyard
c9db32271a
Remove deprecated (real) cast
...
Closes GH-5220
2020-03-12 15:40:21 +01:00
Nikita Popov
0fdffc1807
Update Unicode tables to 13.0.0
2020-03-12 11:29:51 +01:00
Christoph M. Becker
b612559a5b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79199 : curl_copy_handle() memory leak
2020-03-12 11:28:39 +01:00
Christoph M. Becker
208e348982
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #61597 : SXE properties may lack attributes and content
2020-03-12 10:57:14 +01:00
Dmitry Stogov
10726588b1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Export FFI::__BIGGEST_ALIGNMENT__
2020-03-12 11:45:05 +03:00
Dmitry Stogov
c774ca8d80
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow to fetch function address
2020-03-12 11:41:12 +03:00
Xinchen Hui
583c7a4cbb
Merge branch 'PHP-7.4'
2020-03-12 15:45:07 +08:00
Christoph M. Becker
f078bca729
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78210 : Invalid pointer address
2020-03-11 11:32:46 +01:00
Christoph M. Becker
dcbf020f76
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79364 : When copy empty array, next key is unspecified
2020-03-11 08:57:17 +01:00
Nikita Popov
f0f2493208
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check for sys/auxv.h before using it.
2020-03-10 16:54:17 +01:00
Nikita Popov
e8678fcb42
Fixed bug #75902
...
Don't special-case nested arrays/objects in str_replace(), instead
perform a string cast on them as well. For arrays, this will always
result in the usual conversion warning.
This behavior is consistent with preg_replace(). If we didn't want
to cast the array to string here, we should instead perform the
replacement recursively. Silently copying it is just confusing.
2020-03-10 16:49:17 +01:00
Nikita Popov
d9219f997d
Enable better trait conflict error message
...
I don't think there is any reason to disable this anymore,
at least all the messages generated in tests look correct and
more useful.
2020-03-10 16:19:11 +01:00
Nikita Popov
fff5771ccc
Require non-absolute trait method refs to be unambiguous
...
Currently, when writing something like
class X {
use T1, T2 {
func as otherFunc;
}
function func() {}
}
where both T1::func() and T2::func() exist, we will simply assume
that func refers to T1::func(). This is surprising, and it doesn't
really make sense that this particular method gets picked.
This commit validates that non-absolute method references are
unambiguous, i.e. refer to exactly one method. If there is
ambiguity, it is required to write T1::func as otherFunc or
similar.
Closes GH-5232.
2020-03-10 16:01:13 +01:00
Máté Kocsis
d2b902f174
Add some stubs for SPL
...
Closes GH-5245
2020-03-10 11:41:48 +01:00
Máté Kocsis
9d0eccd980
Perform some maintenance work on the XSL extension
...
Added stubs, fixed some ZPP, and changed PHP_FALIASes to PHP_METHODs.
Closes GH-5241
2020-03-10 11:41:15 +01:00
Christoph M. Becker
b31f73b1c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enclose INI values containing {TMP} in quotes
2020-03-09 22:53:23 +01:00
Nikita Popov
d9c45d86f9
Improve type inference for COALESCE
...
Place a pi node on the non-null edge to remove a spurious
undef/null type.
Additionally, adjust the profitability heuristic to be more
accurate if the "other predecessor" writes to the variable.
Ideally this should not just consider the direct predecessors,
but it's sufficient for this case.
This partially addresses bug #79353 by removing the discrepancy
between ?? and ??=.
2020-03-09 16:19:48 +01:00
Nikita Popov
b2f7be7214
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79357
2020-03-09 15:01:48 +01:00
Nikita Popov
191451da90
Fix bug #79358 : JIT miscompile in composer
2020-03-09 12:55:14 +01:00
Máté Kocsis
c6d941dc95
Regenerate the VM
...
Some error message changes were missed out previously.
2020-03-09 11:40:18 +01:00
Máté Kocsis
f44dd16b7a
Improve error message of foreach
...
Closes GH-5240
2020-03-09 11:29:40 +01:00
Nikita Popov
c5f091e47f
Remove DOM_GET_THIS macro
...
This macro is trivial, it's more obvious to use ZEND_THIS directly.
2020-03-09 09:56:22 +01:00
Remi Collet
f5c1359f57
proper fix
2020-03-09 09:29:34 +01:00
Remi Collet
ef42a7afa5
fix use after free
2020-03-09 09:19:57 +01:00
Remi Collet
ed998f8a0d
Fix #50678 files extracted by ZipArchive class lost their original modified time
2020-03-09 07:09:50 +01:00
Máté Kocsis
373a6d8274
Regenerate reflection stubs
2020-03-07 20:26:06 +01:00
Christoph M. Becker
3d435624ef
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PHP-7.4 is now 7.4.5-dev
2020-03-06 17:53:30 +01:00
Christoph M. Becker
ef32de34da
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test on Windows if privileges are insufficient
2020-03-06 16:41:34 +01:00
Nikita Popov
941a3b6ccd
Remove unnecessary uses of CHECK_SILENT
...
If no error is passed, it is always silent.
2020-03-06 16:36:45 +01:00
Nikita Popov
9c6e206bce
Remove NO_ACCESS flag for zend_is_callable()
...
We may add support for fake_scope if necessary.
2020-03-06 16:31:03 +01:00
Nikita Popov
7309c23644
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix community job
2020-03-06 11:43:58 +01:00
Nikita Popov
d95f465efa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #63816
2020-03-06 11:17:06 +01:00
Nikita Popov
e9ae581f02
Fixed bug #62609 : Allow implementing Traversable in abstract class
...
Master only, as this depends on fixes to calling order of
interface implementation handlers.
2020-03-06 11:12:43 +01:00
Remi Collet
125724cf58
[ci skip] fix for #72374 is no more a BC break
2020-03-06 10:29:16 +01:00
Remi Collet
be14d4e135
better fix for #72374
2020-03-06 10:27:29 +01:00
Christoph M. Becker
f3c24ec265
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #75673 : SplStack::unserialize() behavior
2020-03-06 09:12:03 +01:00
Benjamin Eberlei
0d913f9acf
Fix another memory leak in dom_zvals_to_fragment.
2020-03-06 00:03:13 +01:00
Christoph M. Becker
b8100a150a
[ci skip] Tweeks to release-process.md
...
As discussed with Derick and Remi.
2020-03-05 18:06:10 +01:00
Remi Collet
e786e9c83c
upgrade information about changs in Zip
2020-03-05 14:03:20 +01:00
Remi Collet
541eeace59
drop old constant with bad name, kept until now for BC
2020-03-05 13:46:34 +01:00
Remi Collet
6f53605275
- make status, statusSys properties and
...
ZipArchive::getStatusString() method available after archive is closed
2020-03-05 10:57:26 +01:00
Remi Collet
32c2ae2939
NEWS
2020-03-04 15:31:38 +01:00
Remi Collet
0b21a89472
add lastId property to ZipArchive
2020-03-04 15:31:06 +01:00
Nikita Popov
33ef3d64da
Use separate typedef for bucket comparison function
...
Avoid performing the same casting dance inside each sort compare
function.
2020-03-04 12:46:06 +01:00
Christoph M. Becker
22ec3bcebd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix intermittent test failures of windows_mb_path tests
2020-03-04 12:16:13 +01:00
Nikita Popov
c05a9c3dcd
Implement interfaces after all methods available
...
The place where interface implementation handlers is called is
currently ill-defined: If the class implements interfaces itself,
the handlers for both the parent interfaces and the new interfaces
will be called after all methods are registered (post trait use).
If the class does not implement interfaces, then the parent
interface handlers are called early during inheritance (before
methods are inherited).
This commit moves the calls to always occur after all methods are
available. For userland classes this will be post trait import,
at the time where interfaces get implemented (whether the class
itself defines additional interfaces or not). For internal classes
it will be at the end of inheritance, as internal class declarations
do not have proper finalization.
This allows us to simplify the logic for implementing the magic
Iterator / IteratorAggregate interfaces. In particularly we can
now also automatically detect whether an extension of
IteratorAggregate can safely reuse a custom get_iterator handler,
or whether it needs to switch to the userland mechanism. The
Iterator case continues to rely on ZEND_ACC_REUSE_GET_ITERATOR
for this purpose, as a wholesale replacement is not possible there.
2020-03-04 10:29:21 +01:00
Cameron Porter
a527c60ede
PDO_OCI: Add test of the phpinfo output
2020-03-04 10:10:05 +01:00
Remi Collet
8ea3493cb6
zip_file_replace don't need ZIP_FL_OVERWRITE
2020-03-04 09:22:29 +01:00
Nikita Popov
f15f3272cf
Remove empty "interface gets implemented" handlers
2020-03-03 17:06:38 +01:00
Nikita Popov
262f52d5e2
Small code cleanup
...
I found what the modifier code does with XOR pretty confusing.
It's just removing the PPP bits...
Also remove an outdated reference to OVERLOADED_FUNCTION.
2020-03-03 15:00:51 +01:00
Nikita Popov
2c5fcd57c0
Resolve trait alias refers to earlier
...
Make sure all trait method references are converted to absolute
method references in advance. This regresses one error message
that I don't think is particularly valuable.
2020-03-03 14:23:31 +01:00
Remi Collet
ef03236d9d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
this test needs json
2020-03-03 13:06:46 +01:00
Derick Rethans
ec03689eb9
Merge branch 'PHP-7.4'
2020-03-03 11:29:48 +00:00
Cameron Porter
a55b0abef3
oci8: Fix two tests that fail with stricter internal checks
...
Closes GH-5230
2020-03-03 12:13:44 +01:00
Nikita Popov
aa9a3ff891
Add test for bug #69084
...
This is another bug fixed by the precending commit.
2020-03-03 12:10:54 +01:00
Nikita Popov
53efa1b0c6
Store aliased name of trait method
...
Currently, trait methods are aliased will continue to use the
original function name. In a few places in the codebase, we will
try to look up the actual method name instead. However, this does
not work if an aliased method is used indirectly
(https://bugs.php.net/bug.php?id=69180 ).
I think it would be better to instead actually change the method
name to the alias. This is in principle easy: We have to allow
function_name to be changed even if op array is otherwise shared
(similar to static_variables). This means we need to addref/release
the function_name separately, but I don't think there is a
performance concern here (especially as everything is usually
interned).
There is a bit of complication in opcache, where we need to make
sure that the function name is released the correct number of times
(interning may overwrite the name in the original op_array, but we
need to release it as many times as the op_array is shared).
Fixes bug #69180 .
Fixes bug #74939 .
Closes GH-5226.
2020-03-03 11:55:48 +01:00
Nikita Popov
a7a2e9857e
Fix memory leak in dom_zvals_to_fragment
2020-03-03 10:36:04 +01:00
Christoph M. Becker
feef00e929
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Next is 7.3.17
2020-03-03 10:22:52 +01:00
Xinchen Hui
534c3438e3
Updated maintainer ranges
2020-03-03 14:26:42 +08:00
Christoph M. Becker
b9c157726b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79013 : Content-Length missing when posting a curlFile with curl
2020-03-02 19:12:49 +01:00
Remi Collet
a6d86c9bba
bump zip version + NEWS
2020-03-02 16:51:55 +01:00
Remi Collet
fb8e221907
- add ZipArchive::FL_RECOMPRESS, FL_ENCRYPTED, FL_OVERWRITE, FL_LOCAL, FL_CENTRAL constants
...
- add optional "flags" parameter to ZipArchive::addEmptyDir, addFile and addFromString methods
- add "flags" options to ZipArchive::addGlob and addPattern methods
keeping previous behavior having FL_OVERWRITE by default
- add ZipArchive::replaceFile() method
2020-03-02 16:48:53 +01:00
Remi Collet
c932db8654
add myself as zip maintainer
2020-03-02 16:47:47 +01:00
Christoph M. Becker
3abe64f16a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Native Windows support for mysqlnd sha256 authentification
Abstract over crypto operations
2020-03-02 16:33:40 +01:00
Nikita Popov
336eb48c36
Automatically implement Stringable interface
2020-03-02 15:25:33 +01:00
Nicolas Grekas
9e775db025
Define Stringable with __toString():string method
2020-03-02 15:25:32 +01:00
Christoph M. Becker
c06850b9fa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update libmagic.patch
2020-03-02 15:10:15 +01:00
Christoph M. Becker
c987e538ac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79333 : com_print_typeinfo() leaks memory
2020-03-02 11:38:50 +01:00
Christoph M. Becker
b05c7fae33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79332 : php_istreams are never freed
2020-03-02 10:48:14 +01:00
Máté Kocsis
cb933d63c2
Add stubs for IntlChar
...
Closes GH-5217
2020-02-28 18:10:52 +01:00
Máté Kocsis
118b04bd6e
Improve argument error messages in ext/sodium
...
Closes GH-5197
2020-02-28 18:09:39 +01:00
Benjamin Eberlei
531ea6d340
Add upgrading note regarding merge of RFC for new DOMParentNode/DOMChildNode APIs.
2020-02-28 17:35:54 +01:00
Nikita Popov
6c84ed6b18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove generated lexer
2020-02-28 17:26:06 +01:00
Nikita Popov
0d06a63ee3
Fixed bug #77325
...
Make ReflectionClassConstant->class the declaring class, not the
class on which the constant was fetched. This matches the behavior
for properties and methods.
2020-02-28 17:21:19 +01:00
Nikita Popov
30c2388738
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79062
2020-02-28 17:08:27 +01:00
Benjamin Eberlei
5acd86df8e
[RFC] Implement new DOM Living Standard APIs in ext/dom
2020-02-28 16:13:39 +01:00
Nikita Popov
87bc99439d
Fixed bug #64592
...
Make ReflectionClass::getMethods() behave the same ways as
ReflectionClass::getProperties() by not including private methods
from parent classes.
2020-02-28 15:54:42 +01:00
Nikita Popov
b314603f7f
Update ext maintenance ranges
...
Also add myself as reflection maintainer.
2020-02-28 15:54:42 +01:00
Christoph M. Becker
3a74d7a725
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79311 : enchant_dict_suggest() fails on big endian architecture
2020-02-28 15:46:17 +01:00
Nikita Popov
bb85478bcc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try to fix msvc build
2020-02-28 14:49:03 +01:00
Nikita Popov
a297c4ef9e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix another flaky FPM test
2020-02-28 14:41:32 +01:00
Máté Kocsis
d70e6bdcde
Add stubs for UConverter
...
Closes GH-5218
2020-02-28 14:37:37 +01:00
Máté Kocsis
3ab75ac019
Update MySQLi function info
...
Closes GH-5214
2020-02-28 14:36:54 +01:00
Nikita Popov
b89ba475df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try to fix intermittent FPM failures
2020-02-28 13:19:53 +01:00
Nikita Popov
519a72e0b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79252
2020-02-28 12:49:45 +01:00
Nikita Popov
06ac14f7f2
Avoid duplicate calls to interface implementation handler
2020-02-28 12:17:01 +01:00
Remi Collet
06750d75e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix test
2020-02-28 10:39:43 +01:00
Remi Collet
32e5ca234a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Fix #79315 ZipArchive::addFile doesn't honor start/length parameters
2020-02-28 10:36:34 +01:00
Remi Collet
165d38a38d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Fix #79315 ZipArchive::addFile doesn't honor start/length parameters
2020-02-28 10:29:30 +01:00
Remi Collet
3725faa3db
NEWS
2020-02-28 10:24:52 +01:00
Remi Collet
fb881cbdfc
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #79315 ZipArchive::addFile doesn't honor start/length parameters
2020-02-28 10:23:19 +01:00
Nikita Popov
c5e8c25dda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use type-checked ref assignment in UConverter
2020-02-28 10:22:11 +01:00
Remi Collet
5b2d4c0ecc
Fix #79315 ZipArchive::addFile doesn't honor start/length parameters
2020-02-28 10:21:19 +01:00
George Peter Banyard
5d62f95ec7
Use {0} to initialize instead of {NULL}
...
Clang emits a [-Wmissing-field-initializers] when using {NULL} instead of {0}
2020-02-28 00:21:25 +01:00
Dmitry Stogov
63761d1133
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect overflow detection
2020-02-27 23:38:19 +03:00
Nikita Popov
819a872cfa
Avoid more null arithmetic
2020-02-27 14:48:43 +01:00
Nikita Popov
5a90392c6a
Use EX_NUM_TO_VAR() in more places
...
Not sure why I missed these before.
2020-02-27 13:13:24 +01:00
Nikita Popov
1949a26aac
Remove more null arithmetic UB
...
Introduce an EX_NUM_TO_VAR macro to mirror EX_VAR_TO_NUM and
replace usages of the ZEND_CALL_VAR_NUM(NULL) pattern.
2020-02-27 12:54:48 +01:00
Christoph M. Becker
3ae04b05f5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add upgrading node regarding fix for bug #79271
2020-02-27 10:39:07 +01:00
Nikita Popov
84854a72c7
Remove mergesort implementation
...
php_mergesort() isn't being used for anything, and hasn't been for
a long time. Even if we wanted to use a stable sort, this isn't
the implementation we'd use...
2020-02-27 10:36:01 +01:00
Nikita Popov
0427ef91a6
Avoid null arithmetic UB in EX_VAR_TO_NUM
2020-02-27 10:30:16 +01:00
Dmitry Stogov
4786207ecc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect behavior of internal memory debugger
2020-02-27 12:28:09 +03:00
Christoph M. Becker
30d18b8ced
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #64032 : mysqli reports different client_version
2020-02-27 09:40:31 +01:00
Nikita Popov
a51c98e696
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #60161
2020-02-26 16:48:41 +01:00
Máté Kocsis
960318ed95
Change argument error message format
...
Closes GH-5211
2020-02-26 15:00:08 +01:00
George Peter Banyard
c7094d8926
Fix mbstring regex variable types to correspond to Oniguruma
...
The beginning and ending of a Oniguruma Regex are stored in a OnigRegion (which is a typedef to the Oniguruma re_registers struct) as as int* therefore change the type from size_t to int
Closes GH-5196
2020-02-26 11:24:03 +01:00
Nikita Popov
b35b0142e6
Require all internal functions to have arginfo
2020-02-26 10:05:20 +01:00
Nikita Popov
8d30d5f269
Add stubs for COMPersistHelper
2020-02-26 10:00:08 +01:00
George Peter Banyard
1fdc53bc96
Remove deprecated capture_session_meta OpenSSL stream context
...
Closes GH-5200
2020-02-26 03:09:13 +01:00
Máté Kocsis
81fee9f29f
Get rid of method mapping of BreakIterator classes
2020-02-25 23:05:24 +01:00
Máté Kocsis
bcb7847139
Add stubs for Intl BreakIterator
...
Closes GH-5207
2020-02-25 23:05:03 +01:00
Nikita Popov
d594fba3ac
Reorder checks in object ref assignment
...
First check for IS_INDIRECT and de-indirect it directly there.
Handle the error cases later.
2020-02-25 17:30:54 +01:00
Nikita Popov
b4c74c54b2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #63206 : Fully support error/exception_handler stacking, even with null or inside the handler
2020-02-25 12:44:26 +01:00
Nikita Popov
98ad4d3b5b
Give arginfo to SplFileInfo::_bad_state_ex()
...
We should really get rid of this hack though... Wow!
2020-02-25 11:18:25 +01:00
Nikita Popov
631c6e7f78
Add missing zend_test stubs
2020-02-25 11:18:15 +01:00
Tom Van Looy
fabe6a310c
Add ext/mysqli stubs
...
Closes GH-4913.
2020-02-25 11:06:46 +01:00
Nicolas Oelgart
aa79a22d32
Add preg_last_error_msg() function
...
Provides the last PCRE error as a human-readable message, similar
to functionality existing in other extensions, such as
json_last_error_msg().
Closes GH-5185.
2020-02-25 10:26:03 +01:00
Nikita Popov
bb6e2a1615
Avoid used of "named fn" in ext/standard
2020-02-25 10:21:31 +01:00
Nikita Popov
7956866ff4
Fix macro-expansion issues in ZEND_FE and friends
...
I noticed that we have various places where we work around macros
conflicting with PHP function names. Rather than require this,
fix our ZEND_FE etc macros to avoid pre-scan macro expansion.
This requires duplicating the ZEND_FN/ZEND_MN macros in places,
but that seems like a reasonable tradeoff.
2020-02-25 10:21:31 +01:00
Nikita Popov
16897aacce
Remove unnecessary checks in breakpoint iterator
...
The result of Z_INTL_BREAKITERATOR_P() cannot be NULL. This type
of macro in general can never be NULL.
2020-02-25 10:06:13 +01:00
Nikita Popov
a939805641
Use serialize_precision for var_dump()
...
var_dump() is debugging functionality, so it should print
floating-point numbers accurately. We do this by switching
to serialize_precision, which (by default) will print with
as much precision as necessary to preserve the exact value
of the float.
This also affects debug_zval_dump().
Closes GH-5172.
2020-02-25 09:51:32 +01:00
Nikita Popov
c3aa9132d6
Fix argon2 test if provided by sodium
2020-02-24 21:34:37 +01:00
Nikita Popov
7fc29c9924
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable ext/sodium in CI
Add skipif for argon2id in test
2020-02-24 12:41:49 +01:00
Nikita Popov
f69bad872a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't treat any WS as start of header
2020-02-24 10:20:49 +01:00
Nikita Popov
e40b744b78
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce code duplication in HTTP header checks
2020-02-24 10:07:28 +01:00
Nikita Popov
cc704f5bb6
Reduce code duplication in HTTP header checks
2020-02-24 09:58:29 +01:00
Nikita Popov
ce2abdd42e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixes #79265 : Improper injection of Host header when using fopen for http requests
2020-02-24 09:51:55 +01:00
Christoph M. Becker
6c7306f45d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79299 : com_print_typeinfo prints duplicate variables
2020-02-23 23:35:33 +01:00
Jakub Zelenka
736b1ab200
Merge branch 'PHP-7.4'
2020-02-23 19:15:05 +00:00
Jakub Zelenka
ee0579350f
Merge branch 'PHP-7.4'
2020-02-23 18:32:20 +00:00
George Peter Banyard
0aad7999e7
Update Travis build config
...
The sudo key is deprecated and doesn't do anything anymore.
Adding the "os" key with default value "linux" which was assumed to the build config.
2020-02-23 03:27:05 +01:00
George Peter Banyard
6e40ec7de9
Second go at fixing [-Wmissing-field-initializers] compiler warning in PDO
...
By 0 initializing the sub structs
2020-02-22 01:01:07 +01:00
Nikita Popov
1892def3a8
Add rand() to ext/standard stub
2020-02-21 16:27:59 +01:00
Christoph M. Becker
3e1ac7e968
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79294 : ::columnType() may fail after SQLite3Stmt::reset()
2020-02-21 13:39:05 +01:00
George Peter Banyard
363d87f256
Fix [-Wmissing-field-initializers] compiler warning in mbstring
...
Add missing NULL pointer for mbfl_convert_vtbl struct.
2020-02-21 13:19:09 +01:00
Nikita Popov
a87bfdfd25
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use asm arithmetic under msan
2020-02-21 11:58:59 +01:00
Christoph M. Becker
a21cdb88ac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #78569
2020-02-21 10:34:27 +01:00
Nikita Popov
d1d87dcd6f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update Ubuntu version on Azure
2020-02-21 10:12:45 +01:00
Nikita Popov
ac51a5f02a
Make SPL doubly linked list smaller
...
Store rc in data u2. This drops element size from 40 to 32 bytes.
2020-02-21 09:54:18 +01:00
Máté Kocsis
f031735489
Update UPGRADING
...
[skip ci]
2020-02-20 11:13:24 +01:00
Christoph M. Becker
802391fa3f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS [ci skip]
2020-02-20 10:59:05 +01:00
Máté Kocsis
c231bbb852
Remove restore_include_path()
...
Closes GH-5189
2020-02-20 09:11:36 +01:00
Bishop Bettini
fb57ae9084
Improve comment on RFC 1867 filename handling
...
It was pointed out on the internals ML[1] that the basename comment
around RFC 1867 file handling was confusing. The comment seemed to
say that the basename handling was only necessary because of some
esoteric bug in Windows IE. In fact that comment applied to earlier
versions of the code and was, therefore, misleading. The comment
needs to clear that basename is required per RFC 7578[2].
[1]:https://externals.io/message/108624
[2]:https://tools.ietf.org/html/rfc7578
2020-02-19 11:30:32 -05:00
Máté Kocsis
4f89211810
Remove the deprecated reflection export methods
...
Closes GH-5188
2020-02-19 13:19:37 +01:00
Nikita Popov
318fe06042
Create memory stream in exif fuzzer
...
At least one segfault observed because temp file creation failed.
Switch to using a memory stream, which should be more robust, and
more efficient for that matter.
2020-02-19 10:24:12 +01:00
Nikita Popov
28a30f7afa
Handle static return type in AST printer
...
Fixes OSS-Fuzz #20782 .
2020-02-19 09:45:41 +01:00
Máté Kocsis
736b22dc0b
Add stubs for aliases
...
Closes GH-5187
2020-02-18 21:10:36 +01:00
Nikita Popov
172010a08d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use VLA in mysqlnd auth
2020-02-18 16:18:50 +01:00
Nikita Popov
7a062cf9cd
Handle EXIF offsets in a principled manner
...
exif_process_IFD_TAG() currently accepts a dir_entry, offset_base
and IFDlength. However, it's very hard to follow how these values
are related to each other and the addressable memory region. As we
add additional bounds check, this gets further confused.
One of the basic cases is where dir_entry is in
[offset_base, offset_base+IFDlength), in which case the memory
[dir_entry, offset_base+IFDlength) is valid, but the memory
[offset_base, dir_entry) is not necessarily valid. I wasn't able
to understand what exactly is valid if dir_entry is outside
[offset_base, offset_base+IFDlength)
This patch changes everything to use a struct that separately stores
offset_base and the valid memory region and adds helpers to fetch
offsets and check that pointers are in-bounds.
Closes GH-5068.
2020-02-18 15:17:38 +01:00
Nikita Popov
3b08f53c97
Deprecate required param after optional
...
As an exception, we allow "Type $foo = null" to occur before a
required parameter, because this pattern was used as a replacement
for nullable types in PHP versions older than 7.1.
Closes GH-5067.
2020-02-18 14:35:58 +01:00
Christoph M. Becker
9d79e510d5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove extra tab in NEWS [ci skip]
2020-02-18 11:12:08 +01:00
Remi Collet
e845b1908b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version to 7.2.29
2020-02-18 11:01:21 +01:00
Nikita Popov
abfdfc9ff8
Add return types to FFI methods
...
The FFI class is final, so we can use proper return types.
2020-02-18 10:28:43 +01:00
Nikita Popov
328903ca36
Add proper return types to final phar methods
...
As these are final, we can add return types to them.
2020-02-18 10:20:21 +01:00
Nikita Popov
541f8b7640
Remove mysqli reflection tests
2020-02-18 10:08:03 +01:00
Nikita Popov
540f052242
Fix zpp in mysqli_warning::next()
...
This only exists as a method, so using zend_parse_method_parameters
doesn't make sense. Also make sure that zpp is always called, not
only conditionally.
2020-02-18 10:01:17 +01:00
Christoph M. Becker
b5d8fc0153
[ci skip] I still help to maintain these extensions
...
or at least planning to.
2020-02-18 09:47:58 +01:00
Christoph M. Becker
9ca449e0a8
Make quoting of cmd execution functions consistent
...
While the `$command` passed to `proc_open()` had to be wrapped in
double-quotes manually, that was implicitly done for all other
program execution functions. This could easily introduce bugs and
even security issues when switching from one to another program
execution function.
Furthermore we ensure that the additional quotes are always
unwrapped regardless of what is passed as `$command` by passing
the `/s` flag to cmd.exe. As it was, `shell_exec('path with
spaces/program.exe')` did execute program.exe, but adding an
argument (`shell_exec('path with spaces/program.exe -h)`) failed
to execute program.exe, because cmd.exe stripped the additional
quotes.
While these changes obviously can cause BC breaks, we feel that in
the long run the benefits of having consistent behavior for all
program execution functions outweighs the drawbacks of potentially
breaking some code now.
2020-02-17 23:17:17 +01:00
Christoph M. Becker
72737b0660
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79038 : PDOStatement::nextRowset() leaks column values
2020-02-17 22:55:16 +01:00
Christoph M. Becker
4804dc2b20
Rename php_dom_create_interator() to php_dom_create_iterator()
...
Thus fixing an obvious typo.
2020-02-17 22:49:59 +01:00
Christoph M. Becker
742bb334fc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS [ci skip]
2020-02-17 19:37:24 +01:00
Christoph M. Becker
18537af1d2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
2020-02-17 19:25:36 +01:00
Christoph M. Becker
d8f8b99375
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix # 79171: heap-buffer-overflow in phar_extract_file
Fix bug #79082 - Files added to tar with Phar::buildFromIterator have all-access permissions
Fix bug #79221 - Null Pointer Dereference in PHP Session Upload Progress
Mark bug76348.phpt as online test
Fix bug #79082 - Files added to tar with Phar::buildFromIterator have all-access permissions
Fix bug #79221 - Null Pointer Dereference in PHP Session Upload Progress
2020-02-17 19:09:35 +01:00
Christoph M. Becker
7d6384d1f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Create a new console for each test worker on Windows
2020-02-17 18:54:32 +01:00
Máté Kocsis
ac0853eb26
Make type error messages more consistent
...
Closes GH-5092
2020-02-17 14:22:17 +01:00
Nikita Popov
72bd55902d
Improve generated names for anonymous classes
...
In order of preference, the generated name will be:
new class extends ParentClass {};
// -> ParentClass@anonymous
new class implements FirstInterface, SecondInterface {};
// -> FirstInterface@anonymous
new class {};
// -> class@anonymous
This is intended to display a more useful class name in error messages
and stack traces, and thus make debugging easier.
Closes GH-5153.
2020-02-17 12:21:33 +01:00
Nikita Popov
43443857b7
Add static return type
...
RFC: https://wiki.php.net/rfc/static_return_type
The "static" type is represented as MAY_BE_STATIC, rather than
a class type like "self" and "parent", as it has special
resolution semantics, and cannot be cached in the runtime cache.
Closes GH-5062.
2020-02-17 11:51:09 +01:00
Michael Voříšek
d2ba848572
Use strlen for INI_* macros
...
strlen() is resolved at compile time by optimizing compilers.
Prevent mistakes and allow to use INI_* macros with char * variables
which can have sizeof() == 1.
Closes GH-5174.
2020-02-17 11:11:14 +01:00
Dmitry Stogov
53fc8ef41d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable instantiation of zero size FFI\CData objects
Fix # 79171: heap-buffer-overflow in phar_extract_file
Fix bug #79082 - Files added to tar with Phar::buildFromIterator have all-access permissions
Fix bug #79221 - Null Pointer Dereference in PHP Session Upload Progress
2020-02-17 12:54:11 +03:00
Dmitry Stogov
cf8407a238
Fixed bug #79255 (PHP cannot be compiled with enable JIT)
2020-02-17 12:03:49 +03:00
Nikita Popov
7a8f180b19
Revert "Fixed bug #79255 (PHP cannot be compiled with enable JIT)"
...
This reverts commit de6984edd5 .
Reverting to unbreak 32-bit CI.
2020-02-17 09:34:56 +01:00
Christoph M. Becker
7248341ea6
Fix # 79171: heap-buffer-overflow in phar_extract_file
...
We must not access memory outside of the allocated buffer.
2020-02-17 00:20:31 -08:00
Stanislav Malyshev
bcbc053dc1
Fix bug #79082 - Files added to tar with Phar::buildFromIterator have all-access permissions
2020-02-17 00:20:31 -08:00
Stanislav Malyshev
90ae1818d5
Fix bug #79221 - Null Pointer Dereference in PHP Session Upload Progress
2020-02-17 00:20:31 -08:00
Christoph M. Becker
406c5d5956
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79271 : DOMDocumentType::$childNodes is NULL
2020-02-17 09:10:39 +01:00
Christoph M. Becker
7d0102dfa7
Revert "Replace @param annotations with type declarations"
...
This reverts commit c31029f335 .
2020-02-17 08:55:18 +01:00
Xinchen Hui
de6984edd5
Fixed bug #79255 (PHP cannot be compiled with enable JIT)
2020-02-17 13:13:49 +08:00
Tyson Andre
3d8342aa3c
[skip ci] Skip 2 tokenizer tests if tokenizer isn't loaded
...
`./configure --disable-tokenizer` can disable tokenizer
Closes GH-5184
2020-02-16 19:22:22 -05:00
Christoph M. Becker
c31029f335
Replace @param annotations with type declarations
2020-02-16 23:43:38 +01:00
Christoph M. Becker
6ee6097688
Constrain number parameter of numfmt_format to int|float
...
This is inline with similar changes to the math functions. Especially,
array to number conversion makes no sense here, and is likely to hide
a programming error.
To make that feasible, we introduce the `n` specifier for classic ZPP
so we can stick with `zend_parse_method_parameters()`.
We also remove a test case, which has been degenerated to a ZPP test.
2020-02-16 16:48:35 +01:00
Tyson Andre
d9b80efb57
[skip ci] Fix typos in UPGRADING
...
Closes GH-5183
2020-02-16 10:28:39 -05:00
Christoph M. Becker
b442c89a23
Fix arginfo
...
These parameters accept int|float, since they are parsed with
`Z_PARAM_NUMBER`.
2020-02-16 14:29:36 +01:00
Anatol Belski
66c85c3f2f
Update bundled config.guess and config.sub
2020-02-15 13:43:31 +01:00
Nikita Popov
8a4068988b
Clarify that token_get_all() never returns false
...
It can only fail in TOKEN_PARSE mode, in which case it will throw.
2020-02-14 16:50:12 +01:00
Christoph M. Becker
95ea8b08b8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in recent bugfix
2020-02-14 09:24:38 +01:00
Nikita Popov
e99d5d3923
Add stubs for zend_test
2020-02-13 16:51:34 +01:00
Nikita Popov
80392253e0
Add arginfo for HashContext::__construct()
...
Arginfo was already generated, just not referenced.
2020-02-13 16:51:23 +01:00
Nikita Popov
5264acc4f1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix Azure MacOS build
2020-02-13 16:18:25 +01:00
Christoph M. Becker
a957e84c58
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77569 : Write Acess Violation in DomImplementation
2020-02-13 15:17:25 +01:00
Nikita Popov
f3d8ac1d95
Fix JIT trait type errors
...
We need to load EX->func here rather than use a hardcoded op_array,
as it may be copied with adjusted scope for traits.
2020-02-13 15:16:23 +01:00
Michael Voříšek
f15b5ff353
Add const modifier for name strings
...
Closes GH-5173.
2020-02-13 14:44:06 +01:00
Xinchen Hui
9c5fb54c97
Improved the check
...
makefile.global is also used while building shared extension
2020-02-13 15:59:21 +08:00
Nikita Popov
df71503e83
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove value from comment in php.ini files
2020-02-12 12:18:34 +01:00
Nikita Popov
907ae8d4c6
Reset required_num_args for disabled functions
...
Otherwise we may get arginfo/zpp mismatch errors.
2020-02-12 12:01:22 +01:00
Nikita Popov
ae6f45ad45
var_dump(): Don't skip recursion detection on first level
...
This is confusing. The current output doesn't make it clear that
we're in fact recursing to the top-level structure.
Closes GH-5171.
2020-02-12 11:25:50 +01:00
Xinchen Hui
9e5650265c
Fixed build (Only PHP above 7.1 could run the gen_stub.php)
2020-02-12 14:22:01 +08:00
Nikita Popov
5cf9710ba8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79257
2020-02-11 17:32:49 +01:00
Dmitry Stogov
b79af3d4df
Removed unused macro
2020-02-11 17:30:49 +03:00
Dmitry Stogov
437404b03a
Reuse SEPARATE_ARRAY() macro
2020-02-11 16:42:23 +03:00
Nikita Popov
ae2e4b5953
Add UPGRADING notes
...
Not listing the details here, I think the RFC is a better reference
for the precise technical details.
[ci skip]
2020-02-11 12:44:43 +01:00
Nikita Popov
c141ee3f9c
Allow arbitrary expressions in new/instanceof using () syntax
2020-02-11 12:33:23 +01:00
Nikita Popov
357fbc9902
Treat magic constants like normal constants
2020-02-11 12:33:23 +01:00
Nikita Popov
ab154b7a64
Make class constants fully dereferencable
2020-02-11 12:33:23 +01:00
Nikita Popov
de7c7efee9
Unify array and object dereferencability
2020-02-11 12:33:23 +01:00
Nikita Popov
465e6f53ed
Split into fully_dereferencable and array_dereferencable
2020-02-11 12:33:23 +01:00
Nikita Popov
cf5689e961
Split class_constant from constant production
2020-02-11 12:33:23 +01:00
Nikita Popov
24e365f9e2
Make encapsed strings fully dereferencable
...
This allows operations that were previously allowed on constant
strings on interpolated strings as well.
2020-02-11 12:33:23 +01:00
Nikita Popov
d933591674
Add support for $obj::class
...
This allows $obj::class, which gives the same result as get_class($obj).
Anything other than an object results in TypeError.
RFC: https://wiki.php.net/rfc/class_name_literal_on_object
Closes GH-5065.
2020-02-11 12:16:30 +01:00
Christoph M. Becker
69819baee3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79254 : getenv() w/o arguments not showing changes
2020-02-11 12:08:25 +01:00
ekinhbayar
8ceac81b45
Remove CURLOPT_PASSWDDATA block CURLOPT_PASSWDDATA was removed from curl as of 7.10.8
...
Closes GH-5166.
2020-02-11 12:04:24 +01:00
George Peter Banyard
4c9699f0d1
Revert "Fix [-Wmissing-field-initializers] compiler warning in ext/PDO"
...
Seems like Travis doesn't like this and now throws a
[-Werror=maybe-uninitialized] instead.
This reverts commit 051b01d465 .
2020-02-11 00:57:52 +01:00
George Peter Banyard
051b01d465
Fix [-Wmissing-field-initializers] compiler warning in ext/PDO
2020-02-11 00:24:34 +01:00
George Peter Banyard
a7e3bbbc55
Fix [-Wmissing-field-initializers] compiler warning in transliterator_methods.c
2020-02-11 00:23:52 +01:00
George Peter Banyard
01957adb7f
Fix [-Wmissing-field-initializers] compiler warning in mysqlnd_result.c
...
Explicitly initialize to NULL the unused pointers to preserve
ABI forwards compatibility.
2020-02-10 12:14:47 +01:00
George Peter Banyard
e01d2162b2
Fix [-Wmissing-field-initializers] compiler warning in zend_iterator
...
Add missing NULL pointer for get_properties_for in iterator_object_handlers
initialization.
Also add two missing comments describing what the NULL pointer refer
to in iterator_object_handlers initialization.
2020-02-10 11:46:19 +01:00
Dmitry Stogov
a9e35b843c
Save delayed call frame
2020-02-10 13:43:32 +03:00
George Peter Banyard
fa99811389
Fix [-Wmissing-field-initializers] compiler warning in PHPDBG_COMMAND_HELP_D macro
2020-02-10 11:33:06 +01:00
Nikita Popov
42fbc76d9c
Always invoke zpp in ReflectionProperty::getValue/isInitialized
...
Make sure we still perform a zpp check for the static case, and
also always enforce that the parameter is ?object. Otherwise we
violate the specified signature.
2020-02-10 11:05:26 +01:00
Nikita Popov
87f127d8fa
Rename reflection stub file
...
Where possible, the stub file should match the name of the C file,
so that the build system integration automatically recompiles it.
2020-02-10 10:53:44 +01:00
Nikita Popov
74da772933
Fix stub for DomImplementation::createDocumentType()
2020-02-10 10:48:18 +01:00
Nikita Popov
fc0c71ad30
Deref slow-path ASSIGN_OBJ result
...
We should not store a reference inside IS_TMP_VAR.
2020-02-10 10:42:06 +01:00
Nikita Popov
2ff79942cc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove hint to security purpose of disable_functions
2020-02-10 10:05:42 +01:00
Xinchen Hui
421a7342fe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79244 (php crashes during parsing INI file). (Laruence)
2020-02-10 13:02:45 +08:00
Máté Kocsis
86780ff79f
Add stubs for NumberFormatter
...
Closes GH-4827
2020-02-09 22:10:12 +01:00
Ruud Boon
37965974fb
Update release-process.md
...
I would like to suggest posting tweet to become part of the release process.
[skip ci] Closes GH-5144
2020-02-08 17:27:44 +01:00
Christoph M. Becker
42e7de1518
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79248 : Traversing empty VT_ARRAY throws com_exception
2020-02-08 17:07:49 +01:00
Christoph M. Becker
377ac2a903
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79247 : Garbage collecting variant objects segfaults
2020-02-08 11:06:45 +01:00
Anatol Belski
538c088a82
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update bundled stdxx check macros
2020-02-08 10:18:08 +01:00
Christoph M. Becker
78b71e1e8f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test case on x86 where it otherwise fails [ci skip]
2020-02-07 21:11:32 +01:00
Christoph M. Becker
1d9e80a53d
Simplify COM_ERR_CONST definition for x64
...
This is also a wee bit faster.
2020-02-07 18:25:24 +01:00
Christoph M. Becker
4bdc4da1c7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79242 : COM error constants don't match com_exception codes
2020-02-07 18:11:41 +01:00
Nikita Popov
d2befbc17d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PCRE: Only remember valid UTF-8 if start offset zero
PCRE: Check whether start offset is on char boundary
2020-02-07 17:02:49 +01:00
Dmitry Stogov
24127d2e3f
Removed ext/zip/tests/oo_namelocate.zip
2020-02-07 16:52:26 +03:00
Nikita Popov
2bc0a2253a
Enable -msse2 on m32 builder
...
This helps to catch stack alignment issues in JIT.
2020-02-07 13:13:26 +01:00
Dmitry Stogov
cf8dc1c1a2
typo
2020-02-07 14:21:56 +03:00
Dmitry Stogov
64b40f69dc
Make ASSIGN, ASSIGN_OP, INC and DEC opcodes to return IS_TMP_VAR instead of IS_VAR.
...
This helps to avoid unnecessary IS_REFERENCE checks.
This changes some notices "Only variables should be passed by reference" to exception "Cannot pass parameter %d by reference".
Also, for consistency, compile-time fatal error "Only variables can be passed by reference" was converted to exception "Cannot pass parameter %d by reference"
2020-02-07 13:36:52 +03:00
Dmitry Stogov
ad3f768253
Fixed stack alignment
2020-02-07 13:00:48 +03:00
Nikita Popov
d8840a1b69
Try to fix Windows build
2020-02-07 12:59:48 +03:00
Nikita Popov
bc6bab6cb4
Basic JIT support for verify return
2020-02-07 12:59:48 +03:00
Benjamin Eberlei
e9b991d6a0
Fix ext/dom test helper method causing trailing whitespaces.
2020-02-06 22:24:37 +01:00
Dmitry Stogov
170cc10519
Fixed JIT for PTR_INC instruction to return de-referenced value of reference
2020-02-06 21:29:43 +03:00
Christoph M. Becker
e1a46de938
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #66322 : COMPersistHelper::SaveToFile can save to wrong location
2020-02-06 15:02:12 +01:00
Dmitry Stogov
b53445422a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make opcodes to return de-refereced values of typed references (in the same was as for non-typed)
2020-02-06 15:57:29 +03:00
George Peter Banyard
c3e65d9069
Fix [-Wtype-limits] warning in LDAP by removing unnecessary condition
...
As context is a pointer to a berval struct and bv_len is of type
ber_len_t [1] which it self is defined as an unsigned integer [2]
this condition is always true.
[1] https://www.openldap.org/devel/gitweb.cgi?p=openldap.git;a=blob;f=include/lber.h#l212
[2] https://www.openldap.org/software//man.cgi?query=ber_free&sektion=3&apropos=0&manpath=OpenLDAP+2.4-Release
2020-02-06 13:20:15 +01:00
Nikita Popov
d4de3f95d6
Remove spurious const qualifier from function return type
2020-02-06 11:59:52 +01:00
Nikita Popov
53e527ad43
Remove ZEND_ACC_IMPLEMENT_INTERFACES flag
...
This is equivalent to checking ce->num_interfaces. The only subtle
moment is during inheritance, where num_interface may change when
parent interfaces are inherited. The check in zend_do_link_class
thus uses "interfaces", not "ce->num_interfaces".
2020-02-06 10:53:12 +01:00
Christoph M. Becker
40d615b24b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS [ci skip]
2020-02-06 10:49:53 +01:00
Nikita Popov
f57f0920fd
Remove ZEND_ACC_IMPLEMENTS_TRAITS flag
...
This is equivalent to checking ce->num_traits.
2020-02-06 10:45:49 +01:00
Nikita Popov
4f5f72c7af
Remove ZEND_ACC_INHERITED flag
...
It is equivalent to checking ce->parent != NULL. Just adds more
state that needs to be kept in sync.
2020-02-06 10:42:25 +01:00
George Peter Banyard
ac89139773
Fix [-Wtype-limits] in bundled GD lib by using signed integers
...
As seen in the gdImageRotateBicubicFixed() function the same setup
occurs but it uses signed integers, therefore we use also use
signed integers in gdImageRotateBilinear()
Moreover, these two functions have been removed upstream in
https://github.com/libgd/libgd/commit/bd6d2e101f6f1df106d1cd2e2dc8058a5538109b
therefore we should also mimic upstream and remove them...
Thanks to @cmb69 for pointing it out.
2020-02-06 01:34:09 +01:00
George Peter Banyard
62c51fc4a7
Adjust XFAIL tests due to TypeErrors
...
Closes GH-5152
2020-02-05 23:45:10 +01:00
George Peter Banyard
78f9f5e44f
Fix false positive for -Wtype-limits in standard image ext
2020-02-05 18:10:09 +01:00
George Peter Banyard
e4e1746b3f
Remove unnecessary condition as always true.
...
ZSTR_LEN(str) is an unsigned integer therefor it is always greater
or equal than 0.
Detected by -Wtype-limits compiler warning.
2020-02-05 17:44:20 +01:00
George Peter Banyard
c343c1bcae
Fix some -Wold-style-declaration compiler warnings
2020-02-05 17:39:29 +01:00
Nikita Popov
065224190d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79188
2020-02-05 11:21:34 +01:00
George Peter Banyard
b3f17ea5d5
Promote invalid mode/unknow option from Warning to ValueError for plain streams.
...
Closes GH-5076
2020-02-04 22:25:43 +01:00
George Peter Banyard
2efa0b3bfa
Address path is 104 bytes on macOs compared to 108 on Linux
2020-02-04 22:23:56 +01:00
Máté Kocsis
c42572970a
Add various stubs for Intl
...
Closes GH-4826
2020-02-04 14:55:21 +01:00
Máté Kocsis
a827db24f1
Add stubs for IntlCalendar
...
Closes GH-4846
2020-02-04 14:50:02 +01:00
Máté Kocsis
223663807a
Fix ZPP of intl_cal_set()
2020-02-04 14:47:11 +01:00
Dmitry Stogov
daee985709
Fixed JIT for BIND_GLOBAL
2020-02-04 15:56:55 +03:00
Máté Kocsis
fe7761b0ad
Add stubs for IntlDateFormatter & MessageFormatter
...
Closes GH-4812
2020-02-04 13:08:06 +01:00
Christoph M. Becker
f6ddcfa6f3
Merge branch 'PHP-7.4' [ci skip]
...
* PHP-7.4:
Next is 7.3.16
2020-02-04 11:46:57 +01:00
Christoph M. Becker
f55f0ae978
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79019 : Copied cURL handles upload empty file
2020-02-04 11:30:57 +01:00
Christoph M. Becker
fabe6aa7dc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78090 : bug45161.phpt takes forever to finish
2020-02-04 00:54:54 +01:00
Christoph M. Becker
f00afaeed5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79191 : Error in SoapClient ctor disables DOMDocument::save()
2020-02-03 23:38:40 +01:00
Nikita Popov
f8d795820e
Reindent phpt files
2020-02-03 22:52:20 +01:00
Nikita Popov
d2cb200e10
Enable formatting of phpt files in tidy.php
2020-02-03 22:52:04 +01:00
Máté Kocsis
9942f45b7a
Fix indentation/trailing whitespaces of 32-bit tests
2020-02-03 16:50:59 +01:00
Máté Kocsis
0253a232c3
Fix indentation/trailing whitespaces of tests
2020-02-03 15:04:02 +01:00
Nikita Popov
169805777c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Apply tidy formatting
2020-02-03 13:42:08 +01:00
Nikita Popov
6b38251820
Add bundled jit libraries to exclude list
2020-02-03 13:41:09 +01:00
Nikita Popov
fc2663abef
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add tidy.php to enforce formatting
2020-02-03 13:35:49 +01:00
Christoph M. Becker
d601b123e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Relax test expectation
2020-02-03 13:05:54 +01:00
Christoph M. Becker
aba6937c0a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79212 : NumberFormatter::format() may detect wrong type
2020-02-03 12:30:42 +01:00
Remi Collet
c2a61c9d06
zip ext is now 1.17.1
2020-02-03 11:37:20 +01:00
Derick Rethans
d6b04bfbd5
Export zend_type_to_string() with ZEND_API
2020-02-03 10:26:20 +00:00
Remi Collet
4d80c3b7e0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add test
NEWS
Fixed bug #73119 Wrong return for ZipArchive::addEmptyDir Method
2020-02-03 10:24:57 +01:00
Remi Collet
5eb9cffa14
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Fixed bug #73119 Wrong return for ZipArchive::addEmptyDir Method
2020-02-03 10:09:27 +01:00
Remi Collet
3375cfe0cf
NEWS
2020-02-03 10:09:12 +01:00
Nikita Popov
98a8ab1389
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add WHITESPACE_SENSITIVE run-tests section
2020-02-03 10:08:20 +01:00
Remi Collet
0bc19a4b81
Fixed bug #73119 Wrong return for ZipArchive::addEmptyDir Method
2020-02-03 10:08:09 +01:00
Nikita Popov
4cdd15d414
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable parallelism for FPM tests
2020-02-03 09:58:03 +01:00
Máté Kocsis
2015c7a48e
Fix another batch of indentation in tests
2020-02-02 23:33:40 +01:00
Akim Demaille
4cbffd89d9
Clean up the generation of the parsers
...
Prefer '%define api.value.type' to '#define YYSTYPE', so that Bison
know the type.
Use '%code requires' to declare what is needed to define the api.value.type
(that code is output in the generated header before the generated
definition of YYSTYPE).
Prefer '%define api.prefix' inside the grammar file to '-p' outside,
as anyway the functions defined in the file actually use this prefix.
Prefer `%param` to both `%parse-param` and `%lex-param`.
Closes GH-5138
2020-02-01 14:21:53 +01:00
Akim Demaille
2127a37b83
Bison: enable all the warnings and fix them
...
First, fix 5547d361208d90e12d53bb62bb2ffbbff9b93ca0: the definition of
YFLAGS was not passed into the Makefile: AC_SUBST does not suffice, we
need PHP_SUBST_OLD. While at it, allow to pass variable and value at
the same time.
Then pass -Wall to bison, rather than only -Wempty-rules.
Use %precedence where associativity is useless.
Remove useless %precedence.
GH-5138
2020-02-01 14:21:21 +01:00
Pieter Hordijk
b97c9dc72a
Added opcache extension to inis
...
Extensions are not loaded by default (commented out)
Closes GH-5136
2020-02-01 07:15:18 +01:00
Máté Kocsis
19222b8581
Fix var_dump test
2020-01-31 18:36:43 +01:00
Máté Kocsis
8b36be268d
Fix indentation and whitespaces in tests
...
In preparation for GH-5074
2020-01-31 17:47:14 +01:00
Sebastian Pop
ee87e86d0a
inline by hand to avoid uninitialized variable warning
...
When compiling with "-Wall -Werror" gcc emits two errors:
../src/pcre2_jit_neon_inc.h:211:8: error: ‘cmp1b’ is used uninitialized in this function [-Werror=uninitialized]
211 | data = fast_forward_char_pair_compare(compare1_type, data, cmp1a, cmp1b);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../src/pcre2_jit_neon_inc.h:212:9: error: ‘cmp2b’ is used uninitialized in this function [-Werror=uninitialized]
212 | data2 = fast_forward_char_pair_compare(compare2_type, data2, cmp2a, cmp2b);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The compiler emits the error message before inlining.
Because the warning is based on an intra-procedural data
flow analysis, the compiler does not see that cmp1b and
cmp2b are not used when they are not initialized.
Here is the code of that function, cmp2 is only used
when ctype is compare_match2 or compare_match1i,
and not when ctype is compare_match1:
static inline vect_t fast_forward_char_pair_compare(compare_type ctype, vect_t dst, vect_t cmp1, vect_t cmp2)
{
if (ctype == compare_match2)
{
vect_t tmp = dst;
dst = VCEQQ(dst, cmp1);
tmp = VCEQQ(tmp, cmp2);
dst = VORRQ(dst, tmp);
return dst;
}
if (ctype == compare_match1i)
dst = VORRQ(dst, cmp2);
dst = VCEQQ(dst, cmp1);
return dst;
}
The patch inlines by hand the case of compare_match1 such that the
code avoids referring to cmp1b and cmp2b.
Tested on aarch64-linux with `make check`.
2020-01-31 14:56:51 +01:00
Dmitry Stogov
2b279b428f
We don't need "safe" destruction anymore
2020-01-31 16:01:09 +03:00
Dmitry Stogov
6b862e82d9
These EG(current_execute_data) = EX(prev_execute_data) assignments are useless now
2020-01-31 14:50:41 +03:00
Dmitry Stogov
08d2d9257d
Export zend_dump_op() and add ZEND_DUMP_NUMERIC_OPLINES flag to print oplines as "dddd" instead of "Ld+"
2020-01-31 13:27:35 +03:00
Nikita Popov
d8a1e3dab0
Fix JIT as well
2020-01-31 10:35:46 +01:00
Nikita Popov
ec0ce49f5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #76047
2020-01-31 10:30:09 +01:00
Akim Demaille
37d0f7d3b3
Use "%empty" in the parsers, instead of comments
...
The annotation %empty is properly enforced: warnings when it's
missing, and errors when it's inappropriate. Support for %empty was
introduced in Bison 3.0.
Pass -Wempty-rule to Bison.
Closes GH-5134
2020-01-31 09:52:40 +01:00
Remi Collet
b915d68852
Zip: version is now 1.17.0
...
change for Windows (which have libzip 1.4 by default)
update NEWS
2020-01-31 09:10:10 +01:00
Remi Collet
3af1cee884
add ZipArchive::registerProgressCallback and ZipArchive::registerCancelCallback methods
2020-01-31 09:06:42 +01:00
Dmitry Stogov
7e7a85e881
Fixed JIT part for bug #79094
2020-01-31 10:39:22 +03:00
Dmitry Stogov
7ebf1d44ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79094 (Crashing when running recursion function)
2020-01-31 10:34:28 +03:00
Benjamin Eberlei
176ec97a16
Add NEWS entry for new ReflectionProperty methods.
2020-01-30 17:48:20 +01:00
Máté Kocsis
5bf6aedae4
Promote mysqli warnings to exceptions
...
Closes GH-5058
2020-01-30 17:05:07 +01:00
Nikita Popov
453713868f
Revert "Make BG(syslog_device) per request"
...
This reverts commit b0d7b126a2 .
This change wasn't quite right: I noticed only now that the
RSHUTDOWN function is #ifdef PHP_WIN32 and I'm not fully convinced
that ifdef can be removed: syslog might also be used by error
logging in FPM for example, in which case we probably shouldn't
be closing the log here.
Generally it's unclear how the openlog() functionality exposed
by PHP is supposed to interact with openlog() uses by SAPIs.
For now I'll just revert this change and let it leak across
requests.
2020-01-30 16:18:02 +01:00
Nikita Popov
981fdd9f51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix cross compilation failure due to size_t typecast in define
2020-01-30 15:52:22 +01:00
Nikita Popov
ca8657a2b5
Initialize SplFixedArray elements to NULL instead of UNDEF
...
The SplFixedArray API treats all elements as NULL, even if they
have not been explicitly initialized. Rather than initializing
to UNDEF an treating that specially in various circumstances,
directly initialize elements to NULL.
This also fixes an assertion failure in the attached test case.
2020-01-30 15:31:39 +01:00
Nikita Popov
b33697d47e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79193
2020-01-30 14:56:31 +01:00
Nikita Popov
38e27625ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix live range calculation for FE_FETCH
2020-01-30 14:24:28 +01:00
Nikita Popov
a66e226713
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix DatePeriod property handling with indirect modification
2020-01-30 13:14:29 +01:00
Christoph M. Becker
2dc5077159
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #70078 : XSL callbacks with nodes as parameter leak memory
2020-01-30 13:07:34 +01:00
Nikita Popov
0078727866
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak in DateTimeImmutable::modify()
2020-01-30 12:17:15 +01:00
Nikita Popov
24a3d0dbd0
Update test for warning -> fatal error change
2020-01-30 12:12:09 +01:00
Nikita Popov
d5dd46fb09
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix copying of functions in variance obligations
2020-01-30 11:56:36 +01:00
Nikita Popov
7c34d73876
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add SKIPIF to test requiring mbregex
2020-01-30 11:21:32 +01:00
Nikita Popov
472fc3a2a9
Fix leak in DatePeriod construction with invalid format
...
Same issue as I fixed in DateInterval construction before.
2020-01-30 11:13:04 +01:00
Nikita Popov
cb7b21009b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reset trampoline on executor startup
Fix UAF in is_callable() and allocated trampoline
2020-01-30 11:05:56 +01:00
Christoph M. Becker
1468484296
Fix #74063 : NumberFormatter fails after retrieval from session
...
While it would be desireable to actually support unserialization of
NumberFormatter instances, at least we should not allow serialization
for now.
We also remove some doubtful tests, which have been added[1] claiming
that they would crash the intl extension, but apparently no fix has
been applied, and the test cases have not been marked as XFAIL.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=ed793b2a3f857fd49c0c1b036062140da5b3e674 >
2020-01-30 10:13:29 +01:00
Nikita Popov
7d170eb295
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix shift ub in mbstring
Restore digit check in mb_decode_numericentity()
2020-01-30 10:08:21 +01:00
Christoph M. Becker
dda67d3226
Enable ZipArchive::setMtime(Name|Index) on Windows
...
These are enabled on non Windows systems as of zip 1.16.0 with libzip
>= 1.0.0. Since Windows builds use at least libzip 1.4.0, we also
enable these methods there.
2020-01-29 18:19:54 +01:00
Nikita Popov
2e97ae91c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mb_ord() crash if internal encoding not supported
2020-01-29 16:19:21 +01:00
Nikita Popov
b2c8abe951
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better overflow check for entity decoding
2020-01-29 16:08:55 +01:00
Nikita Popov
22d2a80031
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reset MBREX(search_re) in RSHUTDOWN
2020-01-29 16:05:47 +01:00
Remi Collet
b8d635cd22
zip extension version is now 1.16.1
2020-01-29 14:26:03 +01:00
Remi Collet
272698d7fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zip: more constants
2020-01-29 14:25:26 +01:00
Anatol Belski
92df876949
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Backport 7d2ef3d2e5 into 7.4
2020-01-29 13:40:09 +01:00
Nikita Popov
42e22a2d91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix use of mb_ereg_search_getregs() after invalid pattern
2020-01-29 12:50:47 +01:00
Anatol Belski
7d2ef3d2e5
Fix datatype
...
This has been introduced by 84b0d0faba .
Besides it causes runtime issues on POWER5 (and presumably later), the
implementation would expect this array to consist on 32-bit integers.
2020-01-29 12:36:37 +01:00
Nikita Popov
083bbf5140
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix length inconsistency in mb_convert_encoding
2020-01-29 12:22:58 +01:00
Nikita Popov
bc32cce6a2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix recovery of large entities in mb_decode_numericentity()
2020-01-29 11:49:27 +01:00
Nikita Popov
a73df8e5f9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use "%define parse.error verbose"
2020-01-29 11:16:38 +01:00
Dmitry Stogov
8bdce8edab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79092 (Building with clang+lld-9 results in a broken PHP binary)
2020-01-29 12:15:34 +03:00
Máté Kocsis
cffff1fb03
Merge branch 'PHP-7.4'
...
* Fix #78666 mysqli_options generates Warning on var_dump()
2020-01-28 18:51:00 +01:00
Nikita Popov
38d205a5b1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak in mb_str_split
2020-01-28 17:40:07 +01:00
Nikita Popov
7d3a6e7149
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mysqli_get_warnings() with multi queries
2020-01-28 17:17:07 +01:00
Christoph M. Becker
0563dfee1b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79174 : cookie values with spaces fail to round-trip
2020-01-28 15:37:51 +01:00
Nikita Popov
d91b166c3a
Avoid shift UB for large arrays
...
Don't shift into the sign bit.
2020-01-28 15:34:08 +01:00
Nikita Popov
7db3a51884
Only fetch to_encoding once in mb_convert_encoding()
...
Instead of doing it on every conversion. This is both more efficient
and avoids generating multiple warnings.
2020-01-28 15:12:24 +01:00
Nikita Popov
b0d7b126a2
Make BG(syslog_device) per request
...
This is not supposed to be retained across requests. Explicitly
free it at the end of a request, and use the per-request allocator.
2020-01-28 14:44:52 +01:00
Christoph M. Becker
3b9e822e11
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable support for LIBZIP_VERSION
2020-01-28 13:35:20 +01:00
Nikita Popov
648f16c2ec
Fix rel_date leak on DateInterval construction failure
2020-01-28 13:11:49 +01:00
Nikita Popov
2342c06584
Throw an exception if default_dir not set, but required
...
Previously the RETURN_THROWS() assertion failed for this case.
2020-01-28 12:35:35 +01:00
Remi Collet
d91abf76e0
zip: fix lib check
2020-01-28 11:32:42 +01:00
Nikita Popov
c59219de85
Perform map ptr base arithmetic through uintptr_t
...
Adding an offset to the NULL pointer is undefined behavior.
Avoid this by performing arithmetic on uintptr_t instead.
2020-01-28 11:24:04 +01:00
Nikita Popov
521c405108
Don't index NULL pointer when fetching non-existent constant
2020-01-28 11:20:57 +01:00
Remi Collet
ac9a265f01
- bump zip extension version to 1.16.0 - add ZipArchive::setMtimeName and ZipArchive::setMtimeIndex methods
2020-01-28 10:53:49 +01:00
Nikita Popov
3bae1793ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78989
2020-01-28 10:44:37 +01:00
Christoph M. Becker
9a5ea0de69
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #76584 : PharFileInfo::decompress not working
2020-01-28 10:40:00 +01:00
Christoph M. Becker
7e5a8d9faa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79172 : STRUCT_OFFSET() relies on undefined behavior
2020-01-28 09:19:45 +01:00
Tyson Andre
5f92a085cc
Convert ZEND_ECHO operand to string after sccp
...
And filter out echoes of the empty string (e.g. false/null)
Split out of #5097 (on GitHub)
Closes GH-5118
2020-01-27 20:21:24 -05:00
George Peter Banyard
9a76a2a032
Convert some warnings into ValueErrors in the standard file extension
...
Closes GH-5007
2020-01-27 23:20:40 +01:00
Remi Collet
cb1b26ac9c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
- bump zip extension version to 1.15.6 - add ZipArchive::LIBZIP_VERSION - skip bug53885.phpt with libzip 1.6.0 (empty file is no more valid archive)
2020-01-27 16:48:54 +01:00
Nikita Popov
8dd91f52a5
Remove state pointer argument from php_strip_tags
2020-01-27 16:13:36 +01:00
Máté Kocsis
d6a6a60ef9
Merge branch 'PHP-7.4'
2020-01-27 14:04:19 +01:00
Nikita Popov
16f194c75e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78323 : Code 0 is returned on invalid options
2020-01-27 13:32:51 +01:00
Tyson Andre
3f6779879c
[skip ci] Fix typos in NEWS
2020-01-26 16:13:02 -05:00
Markus Staab
9f4d1b9936
Fix typo [ci skip]
2020-01-26 16:08:46 +01:00
Christoph M. Becker
2fe86669c9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add CURLOPT CURLOPT_HTTP09_ALLOWED available since 7.64.0
2020-01-26 14:14:52 +01:00
Anatol Belski
378010a120
Fix bundled PCRE2 compilation on ARM64
2020-01-25 17:44:18 +01:00
Anatol Belski
52d07834df
Upgrade bundled PCRE2 to 10.34
2020-01-25 13:37:37 +01:00
George Peter Banyard
12e903d894
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79080 [ci skip]
2020-01-25 13:31:43 +01:00
George Peter Banyard
300d4df654
Add mention about empty needles for strrch() functions in UPGRADING [ci skip]
2020-01-25 12:34:42 +01:00
George Peter Banyard
ba82e18755
Allow empty needle in mb_strrchr()
2020-01-25 12:22:01 +01:00
George Peter Banyard
986da2a436
Convert warnings to ValueError in mb_strpos function family.
...
Closes GH-5109
2020-01-24 23:59:22 +01:00
Nikita Popov
ebd00c5b65
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79128
2020-01-24 16:20:30 +01:00
wbender
98bfad738a
Fix bug #64865 : Use CONTEXT_DOCUMENT_ROOT for scanning dir tree
...
If CONTEXT_DOCUMENT_ROOT is set use that rather than DOCUMENT_ROOT to
scan up the dir tree looking for .user.ini files.
Closes GH-5051.
2020-01-24 15:33:55 +01:00
Nikita Popov
9b9436d9b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mysqli ssl test for tls1.3
2020-01-24 15:15:36 +01:00
Nikita Popov
dc6ede092f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79011
Fix memory leaks in mysqlnd debug functionality
2020-01-24 14:55:00 +01:00
Christoph M. Becker
c8eceba2c7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make test independent of online XSD schema
Yet another check for php_strip_tags_ex()
2020-01-24 14:20:59 +01:00
Remi Collet
a1d3f999c1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add ZipArchive::CM_LZMA2 constant (since libzip 1.6.0)
2020-01-24 14:06:38 +01:00
Christoph M. Becker
5d65641011
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Yet another check for php_strip_tags_ex()
2020-01-24 13:04:26 +01:00
Nikita Popov
1d0247db7d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use CRLF when generating diffs
2020-01-24 12:28:54 +01:00
Nikita Popov
c2d0a413cc
Also use zend_memnrstr in mbfl_strpos
2020-01-24 11:42:54 +01:00
Nikita Popov
d504ad5717
Base mbfl_strpos on zend_memnstr
...
The same algorithm is also used by zend_memnstr, but it also has
a fast-path for short strings / needles, where a more naive
search performs better.
2020-01-24 11:29:34 +01:00
Nikita Popov
73b31302ed
Extract calculation of offset from pointer
2020-01-24 11:15:58 +01:00
Nikita Popov
9e0e8d5650
Handle mb_str(r)ipos offset consistently as well
2020-01-24 10:54:20 +01:00
Nikita Popov
ce6169832f
Move offset error checking into mbfl_strpos
...
This avoids calculating the full length only in order to validate
the offset, as mbfl_strpos needs to find the offset internally
anyway.
2020-01-24 10:50:02 +01:00
Nikita Popov
0f6d223ddb
Add #defines for mbfl_strpos error conditions
2020-01-24 10:02:41 +01:00
Nikita Popov
e72bf63691
Allow variadic arguments to replace non-variadic ones
...
Any number of arguments can be replaced by a variadic one, so
long as the variadic argument is compatible (in the sense of
contravariance) with the subsumed arguments.
In particular this means that function(...$args) becomes a
near-universal signature: It is compatible with any function
signature that does not accept parameters by-reference.
This also fixes bug #70839 , which describes a special case.
Closes GH-5059.
2020-01-23 15:23:31 +01:00
Nikita Popov
4da7e67d12
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug76348.phpt
2020-01-23 15:09:59 +01:00
Nikita Popov
a2e4392439
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78902
Add unit test for bug #78902
2020-01-23 14:58:15 +01:00
Nikita Popov
60f62359a0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79151
2020-01-23 14:21:21 +01:00
George Peter Banyard
2b5fb76de6
Apply custom format/length modifier removal to spprintf
...
This mimicks the changes made to the custom snprintf implementation
by removing the custom 'v' format and custom 'I' length modifier
from the spprintf implementation.
Closes GH-5108
2020-01-23 13:45:28 +01:00
Christoph M. Becker
28e650abf8
Revert "Merge branch 'PHP-7.4'"
...
This reverts commit 046dcfb531 , due to
segfaults on Travis. This needs to be investigated.
2020-01-23 13:12:16 +01:00
Nikita Popov
9c23a50939
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79155
2020-01-23 12:55:59 +01:00
Christoph M. Becker
a93ce58862
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable UBSan in addition to ASan
2020-01-23 12:00:50 +01:00
Christoph M. Becker
046dcfb531
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make MSVCRT memory leak checking usable for the test suite
2020-01-23 11:48:20 +01:00
Stanislav Malyshev
a698e36aa8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
More checks for php_strip_tags_ex
2020-01-22 23:06:35 -08:00
George Peter Banyard
0719035f9d
Add ValueError for invalid mode in count()
...
Closes GH-5106
2020-01-23 00:14:20 +01:00
Máté Kocsis
4281c2a989
Add UPGRADING notes [skip ci]
2020-01-22 23:24:50 +01:00
Benjamin Eberlei
7a52bf21d3
Add ReflectionProperty::getDefaultValue and ReflectionProperty::hasDefaultValue
2020-01-22 21:24:36 +01:00
Máté Kocsis
476636841f
Fix #78649 Provide ICU RELATIVE_ constants
...
Closes GH-5105
2020-01-22 19:59:40 +01:00
Christoph M. Becker
3987a31130
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't leak encoding_str
2020-01-22 11:17:20 +01:00
Christoph M. Becker
da9c206781
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79154 : mb_convert_encoding() can modify $from_encoding
2020-01-22 10:32:06 +01:00
Christoph M. Becker
4327b113a0
Fix test expectation
...
As of PHP 8.0.0, array to string conversion raises a warning.
2020-01-22 10:21:55 +01:00
Christoph M. Becker
8f4d07bff0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79149 : SEGV in mb_convert_encoding with non-string encodings
2020-01-22 09:45:37 +01:00
Remi Collet
fe8af59b6a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next will be 7.2.28
2020-01-22 09:18:13 +01:00
Tyson Andre
0c696577eb
Use smaller batch size in run-tests.php when appropriate
...
- When valgrind is used, communication overhead is relatively small,
so just use a batch size of 1.
- If this is running a small enough number of tests,
reduce the batch size to give batches to more workers.
(Previously, if there were 90 tests and -j8,
only 3 of 8 workers would get a batch of size 32 or less.
After this change, the batch size is 12 or less)
Closes GH-5098
2020-01-21 20:07:08 -05:00
Tyson Andre
549f55fc3f
Don't start unnecessary processes with run-tests.php -j
...
If there's only 2 files to test, then only start 2 workers instead of N.
If there's only 1 file, then avoid parallelism entirely.
A separate option such as `--force-parallel` could be added
if this turns out to be something developers would want to do
when debugging test failures.
2020-01-21 20:05:06 -05:00
Nikita Popov
85ea04b747
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid some @count() suppressions in run-tests.php
2020-01-21 18:50:14 +01:00
Nikita Popov
06e193ba8d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add sleep in FPM reload test
2020-01-21 17:56:43 +01:00
Nikita Popov
a3e29ba34a
Prefer using declaring class rather than direct parent in error
...
Point to the class that actually declares the property, which is
not necessarily the same as the direct parent class.
2020-01-21 17:19:07 +01:00
Nikita Popov
b0c920f94b
Simplify __call fetching for static methods
...
If we have a __call on a parent, we should always also have a
__call on the child, so there's no need to perform this walk.
2020-01-21 17:04:24 +01:00
Nikita Popov
12fec7a14e
Simplify constant updating for properties
...
Instead of walking up the parent chain, use the scope stored in
the property info. This way we only need to walk one list of
property infos.
2020-01-21 16:29:56 +01:00
Christoph M. Becker
7cb1a706bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79145 : openssl memory leak
2020-01-21 16:21:39 +01:00
Nikita Popov
1f1a7ecaf2
Simplify ReflectionProperty::getDeclaringClass()
2020-01-21 15:21:07 +01:00
George Peter Banyard
13178087c7
Drop the custom 'v' format from snprintf custom implementation.
...
Extensions should instead use the standard 's' format.
Closes GH-5100
2020-01-21 13:18:13 +01:00
Christoph M. Becker
5a6f3de8ac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79146 : cscript can fail to run on some systems
2020-01-21 11:54:33 +01:00
Christoph M. Becker
a9aee3db09
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS wrt. sec fixes
2020-01-21 11:49:17 +01:00
Nikita Popov
26a9045bb6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file clash in bug54446.phpt tests
2020-01-21 11:39:20 +01:00
Nikita Popov
fcdb610a0c
Fix double free in array_reduce
...
return_value needs to be explicitly nulled out in the failure case.
2020-01-21 11:26:24 +01:00
Stanislav Malyshev
5217666a78
fix test: fgetss() no longer exists
2020-01-20 23:31:30 -08:00
Stanislav Malyshev
545f77d313
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix bug #79037 (global buffer-overflow in `mbfl_filt_conv_big5_wchar`)
Fix #79099 : OOB read in php_strip_tags_ex
Fix #79091 : heap use-after-free in session_create_id()
2020-01-20 22:47:28 -08:00
George Peter Banyard
aaa1f90e3f
Drop the custom I length modifier from snprintf custom implementation.
...
Extensions should rather use the ZEND_LONG_FMT, ZEND_ULONG_FMT and
ZEND_XLONG_FMT macros defined in php-src/Zend/zend_long.h
Closes GH-5089
2020-01-20 23:03:10 +01:00
Tyson Andre
691880b22c
Speed up unserializing object properties
...
Hash table lookups are slow.
Don't do one a second time to update the property.
The call to zend_hash_update_ind goes back to 8b0deb8cd2
Background: Properties are IS_INDIRECT when they're a declared property,
and point to properties_table.
See https://nikic.github.io/2015/06/19/Internal-value-representation-in-PHP-7-part-2.html#objects-in-php-7
2020-01-20 09:54:04 -05:00
Nikita Popov
0fbdc5a378
Remove unnecessary result variable
...
Instead directly use return_value. Hopefully this also works
around the "may be uninitialized" warning...
2020-01-20 11:08:51 +01:00
Nikita Popov
6811222422
Eliminate uses of ZVAL_ZVAL and friends
...
Instead add RETURN_COPY(_VALUE) macros will the expected behavior.
RETURN_ZVAL doesn't make any sense since PHP 7, but has stuck
around, probably because the alternative was to write directly to
the return_value variable.
2020-01-20 10:34:17 +01:00
Nikita Popov
5947437d47
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79112 : IMAP can't find OpenSSL during configure
2020-01-20 09:59:40 +01:00
Nikita Popov
6ada49a469
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Increase timeout in mysqli_reap_async_query test
2020-01-20 09:54:38 +01:00
Xinchen Hui
ce5d722a6d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Let's make this safer from maliciously crafted filename
2020-01-20 12:35:08 +08:00
Xinchen Hui
5aa12d2e32
Merge branch 'PHP-7.4'
...
* PHP-7.4:
minor cleanup
2020-01-20 12:29:23 +08:00
Xinchen Hui
31dd635eb3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79114 (Eval class during preload causes class to be only half available)
2020-01-20 12:25:10 +08:00
Máté Kocsis
99db00b1f2
Fix #78880 Another round
2020-01-19 18:28:43 +01:00
Christoph M. Becker
7426e3b6a1
Bump required libcurl version to 7.29.0
...
libcurl 7.29.0 has been released almost eight years ago, so this
version is supposed to be available practically everywhere. This bump
also allows us to get rid of quite some conditional code and tests
catering to very old libcurl versions.
2020-01-19 14:10:46 +01:00
Tyson Andre
3c72105edb
Remove leftover ZEND_CAST code for (unset) cast.
...
Followup for d74d3922ce
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 2a286ad599 - I don't know how creating an stdClass would throw.
(numeric keys, references, etc. don't cause it to throw)
Closes GH-5042
2020-01-18 11:06:19 -05:00
Máté Kocsis
d1764ca330
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.
2020-01-17 14:52:46 +01:00
Nikita Popov
117b18d22d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79115
2020-01-17 11:38:18 +01:00
Nikita Popov
9ec1ee5976
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.
2020-01-17 10:05:06 +01:00
Nikita Popov
ae706e51e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update php.ini files to add missing FTP extension
2020-01-17 09:51:31 +01:00
Nikita Popov
75aa5bfa9e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #71876
2020-01-17 09:48:50 +01:00
Nikita Popov
43719022ea
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.
2020-01-17 09:41:27 +01:00
Nikita Popov
bd1977282c
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.
2020-01-17 09:37:54 +01:00
Máté Kocsis
afdaa91170
Fix #78880 : Final spelling fixes
2020-01-16 19:14:31 +01:00
Nikita Popov
1fa6f03265
Fix reflection leak if type inside type list is resolved
2020-01-16 15:30:24 +01:00
Christoph M. Becker
1e62e627fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable optimizations for ASan instrumented builds
2020-01-16 13:58:28 +01:00
Máté Kocsis
c3cf01b553
Fix #78880 : Yet another batch of spelling errors
2020-01-16 12:04:00 +01:00
Máté Kocsis
0b4778c377
Fix #78880 : Another bunch of spelling errors
2020-01-16 09:46:47 +01:00
Christoph M. Becker
9d7e03c325
Remove useless skip check
...
As of PHP 5.4.0, `detect_unicode` is always available, so this check
cannot fail.
2020-01-15 18:38:15 +01:00
Christoph M. Becker
5d3be966f9
Use proper printf() specifiers
2020-01-15 18:18:36 +01:00
George Peter Banyard
9118a96fb0
Remove va_copy from zend_portability as it's always available since C99
2020-01-14 22:56:03 +01:00
Christoph M. Becker
f6fbe13717
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.
2020-01-14 18:31:25 +01:00
Christoph M. Becker
03bd4333f6
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.
2020-01-14 18:25:27 +01:00
Christoph M. Becker
127d6f3f39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79096 : FFI Struct Segfault
2020-01-14 16:47:24 +01:00
Dmitry Stogov
77bf144d52
Inline hot parts of bitwise instructions into hybrid VM
2020-01-14 13:47:10 +03:00
Christoph M. Becker
7232779fca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79106 : PDO may fetch wrong column indexes with PDO::FETCH_BOTH
2020-01-13 18:49:38 +01:00
Christoph M. Becker
ed78c6dbae
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #79106 : PDO may fetch wrong column indexes with PDO::FETCH_BOTH
2020-01-13 18:48:55 +01:00
Christoph M. Becker
30ce242435
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.
2020-01-13 18:47:54 +01:00
Dmitry Stogov
8ee04946f0
typo
2020-01-13 16:25:42 +03:00
Christoph M. Becker
8ea190ba95
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79084 : mysqlnd may fetch wrong column indexes with MYSQLI_BOTH
2020-01-13 13:24:12 +01:00
Nikita Popov
dc02e68f77
Try to fix ZTS build
2020-01-13 13:12:55 +01:00
Nikita Popov
d2110e9880
Use helper in one more place
2020-01-13 12:44:16 +01:00
Nikita Popov
862a4f3a5e
Fix build
2020-01-13 12:42:51 +01:00
Dmitry Stogov
27815959e1
Improve access to zend_map_ptr data
2020-01-13 14:27:35 +03:00
Nikita Popov
1caf0951a0
Handle one more case I missed
2020-01-13 12:06:23 +01:00
Nikita Popov
5d869df753
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.
2020-01-13 11:51:09 +01:00
Nikita Popov
2a3e37a496
Don't use yystrlen()
...
This is unnecessary and not available when GLR is used.
2020-01-13 11:23:30 +01:00
Islam Israfilov
f553e676ec
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.
2020-01-13 10:18:23 +01:00
Nikita Popov
4388add2c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test
2020-01-13 10:10:16 +01:00
Christoph M. Becker
c1519321e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bring back test case support for older MySQL versions
2020-01-11 11:22:30 +01:00
George Peter Banyard
1589266f85
Remove dead code and unused DEFINEs
...
Closes GH-5073
2020-01-10 22:24:15 +01:00
Christoph M. Becker
7c76126841
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test cases which fail on Windows debug builds
2020-01-10 20:02:16 +01:00
Nikita Popov
ddc5553ecd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unnecessary whitespace sensitivtiy from some tests
2020-01-10 17:38:39 +01:00
Christoph M. Becker
f91dbac9ae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test for Windows ZTS builds
2020-01-11 06:17:37 +14:00
Nikita Popov
7ce531f2c2
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).
2020-01-10 13:39:56 +01:00
Nikita Popov
0a2f6c5527
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.
2020-01-10 11:48:10 +01:00
George Peter Banyard
b79efec994
Remove unused delimiter parameter in php_fgetcsv_lookup_trailing_spaces subroutine.
2020-01-10 03:38:16 +01:00
Christoph M. Becker
f6c9319bec
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Silence potential taskkill error messages
2020-01-09 19:03:43 +01:00
Nikita Popov
55618ff118
Convert infallible mysqli checks to asserts
2020-01-09 18:56:30 +01:00
Nikita Popov
307dd465c1
Remove unused MYSQLI_STATUS_CLEARED
2020-01-09 18:56:30 +01:00
Christoph M. Becker
c13077a895
Fix test
...
The typo in the echoed string had been fixed in master; fix the
expectation as well.
2020-01-09 18:40:58 +01:00
Christoph M. Becker
b2aac6cc3a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix useless tests
2020-01-09 17:44:41 +01:00
Christoph M. Becker
f1e00033e6
Allows further tests to run on Windows
2020-01-09 12:04:29 +01:00
Christoph M. Becker
718fc4cefd
Use IS_WINDOWS
2020-01-09 12:04:28 +01:00
Christoph M. Becker
10c420f84a
Replace fakemail with minimal PHP script
2020-01-09 12:04:28 +01:00
Christoph M. Becker
64633044c5
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.
2020-01-09 12:04:28 +01:00
Nikita Popov
0a9bdd6e7b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Increase select timeout in FPM tester
2020-01-09 10:20:28 +01:00
Christoph M. Becker
aa5a24d6fc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79086 : Bump version not applied
2020-01-09 09:26:58 +01:00
George Peter Banyard
b670823749
Convert some warnings to Errors in BZip2
...
Closes GH-4984
2020-01-09 00:58:12 +01:00
George Peter Banyard
928afd8fb7
Convert some warnings to Error in zlib extension
...
Closes GH-4985
2020-01-09 00:56:58 +01:00
George Peter Banyard
66659d6cf6
[ci skip] Update UPGRADING
2020-01-09 00:38:47 +01:00
Christoph M. Becker
5836c7063b
Avoid superfluous assignments
...
These values are already set via the initializers.
2020-01-09 00:17:14 +01:00
Christoph M. Becker
3c6a230b71
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79078 : Hypothetical use-after-free in curl_multi_add_handle()
2020-01-08 18:43:35 +01:00
Christoph M. Becker
21426793b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump version
2020-01-08 18:27:53 +01:00
Christoph M. Becker
8f185d3586
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extract function
2020-01-08 16:56:28 +01:00
Nikita Popov
d5f26de63d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Display a message if select in FPM test timeouts"
2020-01-08 16:32:00 +01:00
Nikita Popov
c669a1a4da
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Display a message if select in FPM test timeouts
2020-01-08 15:57:21 +01:00
Nikita Popov
d0d1654a34
Fix #49555 : Improve "function must be a string" error message
...
Be more specific for the individual cases and provide relevant
type information.
2020-01-08 14:32:11 +01:00
Nikita Popov
33476ec301
Refer to method rather than function name in error message
2020-01-08 14:26:27 +01:00
Nikita Popov
ae5d7604f6
Fix #65274 : Add class name to undef class constant error
2020-01-08 14:18:14 +01:00
George Peter Banyard
4cac97bfb9
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
2020-01-07 22:55:43 +01:00
George Peter Banyard
483efc7e50
Allow empty needles in mb_strpos and mb_strstr function family.
...
MBstring analogous implementation to 6d578482a9
Closes GH-4977
2020-01-07 22:53:35 +01:00
George Peter Banyard
bfe3f934a3
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
2020-01-07 21:54:42 +01:00
Christoph M. Becker
b8609e2fa7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make test more resilient
2020-01-07 15:29:51 +01:00
Nikita Popov
1e4920c119
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.
2020-01-07 14:55:52 +01:00
Christoph M. Becker
da48d25ea2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Increase sleep() time in test case
2020-01-07 14:27:34 +01:00
Christoph M. Becker
3e075cadfb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump version
2020-01-07 11:13:24 +01:00
Nikita Popov
9b6c0bdcd6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove support for preloading on Windows
2020-01-06 22:42:31 +01:00
Nikita Popov
b22daa3a06
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Throw Error when referencing uninit typed prop in __sleep
2020-01-06 18:47:44 +01:00
Christoph M. Becker
d9caf3561b
[ci skip] Merge branch 'PHP-7.4'
...
Empty merge.
2020-01-06 15:34:41 +01:00
Christoph M. Becker
d7833fd974
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #54298 : Using empty additional_headers adding extraneous CRLF
2020-01-06 14:51:14 +01:00
Nikita Popov
29df9d13da
Rename skeleton stub file
...
Add the .php suffix
2020-01-06 14:43:29 +01:00
Christoph M. Becker
be0b94c220
Fix hypothetical segfault in gdTransformAffineCopy()
...
This has been reported to upstream[1], but since ext/gd never calls
`gdTransformAffineCopy()` for a palette image, it is not a bug for PHP.
Therefore we apply the fix to master only.
[1] <https://github.com/libgd/libgd/issues/586 >
2020-01-06 13:25:11 +01:00
Nikita Popov
0b4da7e6da
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't link against openssl 1.1 in curl
2020-01-06 10:43:05 +01:00
Christoph M. Becker
5c51a482c9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79068 : gdTransformAffineCopy() changes interpolation method
2020-01-06 10:39:00 +01:00
Nikita Popov
730f4f25db
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #79063 : Curl openssl does not respect PKG_CONFIG_PATH
Clean up curl openssl check
2020-01-06 10:31:34 +01:00
Christoph M. Becker
bc04d5e9fc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79067 : gdTransformAffineCopy() may use unitialized values
2020-01-06 09:38:19 +01:00
Christoph M. Becker
d83f89f076
Remove useless else branch
...
Passing `NULL` as `gdTransformAffineGetImage()`'s `src_area` is fine,
but in this case there's no need to calculate the `rect`, and since
`pRect` has already been initialized to `NULL`, we can remove the whole
else branch.
2020-01-06 08:54:57 +01:00
Máté Kocsis
019e8d438c
Throw exception for unconstructed intl objects
...
Closes GH-5052
2020-01-05 23:55:14 +01:00
Christoph M. Becker
ade217d05c
Remove duplicate test cases
...
These had originally used other exit codes as mail_basic5.phpt, but
that was changed later with commit d1b12c9[1].
[1] <http://git.php.net/?p=php-src.git;a=commit;h=d1b12c9a3031841302722d6f6706e4598a639d7a >
2020-01-05 20:08:39 +01:00
Gabriel Caruso
fc99e89baf
Fix slowest tests
2020-01-05 18:30:51 +01:00
Matteo Beccati
0f89d407fc
Fix build if SQLITE_RECURSIVE is not supported
2020-01-04 10:27:43 +01:00
Tyson Andre
37a7046d85
Merge branch 'identical-handler' into HEAD
2020-01-03 19:04:20 -05:00
Máté Kocsis
1abea33b1e
Fix usage of RETURN_THROWS() in LDAP extension
2020-01-03 22:40:16 +01:00
Máté Kocsis
aadd3aaed9
Use RETURN_THROWS() in various places
2020-01-03 21:10:24 +01:00
Máté Kocsis
bbcfa66e06
Use RETURN_THROWS() after zend_fetch_resource*()
2020-01-03 19:20:56 +01:00
Máté Kocsis
e08ce4c13d
Add stubs for various intl functions
...
Closes GH-4819
- Add stubs for idn functions
- Add stubs for grapheme functions
- Add stubs for Spoofchecker
- Add stubs for Normalizer
- Add stubs for ResourceBundle
- Fix arginfos
- Add support for union return types
- Fix arginfo for resourcebundle_create()
2020-01-03 18:54:57 +01:00
Christoph M. Becker
bb3946a5e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78808 : [LMDB] MDB_MAP_FULL: Environment mapsize limit reached
2020-01-03 18:51:25 +01:00
Christoph M. Becker
d4927668bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78538 : shmop memory leak
2020-01-03 18:13:44 +01:00
Máté Kocsis
7b4a4d2ace
Use RETURN_THROWS() after try_convert_to_string()
2020-01-03 17:04:06 +01:00
mike
1658b5babc
Adding DateTime(Immutable)::createFromInterface()
...
These are like
DateTime::createFromImmutable()
DateTimeImmutable::createFromMutable()
but accept any DateTimeInterface instead.
Closes GH-5016.
2020-01-03 16:55:12 +01:00
Nikita Popov
fb8ffda690
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Slightly increase tolerance in time_sleep_until() test
2020-01-03 16:49:42 +01:00
Christoph M. Becker
a2e98a6a01
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try to fix intermittently failing test case
2020-01-03 16:45:23 +01:00
Christoph M. Becker
1400f4ac12
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79015 : undefined-behavior in php_date.c
2020-01-03 14:32:56 +01:00
Christoph M. Becker
54ec44a862
Don't enable sanitizer by default for Windows snapshot builds
...
Snapshot builds are release builds, and therefore enabling sanitizers
is undesireable.
2020-01-03 14:17:08 +01:00
Máté Kocsis
8f4f1dea34
Convert zend_parse_parameters_none() to fast ZPP
...
I've done the conversion in those extensions where fast ZPP is predominant.
2020-01-03 13:23:37 +01:00
Máté Kocsis
b7d2882fee
Use zend_parse_parameters_none() instead of zend_parse_parameters_none_throw()
2020-01-03 13:22:39 +01:00
Nikita Popov
f23378d84a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unnecessary strncpy in zip
2020-01-03 12:03:31 +01:00
Nikita Popov
0e6cff70a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #73816
2020-01-03 11:27:27 +01:00
Nikita Popov
7ba18b0b39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #71876
2020-01-03 11:16:25 +01:00
Nikita Popov
36c8e57495
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79056
2020-01-03 11:09:06 +01:00
Nikita Popov
d8c9902567
Implement WeakMap
...
RFC: https://wiki.php.net/rfc/weak_maps
2020-01-03 10:43:24 +01:00
Máté Kocsis
763788afea
Use RETURN_THROWS() after zend_throw_exception() in reflection extension
2020-01-03 10:18:34 +01:00
Máté Kocsis
1b93cfee0c
Use RETURN_THROWS() after zend_parse_method_parameters()
2020-01-02 23:01:37 +01:00
Christoph M. Becker
d3b911952b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test case for bug #78883
2020-01-02 19:28:45 +01:00
Nikita Popov
1f48b15150
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79055
Extract functions for file cache type serialization
2020-01-02 15:55:01 +01:00
Nikita Popov
3bc4159a19
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file cache run_time_cache unserialization
Update ZCSG(map_ptr_last) only if for_shm
2020-01-02 15:01:56 +01:00
Nikita Popov
0d35f8e3f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Populate hashtable of __sleep() properties
Deref names returned by __sleep()
Extract php_var_serialize_nested_data() function
2020-01-02 11:14:16 +01:00
Máté Kocsis
01a50778d1
Use RETURN_THROWS() after zend_throw_exception() in most of the extensions
2020-01-02 10:56:18 +01:00
Nikita Popov
a6486088f8
Switch hash() function to use fastzpp
...
For short inputs ZPP can be a large fraction of the hash()
execution time.
2020-01-02 10:06:16 +01:00
Nikita Popov
7c787e56b0
Switch php_hash_fetch_ops() to use zend_string
...
This has two advantages: If the string is already lowercase, we
do not need to copy it, and it will hopefully match the interned
string name of the hash, making the comparison more efficient.
2020-01-02 10:05:12 +01:00
Tyson Andre
a9c04aee67
Always delete tempfile created by ftruncate test.
...
The ftruncate() test will fill up the disk when the disk has less than
2GB of space left, on some systems.
I think it expands the file to less than 2GB, then returns an error code,
and the file remains at the larger size.
Because the disk is full, the `--CLEAN--` script can't be saved to
`ftruncate_bug76422.clean.php` to be executed, and the cleanup can't be run.
Subsequent tests also fail to run.
Closes GH-5043
2020-01-01 11:20:32 -05:00
Máté Kocsis
349a286461
Use RETURN_THROWS() after zend_throw_error()
2020-01-01 16:42:30 +01:00
Máté Kocsis
9099dbd961
Use RETURN_THROWS() after zend_type_error()
2020-01-01 14:23:21 +01:00
Máté Kocsis
12ce73a5bb
Use RETURN_THROWS() after zend_value_error()
2019-12-31 16:58:15 +01:00
Máté Kocsis
817605917b
Use RETURN_THROWS() during ZPP in the remaining extensions
...
In reflection, sodium, and SPL
2019-12-31 16:33:02 +01:00
Christoph M. Becker
062744fbdf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Revert "Add test case for bug #78883 "
2019-12-31 14:27:45 +01:00
Christoph M. Becker
f7eb8141c4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test case for bug #78883
2019-12-31 13:09:57 +01:00
Christoph M. Becker
d694edaee4
Fix erroneous change
2019-12-31 12:24:01 +01:00
Christoph M. Becker
e0b288020b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove superfluous compiler option
2019-12-31 12:00:48 +01:00
Máté Kocsis
345703724c
Use RETURN_THROWS() during ZPP in most of the extensions
...
Except for some bigger ones: reflection, sodium, spl
2019-12-31 11:46:11 +01:00
Máté Kocsis
d9ac1ca8de
Use ZEND_THROWS() during ZPP in the GD, gettext, GMP, and hash extensions
2019-12-31 00:21:38 +01:00
Máté Kocsis
382a038e05
Use ZEND_THROWS() during ZPP in enchant, exif, fileinfo, filter, and FTP extensions
2019-12-31 00:21:37 +01:00
Máté Kocsis
2f7309b1e9
Use RETURN_THROWS() during ZPP in the date, dba and dom extensions
2019-12-31 00:21:37 +01:00
Máté Kocsis
76c45f35f5
Use RETURN_THROWS() during ZPP in bz2, calendar, com_dotnet extensions
2019-12-31 00:21:37 +01:00
Nikita Popov
3262c28d5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Also propagate include exceptions in opcache
Make url_stats in resolve_path quiet
2019-12-30 23:22:39 +01:00
Christoph M. Becker
1ff6911d6a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid undefined behavior
2019-12-30 23:18:34 +01:00
Nikita Popov
d5c886ab7d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly propagate url_stat exceptions during include
2019-12-30 22:57:07 +01:00
Christoph M. Becker
48b44612d4
Fix typo
2019-12-30 18:32:52 +01:00
Christoph M. Becker
55fd97c576
Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters, 1 given
...
Although the `mysqli` parameter is unused, it had been accepted so far,
and the documentation even claims that parameter would be required. To
not break BC, we allow it again.
2019-12-30 17:40:16 +01:00
Máté Kocsis
e1b57310b1
Use RETURN_THROWS() during ZPP in main, sapi, win32, and Zend
2019-12-30 17:38:10 +01:00
Máté Kocsis
31cf9a7ea9
Use RETURN_THROWS() when an exception is thrown
...
Closes GH-5036
2019-12-30 17:38:10 +01:00
Nikita Popov
d21ad4d955
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79046
2019-12-30 17:24:16 +01:00
Christoph M. Becker
1ab9d626d1
Fix typo
2019-12-30 17:21:50 +01:00
Máté Kocsis
e34a1f9289
Convert zend_parse_parameters_none() to fast ZPP in standard lib
...
Closes GH-5037
2019-12-30 15:28:37 +01:00
Christoph M. Becker
e57b2b9465
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79040 : Warning Opcode handlers are unusable due to ASLR
2019-12-30 15:18:25 +01:00
Wouter Wijsman
f13d0a72d5
Add FILTER_VALIDATE_BOOL as alias for FILTER_VALIDATE_BOOLEAN
...
Both filters are equivalent, but FILTER_VALIDATE_BOOL uses our
canonical name for the type (the only one permitted in type
declarations for example), so the new name is preferred long
term.
The old name may be deprecated in the future, but no specific
timeline is planned.
2019-12-30 14:18:03 +01:00
Nikita Popov
6c6d36bb94
Fix SSA construction for ADD_ARRAY_ELEMENT in RC_INFERENCE mode
...
This was broken in cc29cbe80c .
2019-12-30 13:29:32 +01:00
Nikita Popov
32fbd2489f
Regenerate stubs
...
Looks like these GD changes got lost along the way...
2019-12-30 12:27:31 +01:00
Nikita Popov
d8bd113b51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #79031
Revert "Increase serialize_lock while decoding session"
2019-12-30 11:31:56 +01:00
Christoph M. Becker
e1559b51cd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing skipif clause
2019-12-28 11:02:03 +01:00
Christoph M. Becker
86675dd3f9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79033 : Curl timeout error with specific url and post
2019-12-28 10:49:56 +01:00
Nikita Popov
184f118d3f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle empty password fast path in caching_sha2_password
Handle error response during caching_sha2_password auth
Add support for caching_sha2_password in change user authentication
Fix unix socket check during caching_sha2_password
Support auth switch request during caching sha2 auth
2019-12-27 17:31:27 +01:00
Nikita Popov
7e130df249
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use PASSWORD() function in test
Specify explicit row order in PDO MySQL test
Skip bug77956.phpt if local_infile disabled on server
Don't check TIMESTAMP NOT NULL in fetch_field_flags test
Don't test the RENAME DATABASE query
Make GeomFromText tests compatible with MySQL 8
2019-12-27 17:26:42 +01:00
Christoph M. Becker
3fafa19777
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test for clang builds
2019-12-27 15:11:51 +01:00
Christoph M. Becker
388c582ee9
Clarify usage of max_fd in php_poll2() on Windows
...
Actually, `max_fd` is not used on Windows, since `PHP_SAFE_MAX_FD` and
`select` ignore it; so it makes no sense to calculate it in the loop.
Even worse, since `php_socket_t` is unsigned on Windows, it will never
be modified during the loop, because `SOCK_ERR` is already the largest
representable value of that type.
Therefore we skip the loop on Windows, and add a clarifying comment.
2019-12-27 13:41:29 +01:00
Dmitry Stogov
7b69855bd0
Fixed type_info for new array element (it may be only NULL)
2019-12-26 16:32:45 +03:00
Dmitry Stogov
cc29cbe80c
cleanup
2019-12-26 11:54:05 +03:00
Christoph M. Becker
cdc2c7427e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79029 (Use After Free's in XMLReader / XMLWriter).
2019-12-25 12:36:25 +01:00
Christoph M. Becker
66b626f39c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case
2019-12-25 12:09:37 +01:00
Xinchen Hui
ce4d80a85a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79029 (Use After Free's in XMLReader / XMLWriter).
2019-12-25 16:29:30 +08:00
Xinchen Hui
66a591aebe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fixed bug #79029 (Use After Free's in XMLReader / XMLWriter)"
2019-12-25 15:28:13 +08:00
Xinchen Hui
24ccbb0057
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79029 (Use After Free's in XMLReader / XMLWriter)
Partial fix for bug #79029
Conflicts:
ext/xmlwriter/php_xmlwriter.c
2019-12-25 13:18:23 +08:00
Dmitry Stogov
e874811221
Build call graph before type inference
2019-12-24 16:15:24 +03:00
Xinchen Hui
b418f335d4
Implemented FR #78638 (__PHP_Incomplete_Class should be final)
...
This should be minor and won't impact anyone
2019-12-24 17:09:44 +08:00
Xinchen Hui
3f3c1ad848
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Similar problem (#79022 ) also exists in Interfaces
Fixed bug #79022 (class_exists returns True for classes that are not ready to be used)
2019-12-24 14:21:52 +08:00
Tyson Andre
dea62d4b0c
Speed up ZEND_IS_IDENTICAL when it can't throw
...
Add a specialized opcode handler to use for `===`/`!==` when:
1. At least one side is a $cv, and the other is a $cv or CONST
(avoids the need to free operands)
2. Neither operand can be undefined or a reference
(avoids the need for error handling and dereferencing)
```
// Elapsed time decreased from 0.275 seconds to 0.243 seconds in combination
// with PR #4982
function count_same(array $values) {
$same = 0;
foreach ($values as $x) {
foreach ($values as $y) {
if ($y === $x) {
$same++;
}
}
}
return $same;
}
$values = range(0, 5000);
$values[] = new stdClass();
$values[] = null;
$values[] = 3;
$start = microtime(true);
$total = count_same($values);
```
2019-12-23 15:42:42 -05:00
Dmitry Stogov
1e53769d82
Set opcode handler
2019-12-23 14:14:47 +03:00
Christoph M. Becker
dabc28d182
Fix #78880 : Spelling error report
...
We fix the most often occuring typos according to a recent codespell
report[1] in tests, code comments and documentation.
[1] <https://fossies.org/linux/test/php-src-master-f8f48ce.191129.tar.gz/codespell.html >.
2019-12-21 11:58:00 +01:00
Máté Kocsis
eff56f83af
Promote warning to exception for proc_open() when null byte is encountered
...
GH-5004
2019-12-20 17:54:12 +01:00
Nikita Popov
1d6325fb01
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak when generator closed during yield in finally
2019-12-20 17:46:43 +01:00
Máté Kocsis
d9eb97d745
Remove unnecessary FN type information from OPCache
...
GH-5029
2019-12-20 16:45:57 +01:00
Máté Kocsis
f3d5a5a9d3
Promote warnings to exceptions in string search related functions
...
GH-5004
2019-12-20 16:43:40 +01:00
Máté Kocsis
17598d503d
Promote warnings to exceptions in proc_open() function
...
GH-5004
2019-12-20 16:43:40 +01:00
Máté Kocsis
a2d83a6cb5
Promote warrnings to exceptions in chgrp() function
...
GH-5004
2019-12-20 16:43:40 +01:00
Máté Kocsis
9585964dd7
Promote warning to exception in dns_check_record() function
...
GH-5004
2019-12-20 16:43:40 +01:00
Christoph M. Becker
cfefba6ddd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #79008 : General performance regression with PHP 7.4 on Windows
2019-12-20 16:29:39 +01:00
GITSRC and Christoph M. Becker
269f44f682
Simplify constant expression
...
Co-Authored-By: Christoph M. Becker <cmbecker69@gmx.de >
2019-12-20 15:41:03 +01:00
Nikita Popov
ed0b788ce7
Fix merge mistake
2019-12-20 15:13:40 +01:00
Máté Kocsis
0e8070778e
Make get_defined_vars() always return an array
...
GH-5025
2019-12-20 14:31:57 +01:00
Máté Kocsis
f52f471a5e
Fix F1 type information in OPCache
...
Closes GH-5025
2019-12-20 14:31:30 +01:00
Máté Kocsis
d59bc80782
Fix smaller issues with stubs
...
GH-5025
2019-12-20 14:31:07 +01:00
Nikita Popov
ca6c54274c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try to make proc_open_bug69900.phpt more robust
2019-12-20 13:52:08 +01:00
Nikita Popov
2bc0a6e97f
Fix string offset signed int UB in jit as well
2019-12-20 12:11:07 +01:00
Nikita Popov
ed372541da
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78982 : pdo_pgsql returns dead persistent connection
2019-12-20 12:06:24 +01:00
Máté Kocsis
bf645d6dc1
Remove unnecessary F0 type information from OPCache
...
Closes GH-5024
2019-12-20 12:03:08 +01:00
Máté Kocsis
297b1f8335
Fix return type of strval()
...
GH-5024
2019-12-20 12:02:35 +01:00
Máté Kocsis
d7b2082352
Add stubs for standard library
...
Closes GH-5017
2019-12-20 12:01:35 +01:00
Máté Kocsis
7bfeef602a
Promote warnings to exceptions in stream-related functions
...
GH-5017
2019-12-20 12:01:02 +01:00
Nikita Popov
566b356eca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78980 : pgsqlGetNotify() overlooks dead connection
2019-12-20 11:45:50 +01:00
Nikita Popov
5902b35f85
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79000
2019-12-20 11:38:01 +01:00
BohwaZ
3958592487
Add setAuthorizer method to SQLite3
...
This adds the possibility to define a userland callback that will be
used to authorize or not an action on the database.
2019-12-20 11:33:23 +01:00
Nikita Popov
5f2f450554
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #74170 : locale information change after mime_content_type
2019-12-20 11:24:14 +01:00
Nikita Popov
d011f60eb1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78402 : pcntl_signal() misleading error message
2019-12-20 11:03:15 +01:00
Nikita Popov
0d8ebbaa73
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix early free of assign_obj op_data
2019-12-20 10:35:50 +01:00
Máté Kocsis
2ab123b84e
Convert string|array union parameter types
...
Closes GH-4995
2019-12-20 10:15:52 +01:00
Dmitry Stogov
621842e3f5
RECV opcode optimization
2019-12-20 06:46:25 +03:00
Máté Kocsis
bc231f017b
Add upgrading note about implode() [ci skip]
2019-12-19 22:58:26 +01:00
Dmitry Stogov
a31b5eca68
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78999 (Cycle leak when using function result as temporary)
2019-12-19 23:19:31 +03:00
Christoph M. Becker
77c58fc53c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78983 : pdo_pgsql config.w32 cannot find libpq-fe.h
2019-12-19 13:21:52 +01:00
Nikita Popov
557a211f46
Adjust test for notice->warning change
2019-12-19 12:03:09 +01:00
Nikita Popov
e15915d21c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid signed integer overflow in string offset check
2019-12-19 11:48:20 +01:00
Nikita Popov
89d1e6b7d0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add destructor annotations in ini parser
2019-12-19 10:43:23 +01:00
Nikita Popov
2a76384b87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak in assign_ref with function
2019-12-18 17:18:46 +01:00
Nikita Popov
655d5c8383
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78776
2019-12-18 15:56:10 +01:00
Remi Collet
78fd95ced8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix release date
fix release date
fix release date
2019-12-18 14:18:16 +01:00
Nikita Popov
aadd5e69e0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78986
2019-12-18 11:41:11 +01:00
Fabien Villepinte
d02c99444c
Merge branch 'PHP-7.4'
2019-12-18 11:10:10 +01:00
Nikita Popov
1f5f4736d9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rethrow generator exception even without active stack frame
2019-12-18 11:04:51 +01:00
Nikita Popov
48d5100738
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix use-after-free when trying to write to closure property
2019-12-18 10:24:41 +01:00
Nikita Popov
e0a31cee32
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix freeing of dynamic call name
2019-12-18 10:11:40 +01:00
Nikita Popov
8eabaf7efc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix const/cv freeing on failed reference assignment
2019-12-18 09:54:18 +01:00
Christoph M. Becker
2a856049d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
More updates to CONTRIBUTING.md
2019-12-17 20:01:44 +01:00
Christoph M. Becker
26e1f88011
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update CONTRIBUTING.md
2019-12-17 19:58:46 +01:00
Christoph M. Becker
32df9aeda5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78976 : SplFileObject::fputcsv returns -1 on failure
2019-12-17 17:53:44 +01:00
Nikita Popov
7194825c86
Fix leak of dynamic property name in address helper
2019-12-17 16:59:35 +01:00
Nikita Popov
83ff4f5986
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Free buffer in php_verror even if it is empty
2019-12-17 16:47:49 +01:00
Nikita Popov
ed55a61b8b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix resetting of internal_encoding and friends
2019-12-17 16:28:56 +01:00
Dmitry Stogov
b7e1eecd54
Avoid generation of "jmp" to next instruction
2019-12-17 15:42:02 +03:00
Nikita Popov
f0d1a27951
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid float to int cast UB in exif
2019-12-17 13:26:32 +01:00
Dmitry Stogov
97bba4ffd6
Make "exception_handler_undef" stub to check EG(opline_before_exception) and undefine corresponnding result variable, if necessary.
...
This fixes few invalid "exception_handler_undef" usages.
2019-12-17 14:09:26 +03:00
Christoph M. Becker
4ce1fdacb5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update/fix NEWS [ci skip]
2019-12-17 10:05:40 +01:00
Christoph M. Becker
9c0b18c16e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
[ci skip] Update NEWS
Fix test
2019-12-17 10:03:13 +01:00
Dmitry Stogov
b1f08079b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Property names of internal classes from temporary extensins, loaded by dl(), may be emalloc-ed strings.
2019-12-17 10:13:13 +03:00
Dmitry Stogov
6895eb4db5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed memory leak
2019-12-17 10:09:43 +03:00
Dmitry Stogov
c8dbbd74e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed memory leaks
2019-12-17 09:58:56 +03:00
Nikita Popov
7d07f19eee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set opcache.optimization_level=0 in test
2019-12-16 20:23:53 +01:00
Stanislav Malyshev
90b1362629
Fix tests
2019-12-16 10:59:36 -08:00
Stanislav Malyshev
6556916759
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Test fixes
2019-12-16 10:31:40 -08:00
Stanislav Malyshev
0dfff646a2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test
Fix bug #78793
Fix build - no model field anymore
Fixed bug #78910
Fix #78878 : Buffer underflow in bc_shift_addsub
Fix test
Fix #78862 : link() silently truncates after a null byte on Windows
Fix #78863 : DirectoryIterator class silently truncates after a null byte
Fix #78943 : mail() may release string with refcount==1 twice
2019-12-16 10:07:15 -08:00
Nikita Popov
69eaddabf8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove DateTime class registration test
2019-12-16 18:57:47 +01:00
Nikita Popov
98527d7d4c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78973
2019-12-16 18:53:32 +01:00
Dmitry Stogov
546392b346
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78961 (erroneous optimization of re-assigned $GLOBALS)
2019-12-16 12:25:40 +03:00
Nikita Popov
7df8f952ae
Further reduce parse depth limit in mbstring fuzzer
...
Depth limit of 1024 still causes optimize_node stack overflows
when running under asan.
2019-12-14 22:43:15 +01:00
George Peter Banyard
fdf45debdf
Remove deprecated behaviour of passing encoding as third parameter in mb_strrpos()
...
Merged GH-5011
2019-12-13 22:03:27 +01:00
George Peter Banyard
0a173abc84
Revert "Remove dead code in libmbfl, memory device"
...
Stop trusting CLion's automatic dead code detection because it seems to be wrong
more often than not.
This reverts commit 612c86db3e .
2019-12-13 18:43:14 +01:00
George Peter Banyard
af84ebb041
Remove dead code in sanitizing_filter.c of the filter extension
2019-12-13 17:59:52 +01:00
George Peter Banyard
612c86db3e
Remove dead code in libmbfl, memory device
2019-12-13 17:58:37 +01:00
Nikita Popov
72a5fdec2c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78921
2019-12-13 16:38:42 +01:00
Nikita Popov
9de4f87aca
Limit parse depth in mbstring fuzzer
...
The default depth of 4096 is large enough to cause optimize_node
stack overflows under asan. Reduce to 1024.
2019-12-13 16:09:28 +01:00
Nikita Popov
a40a69fdd0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Introduce extra counter to avoid RTD key collisions
2019-12-13 11:05:41 +01:00
Dylan T
01875e8b26
phar: fix offset*() prototypes
2019-12-13 10:41:50 +01:00
Máté Kocsis
e699b2865f
Fix exception message of implode()
2019-12-12 23:05:12 +01:00
Christoph M. Becker
4c5a178df8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78929 : plus signs in cookie values are converted to spaces
2019-12-12 14:22:32 +01:00
Máté Kocsis
beee92a887
Remove support for mixing parameter order in implode()
2019-12-12 13:49:05 +01:00
Máté Kocsis
37c1171451
Promote warnings to exceptions in password_*() functions
2019-12-12 12:14:53 +01:00
Nikita Popov
d56768817b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78950 : Preloading trait method with static variables
2019-12-12 11:52:51 +01:00
Nikita Popov
cf9362195b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix handling of non-final loop var free in sccp
2019-12-12 09:40:54 +01:00
Tyson Andre
1695d3ed07
Add funcinfo for spl global functions
...
This assumes that `iterator_*` will now always throw or abort on failure.
Also, move #include _arginfo.h directive to the top of the file - virtually all
other files put it there, and developers may base code on basic_functions.c.
Closes GH-4968
2019-12-11 18:17:04 -05:00
George Peter Banyard
4782e8e28a
Return empty string instead of NULL in serialize().
...
Modifiy its return type accordingly and arginfo.
2019-12-12 00:01:28 +01:00
Christoph M. Becker
15340bea04
Merge branch 'PHP-7.4'
...
* PHP-7.4:
uint/ulong removal may affect other platforms as well
2019-12-11 23:45:03 +01:00
Christoph M. Becker
e161c7bd89
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Typo fix in php.ini-production
2019-12-11 23:16:05 +01:00
Máté Kocsis
51eefd8079
Add stubs for standard library
2019-12-11 18:50:36 +01:00
Máté Kocsis
381c9c180b
Promote warnings to exceptions in sapi_windows_* functions
2019-12-11 18:48:14 +01:00
Máté Kocsis
3b0a1905dd
Promote warning to exception in unserialize()
2019-12-11 18:47:59 +01:00
Máté Kocsis
f0b5d55c6f
Promote warning to exception in parse_url()
2019-12-11 18:47:48 +01:00
Máté Kocsis
555eec7d86
Promote warnings to exceptions for some filter functions
2019-12-11 18:47:17 +01:00
Tyson Andre
c31229429b
Merge branch 'array_filter-optimize' into HEAD
2019-12-11 09:40:13 -05:00
Nikita Popov
231bc7c8be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fixed bug #78903 : Conflict in RTD key for closures results in crash"
2019-12-11 14:40:02 +01:00
George Peter Banyard
a90abe2064
Convert warnings to TypeError in php_spl.c
...
Closes GH-4991
2019-12-11 13:49:16 +01:00
Nikita Popov
33648585d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78903 : Conflict in RTD key for closures results in crash
2019-12-11 13:08:12 +01:00
Nikita Popov
05e6a11b5b
Remove ZEND_PARSE_PARAMS_QUIET from spl_autoload_register()
2019-12-11 11:15:02 +01:00
Nikita Popov
e2a1dbd502
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Free RSA public key in mysqlnd sha256 auth
2019-12-11 10:32:06 +01:00
Dmitry Stogov
ee45dbab37
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Addirional fix for bug #78918
2019-12-11 12:29:10 +03:00
Tyson Andre
366713d250
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;
}
```
2019-12-10 19:29:49 -05:00
Dmitry Stogov
8fb3ef6e37
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78937 (Preloading unlinkable anonymous class can segfault)
2019-12-11 00:47:15 +03:00
Dmitry Stogov
764c8159b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix error message
2019-12-10 22:17:42 +03:00
Derick Rethans
4f31bcbf2f
Merge branch 'PHP-7.4'
2019-12-10 16:59:09 +00:00
Nikita Popov
725c2a999d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set zend.exception_ignore_args=0 in run-tests.php
2019-12-10 16:16:03 +01:00
Nikita Popov
c2d92ad971
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix incorrect zend_try usage
2019-12-10 15:22:46 +01:00
Nikita Popov
fa18c115be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix release build failure
2019-12-10 13:53:19 +01:00
Christoph M. Becker
f2dbe4297b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve error message
2019-12-10 13:20:55 +01:00
Nikita Popov
5cdea8d5e8
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
2019-12-10 13:12:29 +01:00
Máté Kocsis
33f7cabbf0
Promote warnings to exceptions in *scanf() functions
2019-12-10 13:01:59 +01:00
Nikita Popov
ea4bb58889
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix merge mistake
2019-12-10 09:04:01 +01:00
Nikita Popov
c124d202e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix DCE with FE_FETCH
2019-12-10 09:01:55 +01:00
Máté Kocsis
9563449d8b
Add stubs for another batch of standard functions
2019-12-09 19:47:08 +01:00
Máté Kocsis
16e68ac53a
Return false when "Unable to fork"
2019-12-09 19:44:48 +01:00
Máté Kocsis
6f9248359e
Throw an exception when an invalid comparison operator is passed to version_compare()
2019-12-09 19:44:01 +01:00
Máté Kocsis
b2dc833c1a
Only accept string as the format parameter of *printf() functions
2019-12-09 19:43:34 +01:00
ekinhbayar
a74484cc98
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.
2019-12-09 17:32:17 +01:00
Christoph M. Becker
8060a8507f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78912 : INTL Support for accounting format
2019-12-09 16:35:45 +01:00
Nikita Popov
aaa0a80636
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix build
2019-12-09 16:06:37 +01:00
Dmitry Stogov
b1577f5a57
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Export zend_init_func_run_time_cache()
2019-12-09 15:58:19 +03:00
Dmitry Stogov
62826e95d2
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().
2019-12-09 15:07:39 +03:00
Dmitry Stogov
796d11c942
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)
2019-12-09 13:50:43 +03:00
Christoph M. Becker
a776069ea8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extend CURLFile to support streams
Use curl_mime_*() functions if available
2019-12-09 10:32:53 +01:00
Nikita Popov
8b1b68d3ba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78926 : Handle class table reallocation on failed link
2019-12-09 09:16:48 +01:00
Nikita Popov
8988c49bb3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78887 : Add upgrading note about get_declared_classes() order
[ci skip]
2019-12-09 08:58:37 +01:00
Nikita Popov
33e39f088a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use unmangled named in property type inheritance error
2019-12-09 08:49:42 +01:00
Nikita Popov
ded87a9ea0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78904 : Don't call any magic for uninitialized typed properties
2019-12-09 08:42:34 +01:00
George Peter Banyard
734932ecbb
Convert warnings to ValueError
2019-12-08 21:03:14 +01:00
George Peter Banyard
761e8c7707
Remove dead commented code and dead code in-between KALLE_0 ifdefs.
...
Closes GH-4986
2019-12-08 20:21:40 +01:00
George Peter Banyard
eaaf14ea09
Add type error on filename which contain null bytes in bzopen
2019-12-08 20:19:32 +01:00
Jakub Zelenka
d98df5b6c6
Merge branch 'PHP-7.4'
2019-12-08 17:58:59 +00:00
George Peter Banyard
2741476838
Add type error on filename which contain null bytes in bzopen
2019-12-08 15:06:59 +01:00
Christoph M. Becker
4daa680512
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 >
2019-12-08 14:55:26 +01:00
Christoph M. Becker
2ede8db1b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78923 : Artifacts when convoluting image with transparency
2019-12-07 12:09:16 +01:00
Christoph M. Becker
1d69bf187f
Fix compiler warning
...
This cast is already done for all other _aliases, but this one has
apparently been missed so far.
2019-12-06 16:50:28 +01:00
Dmitry Stogov
ebf35cc8e8
Fixed operation with result in CPU register
2019-12-06 17:16:46 +03:00
Nikita Popov
aed2bf7ab3
Remove unused function
2019-12-06 14:18:52 +01:00
Nikita Popov
0bac785477
Optimize return type checking
...
Split off the fast-path case and avoid redundant checks.
2019-12-06 14:17:03 +01:00
Dmitry Stogov
990b556761
Use cheaper code for overflow +/-1
2019-12-06 14:04:58 +03:00
Nikita Popov
9554fb3498
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix constant evaluation of && and ||
2019-12-06 11:11:12 +01:00
Nikita Popov
8853599514
Try to restore laravel & symfony community jobs
...
Patch Doctrine to fix the PDOConnection::query() signature.
2019-12-06 07:56:39 +01:00
Nikita Popov
8f62151ec8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix intermittent error in pdo_mysql___construct_options.phpt
2019-12-06 07:40:01 +01:00
Nikita Popov
4a5e17f9af
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.
2019-12-06 07:18:11 +01:00
Nikita Popov
e0a8c7a8d0
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.
2019-12-05 15:26:16 +01:00
Nikita Popov
9e403d65d8
Add DCE support for ARRAY_KEY_EXISTS
2019-12-05 14:55:22 +01:00
George Peter Banyard
1c4ad17cc1
Move isinf, isnan, and isfinite to zend_portability.h
...
Closes GH-4966
2019-12-05 14:27:51 +01:00
George Peter Banyard
f03d311f1a
Capitalize first character of error message.
2019-12-05 14:22:53 +01:00
George Peter Banyard
5fbd49f9ab
Convert Errors to ValueErrors
...
Closes GH-4930
2019-12-05 14:22:54 +01:00
Máté Kocsis
73730eebca
Add upgrading notes about removed functionality that were deprecated in PHP 7.4
2019-12-05 13:15:55 +01:00
Máté Kocsis
b95da3c75f
Remove FILTER_SANITIZE_MAGIC_QUOTES filter
2019-12-05 13:15:55 +01:00
Máté Kocsis
29ef07728e
Remove magic quotes legacy
2019-12-05 13:15:54 +01:00
Máté Kocsis
633926021b
Remove ezmlm_hash() function
2019-12-05 13:15:54 +01:00
Máté Kocsis
144b41ce88
Remove money_format() function
2019-12-05 13:15:54 +01:00
Máté Kocsis
64468d1e3b
Remove convert_cyr_string() function
2019-12-05 13:15:54 +01:00
Máté Kocsis
b63c625260
Remove hebrevc() function
2019-12-05 13:15:54 +01:00
Máté Kocsis
d2868edae0
Capitalize the initial letter of the error message of htmlspecialchars() function
2019-12-05 13:15:53 +01:00
Nikita Popov
a603c06e2e
Support "string or array" in zpp
...
This is one of our more common argument unions. Usage is just
prototyped in a few places, certainly not a full conversion.
I'm removing the str_replace.phpt test, because aparently it was
split up into smaller tests at some point, but the original has
not been removed.
Closes GH-4970.
2019-12-05 12:25:57 +01:00
Nikita Popov
cec7bd58f8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix timeout tests
2019-12-05 11:19:27 +01:00
Nikita Popov
6894cbe042
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix mysqli ssl tests
2019-12-05 08:39:16 +01:00
Máté Kocsis
5898e8ef3c
Promote warning to exception in file_get_contents() function
2019-12-05 08:32:29 +01:00
Máté Kocsis
ad4d6634f4
Promote warnings to exceptions in settype() function
2019-12-05 08:31:43 +01:00
Máté Kocsis
04deb532f0
Promote warning to exception in log() function
2019-12-05 08:30:47 +01:00
Tyson Andre
616ec2dd98
Update/fix remaining opcache zend_func_info.c signatures
...
See UPGRADING:
> . The GD extension now uses objects as the underlying data structure for
> images, rather than resources. These objects are completely opaque, i.e.
> they don't have any methods.
Remove types which are no longer in Reflection due to throwing instead of
emitting warnings.
Remove entries where reference counts are 0 and types are duplicated.
Closes GH-4967.
2019-12-05 07:29:03 +01:00
Nikita Popov
af301be4ef
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78823 : add zlib library to mysqlnd
2019-12-05 07:25:26 +01:00
Tyson Andre
21d326adee
Merge branch 'reflection-fixes' into HEAD
2019-12-04 19:12:28 -05:00
Tyson Andre
96d2b69653
Remove opcache signatures duplicating reflection
...
None of these are refcounted.
2019-12-04 09:50:24 -05:00
Tyson Andre
1142f0c4a5
Make more opcache signatures consistent with reflection
2019-12-04 09:40:42 -05:00
George Peter Banyard
92d5a2e48c
Remove obsolete configure checks for isinf, isnan, and isfinite
2019-12-04 15:17:57 +01:00
George Peter Banyard
4845c3f11d
Remove configure checks for asinh, acosh, atanh, log1p, hypot
2019-12-04 14:57:11 +01:00
George Peter Banyard
039d678fdf
Remove now obsolete configure checks for INFINITY and NAN.
2019-12-04 13:50:10 +01:00
George Peter Banyard
67f85573c5
Remove custom implementation for inifinity and NAN as we can now rely on C99
...
Those ZEND_* constant variant are now identical to their C counterpart, we may considering removing them in the future.
2019-12-04 13:17:20 +01:00
George Peter Banyard
2d0b0d6448
Remove unnecessary C99 checks for maths functions
2019-12-04 12:14:22 +01:00
Nikita Popov
7577e79e69
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix AST printing of nullable builtin types
2019-12-04 11:21:34 +01:00
Nikita Popov
a6832caac9
Fix incorrect assertion in property type variance check
...
Only one of the status has to be UNRESOLVED, the other could also
be SUCCESS.
Fixes oss-fuzz #19108 and oss-fuzz #19111 .
2019-12-04 11:07:22 +01:00
Nikita Popov
7b34e30b9a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Preload: Better reason message for internal parents on windows
2019-12-04 09:53:08 +01:00
Nikita Popov
a298bde9fb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78898
2019-12-04 09:41:51 +01:00
Nikita Popov
7b7115c4c4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add ReflectionMethod::getClosure() change to UPGRADING
[ci skip]
2019-12-04 08:08:40 +01:00
Tyson Andre
0dbc24c3fa
Fix other incorrect opcache types
...
Closes GH-4959.
2019-12-04 07:40:25 +01:00
Tyson Andre
5624d2eb00
Make some opcache types consistent with reflection information
...
Remove functions such as filter_id() where reference counts and types are
identical to what's in opcache.
Remove null types from zend_func_info.c that aren't in Reflection
(php would throw now)
Fix the Reflection type information for assert_options()
php > assert_options(ASSERT_CALLBACK, static function() {});
php > var_export(assert_options(ASSERT_CALLBACK));
Closure::__set_state(array(
))
Closes GH-4958.
2019-12-04 07:31:06 +01:00
Nikita Popov
8dead642fe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix print_r return types in opcache
2019-12-04 07:17:18 +01:00
Christoph M. Becker
f68d2e9c3c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Next is 7.3.14
2019-12-03 12:09:47 +01:00
Remi Collet
ecffa83556
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next is 7.2.27
2019-12-03 11:26:36 +01:00
Christoph M. Becker
c1a6f2b9cc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78883 : fgets(STDIN) fails on Windows
2019-12-02 16:53:35 +01:00
Christoph M. Becker
8a5601a364
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78814 : strip_tags allows / in tag name => whitelist bypass
2019-12-02 11:39:58 +01:00
Christoph M. Becker
b07c76059d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78296 : is_file fails to detect file
2019-12-02 11:30:23 +01:00
Christoph M. Becker
0dba3a8e43
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78833 : Integer overflow in pack causes out-of-bound access
2019-12-02 11:21:37 +01:00
Adam Saponara
b35acd30f2
Fix misleading error message in ZendAccelerator.c.
...
Currently this error emits something like...
`Error Cannot kill process 12345: Success!`
...due to calling `time` before `strerror` which clears `errno`. This
patch adds an error log immediately after both `kill` calls which gives
us better indication of what exactly failed.
2019-12-02 10:06:32 +01:00
Jakub Zelenka
2a742546bf
Merge branch 'PHP-7.4'
2019-12-01 17:17:30 +00:00
Lucas Martín
c0e049656c
Fix typo in xmm15 register
2019-12-01 12:28:19 +01:00
Stanislav Malyshev
0292d23bb0
Add fuzzing badge to README
2019-11-30 15:56:38 -08:00
Christoph M. Becker
b78885b6da
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade to Oniguruma 6.9.4
2019-11-30 14:02:14 +01:00
Christoph M. Becker
ce5a403b46
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing skip checks
2019-11-29 23:52:52 +01:00
Christoph M. Becker
cafa22aa58
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Partially revert "Adapt test cases for Oniguruma 6.9.4"
2019-11-29 23:42:48 +01:00
Dmitry Stogov
f8f48ce8f5
Refactor JIT to reduce back-end dependency from SSA representation.
...
This commit shouldn't change JIT behavior, but it adds asserts, that may catch wrong-cases occasionally passed before.
2019-11-29 19:07:17 +03:00
Christoph M. Becker
bf6c2932f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Adapt test cases for Oniguruma 6.9.4
2019-11-29 17:01:11 +01:00
Dmitry Stogov
3360d05f30
Don't keep QM_ASSIGN with IS_UNUSED result
2019-11-29 17:43:36 +03:00
Tyson Andre
67adcc5132
Remove no-op check for 'use strict;'
...
This should be checking for ZEND_SYMBOL_CLASS, not T_CLASS.
This was first added in 37ac1b96ed
2019-11-28 09:16:15 -05:00
Dmitry Stogov
b7241adf5e
typos
2019-11-28 13:23:17 +03:00
Dmitry Stogov
36175b3c3d
Fixed wrong parameteris order
2019-11-27 16:48:01 +03:00
Dmitry Stogov
40ef3196e0
Fixed register allocation
2019-11-27 16:26:43 +03:00
Christoph M. Becker
b7edbbdbbb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent parallel test conflicts
2019-11-27 14:05:47 +01:00
Dmitry Stogov
249e9a63e8
Fixed JIT for LONG->DOUBLE conversion when optimizer disabled
2019-11-27 14:31:24 +03:00
Christoph M. Becker
b6e79f3724
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78840 : imploding $GLOBALS crashes
2019-11-27 09:34:57 +01:00
Dmitry Stogov
b046a8f7f8
Fixed incorrect JIT compilation
2019-11-26 16:45:19 +03:00
avkarenow
182f98a194
Open opcache.error_log with 'a' flag
...
When opcache.error_log is set to log to file the read flag is not needed and used.
2019-11-26 09:29:27 +03:00
Christoph M. Becker
0e20220cfc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77638 : var_export'ing certain class instances segfaults
2019-11-25 15:58:45 +01:00
Dmitry Stogov
0f2b6ece4e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78868 (Calling __autoload() with incorrect EG(fake_scope) value)
Consolidate NEWS for 7.4.0 release
WIP: Merge NEWS
2019-11-25 14:10:53 +03:00
Christoph M. Becker
1de312d9b1
Document the need for merging NEWS sections before x.y.0
2019-11-24 12:19:49 +01:00
Tyson Andre
f0484e939a
Merge branch 'PHP-7.4'
2019-11-23 10:46:59 -05:00
Tyson Andre
500ba8b2b8
Handle reallocated root buffer during GC destroy phase (v2)
...
We no longer protect GC during the destroy phase, so we need to
deal with buffer reallocation.
Note that the implementation of spl_SplObjectStorage_free_storage
will call the destructor of SplObjectStorage, and free the instance properties,
which I think is what caused the root buffer to be reallocated.
(`current` is a pointer for an index within the root buffer?)
This fixes bug #78811 for me.
Closes GH-4935
2019-11-23 10:24:48 -05:00
Christoph M. Becker
e7e15450ef
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78853 : preg_match() may return integer > 1
2019-11-22 19:30:43 +01:00
George Peter Banyard
501a72e354
Promote warning to value error in strpbrk()
...
Closes GH-4598
2019-11-22 00:36:54 +01:00
George Wang
8a977e07d0
Merge branch 'PHP-7.4'
2019-11-21 17:59:05 -05:00
Christoph M. Becker
424d34d1c0
Make test more resilient
...
`socket_bind()` may raise `E_WARNING` on failure, which would cause the
test to be marked as borked. Since we're checking the return value
anyway, we can silence warnings.
2019-11-21 13:40:36 +01:00
Christoph M. Becker
b40799efcd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78849 : GD build broken with -D SIGNED_COMPARE_SLOW
2019-11-21 10:04:03 +01:00
Adam Harvey
a3a9a1e040
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make the UPGRADING note about ArrayObject more explicit.
2019-11-20 15:39:51 -08:00
Tyson Andre
f7c44ef2a0
Make opcache infer array_key_exists is non-null bool
...
array_key_exists now throws a TypeError instead of returning null
for invalid arguments after 14bdb0cfc7
2019-11-20 00:11:51 +03:00
Fabien Villepinte
e2a8cc0114
Fix typo with msgfmt_parse_message()
2019-11-19 19:48:13 +01:00
Craig Duncan
e208d236b3
Convert apache2handler arginfo to php stubs
2019-11-18 15:07:04 +01:00
Michael Voříšek
7a5dbcd660
Remove clearstatcache function prototype defned twice
2019-11-18 14:36:10 +01:00
Fabien Villepinte
f67b27fac6
Fix typo in pcntl_sigwaitinfo proto
2019-11-18 12:53:36 +01:00
Christoph M. Becker
c58b44f34a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-11-18 12:49:28 +01:00
Fabien Villepinte
2adb1bba17
Fix proto of forward_static_call_array
...
Closes GH-4928.
2019-11-18 12:46:05 +01:00
Máté Kocsis
c58b12334d
Add union return types with one class
2019-11-18 12:44:38 +01:00
Máté Kocsis
100552d4b5
Add stubs for PDO
2019-11-18 12:38:10 +01:00
Craig Duncan
a9e8cd2b6b
Convert the example skeleton extension to use arginfo stubs
2019-11-18 11:41:24 +01:00
Tyson Andre
7901913b83
Speed up foreach/FE_FREE (optimize for arrays without gc)
...
In the case where there are still references to an array being iterated
over when the iterator is freed (or the array is not reference counted):
- There's need to save the opline.
- There's no need to check for exceptions.
```
// Before: 0.404 seconds
// After: 0.362 seconds
// loop_iter_empty(1000, 5000);
function loop_iter_empty(int $a, int $b) {
$values = array_fill(0, $b, []);
$total = 0;
for ($i = 0; $i < $b; $i++) {
foreach ($values as $v) {
foreach ($v as $x) {
$total += $x;
}
}
}
return $total;
}
```
2019-11-18 11:54:35 +03:00
Dmitry Stogov
8bf663d3b2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix $x = (bool)$x; for undefined with opcache
2019-11-18 11:29:38 +03:00
Jakub Zelenka
f826bbde93
Merge branch 'PHP-7.4'
2019-11-17 14:53:53 +00:00
Christoph M. Becker
5b9725e555
Add missing zend_parse_parameters_none()
2019-11-16 18:20:39 +01:00
Máté Kocsis
65db340ae7
Add stubs for the Locale component of Intl
2019-11-16 18:15:03 +01:00
Nikita Popov
292a1aeb59
Support union types for args in gen stubs
...
Using this requires care! The zpp implementation for this union
must be consistent with the arginfo implementation!
Apart from array|object, this is probably only the case for
int|float right now.
2019-11-15 17:33:37 +01:00
Nikita Popov
0cec268d15
Support single class unions in gen stubs
2019-11-15 17:19:26 +01:00
Nikita Popov
468ecf295d
Fix DateTimeImmutable stubs
...
These were referencing the arginfo from the functions, instead of
the methods, which isn't right, as the functions have return types.
2019-11-15 16:02:26 +01:00
Nikita Popov
9899fdc454
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Handle reallocated root buffer during GC destroy phase
Zend Engine version is no longer in -dev
2019-11-15 15:54:46 +01:00
Tyson Andre
a7580899f3
Support the same handler for multiple opcodes
2019-11-15 17:37:01 +03:00
Tyson Andre
e8525c2f68
Optimize int === int/double === double
...
Do this by reusing the implementation used for `==`
when both arguments are ints (IS_LONG) or both are floats (IS_DOUBLE)
```php
// Before: nestedloop_ni took 0.442 seconds
// After: nestedloop_ni takes 0.401 seconds (same as nestedloop_ne)
function nestedloop_ni(int $k) {
$x = 0;
for ($i=0; $i < 50000000; $i++) {
if ($i === $k) {
$x++;
}
}
print "$x\n";
}
function nestedloop_ne(int $k) {
$x = 0;
for ($i=0; $i < 50000000; $i++) {
if ($i == $k) {
$x++;
}
}
print "$x\n";
}
```
2019-11-15 17:37:01 +03:00
Derick Rethans
17a021e228
Merge branch 'PHP-7.4'
2019-11-15 14:22:41 +00:00
Nikita Popov
40dcf2bd3d
password_hash() can't return false
2019-11-15 12:43:57 +01:00
Nikita Popov
bb41a1b7e7
Fix str_pad rc info
...
This fixes at least part of bug #78811 .
2019-11-15 12:37:24 +01:00
Nikita Popov
716fdacdd1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78810
2019-11-15 12:08:55 +01:00
Christoph M. Becker
03b7833558
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix ASLR related invalid opline handler issues
2019-11-15 09:48:02 +01:00
Christoph M. Becker
2de79f0855
Make the $num_points parameter of php_imagepolygon optional
...
That parameter is mostly useless in practise, and likely has been
directly ported from the underlying `gdImagePolygon()` and friends,
which require that parameter since the number of elements of the point
array would otherwise be unknown. Typical usages of `imagepolygon()`,
`imageopenpolygon()` and `imagefilledpolygon()` pass `count($points)/2`
or hard-code this value as literal. Since explicitly specifying this
parameter is annoying and error-prone, we offer the possibility to omit
it, in which case the `$points` array must have an even number of
elements, and the number of points is calculated as `count($points)/2`.
2019-11-15 09:41:10 +01:00
Fabien Villepinte
d65e59de9b
Merge branch 'PHP-7.4'
2019-11-13 21:15:59 +01:00
Dmitry Stogov
36afe4e39e
Optimize $x === null into is_null($x)
2019-11-12 13:49:55 +03:00
Dmitry Stogov
bd45881014
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed wrong constant usage
2019-11-12 13:00:37 +03:00
Dmitry Stogov
32274d81a1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ws
2019-11-12 10:52:09 +03:00
Dmitry Stogov
d94c27dcca
Fixed JIT for TYPE_CHECK opcode (exception handling in case of undefined argument)
2019-11-12 10:42:29 +03:00
Tyson Andre
937fa6d9e2
Optimize is_scalar($x) into a TYPE_CHECK opcode
...
Optimizations such as specializations for is_resource were first added in
dfb4f6b38d9efedafab7d2d98b9333715561256
I don't see any mention of is_scalar (and optimizing it) in the commit history,
or in prior PRs on github, or searching for is_scalar in externals.io
2019-11-12 10:17:10 +03:00
Stanislav Malyshev
ad0a3f2886
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78804 - Segmentation fault in Locale::filterMatches
2019-11-11 23:08:52 -08:00
Christoph M. Becker
735c4cab74
Make test more resilient
...
`socket_bind()` may raise `E_WARNING` on failure, which would cause the
test to fail.
2019-11-11 18:08:54 +01:00
Christoph M. Becker
8c5ca24e11
Fix clean section of test case
2019-11-11 15:57:42 +01:00
Christoph M. Becker
dccd137e1a
iconv_strlen() cannot return a string
2019-11-11 15:40:59 +01:00
Máté Kocsis
27e83d0fb8
Add union return types for function stubs
2019-11-11 14:54:55 +01:00
Christoph M. Becker
2804ea6127
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case for Windows
2019-11-11 12:56:55 +01:00
Christoph M. Becker
0a33536526
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test cases which fail on Windows debug builds
2019-11-11 12:34:50 +01:00
Christoph M. Becker
adcc35916a
Properly declare methods
...
While declaring methods with `PHP_FALIAS` kind of works, it is
semantically confusing, and also doesn't allow to specify access flags.
2019-11-11 10:58:21 +01:00
Dmitry Stogov
6e9dd13d63
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78714 (funcs returning pointer can't use call convention spec)
2019-11-11 12:09:47 +03:00
Christoph M. Becker
b0391c3e26
Revert "Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters"
...
This reverts commit 87fad8cdf0 , since,
apparently, `mysqli_get_client_info()` is also supposed to be called
without argument.
2019-11-11 10:06:21 +01:00
Christoph M. Becker
87fad8cdf0
Fix #78790 : mysqli_get_client_info() expects exactly 0 parameters
...
`mysqli_get_client_info()` and `mysqli_thread_safe()` can also be
called as methods, so we have to cater to this when parsing the
arguments.
2019-11-11 10:01:17 +01:00
Benjamin Eberlei
3b34c4fa12
Merge branch 'DomFaliasCleanup'
2019-11-09 21:30:25 +01:00
Benjamin Eberlei
f905a81979
ext/dom: Replace usages of PHP_FUNCTION and aliases with PHP_METHOD.
2019-11-09 21:29:42 +01:00
Benjamin Eberlei
ee80567a83
Merge branch 'dom-arginfo-stubs'
2019-11-09 15:16:09 +01:00
Fabien Villepinte
1240c122a1
Merge branch 'PHP-7.4'
2019-11-09 13:56:23 +01:00
Fabien Villepinte
4d529757f8
Merge branch 'PHP-7.4'
2019-11-08 20:36:55 +01:00
Nikita Popov
9bbbc9e7e9
Add support for union types in stubs
...
This is the MVP for supporting union types in PHP stubs. Return
types with only builtin types work, which is the part we mainly
need.
Closes GH-4895.
2019-11-08 17:32:18 +01:00
Tyson Andre
70b4bc963c
Fix compile error using zend_parse_parameters_throw()
...
Fixes a bug introduced in 4008704f62
The trailing comma is followed by `)` when the varargs list
is empty in the macro, which is a syntax error in C
This fixes compilation of code such as the following
PHP_FUNCTION(get_metadata) {
if (zend_parse_parameters_throw(ZEND_NUM_ARGS(), "") == FAILURE) {
return;
}
Closes GH-4896.
2019-11-08 16:29:10 +01:00
Levi Morrison
1cb69c44d7
Merge branch 'PHP-7.4'
2019-11-08 08:04:52 -07:00
Nikita Popov
999e32b65a
Implement union types
...
According to RFC: https://wiki.php.net/rfc/union_types_v2
The type representation now makes use of both the pointer payload
and the type mask at the same time. Additionall, zend_type_list is
introduced as a new kind of pointer payload, which is used to store
multiple class types. Each of the class types is a tagged pointer,
which may be either a class name or class entry. The latter is only
used for typed properties, while arguments/returns will instead use
cache slots. A type list can contain a mix of both names and CEs at
the same time, as not all classes may be resolvable.
One thing this is missing is support for union types in arginfo
and stubs, which I want to handle separately.
I've also dropped the special object code from the JIT implementation
for now -- I plan to add this back in a different form at a later time.
For now I did not want to include non-trivial JIT changes together
with large functional changes.
Another possible piece of follow-up work is to implement "iterable"
as an internal alias for "array|Traversable". I believe this will
eliminate quite a few special-cases that had to be implemented.
Closes GH-4838.
2019-11-08 15:15:48 +01:00
Nikita Popov
ac4e0f0852
Make zend_type a 2-field struct
...
We now store the pointer payload and the type mask separately. This
is in preparation for union types, where we will be using both at
the same time.
To avoid increasing the size of arginfo structures, the
pass_by_reference and is_variadic fields are now stored as part of
the type_mask (8-bit are reserved for custom use).
Different types of pointer payloads are distinguished based on bits
in the type_mask.
2019-11-08 15:15:48 +01:00
Benjamin Eberlei
4253ca486d
Convert ext/dom to use arginfo stub.
2019-11-08 15:05:35 +01:00
Fabien Villepinte
a555cc0b3d
Clean DONE tags from tests
...
Remove most of the `===DONE===` tags and its variations.
Keep `===DONE===` if the test output otherwise becomes empty.
Closes GH-4872.
2019-11-07 21:31:47 +01:00
Nikita Popov
80cfd99074
Reduce reallocations in exif parsing
...
Instead of reallocating lists element by element, increase the
allocated list size exponentially.
2019-11-07 21:20:34 +01:00
Nikita Popov
11649a6d77
Reduce size limit in parser fuzzer
...
Avoid stack overflows during compilation of deeply nested
expressions.
2019-11-07 21:20:34 +01:00
Máté Kocsis
ab6b412a0b
Add stubs for standard lib functions
2019-11-07 17:59:03 +01:00
Máté Kocsis
afe4a879c7
Promote register_tick_function() callback validation warning to an exception
2019-11-07 17:56:58 +01:00
Máté Kocsis
662afc80f8
Remove PHP_SLEEP_NON_VOID as it is not useful anymore
2019-11-07 17:56:26 +01:00
Nikita Popov
e710862f8c
Add compile warning for "confusable" types
...
We have a number of "types" like integer which are not actually
supported as builtin types -- instead they are silently interpreted
as class types.
I've seen this cause confusion a few types already. This change adds
a warning in this case. In the unlikely case that someone legitimately
wants to type against an integer class, the warning can be suppressed
by writing \integer or "use integer", or using Integer (this warning
will only trigger for lowercase spellings).
Closes GH-4815.
2019-11-07 15:05:08 +01:00
Nikita Popov
a573862676
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Wrap hrtime in `extern "c" {}`
2019-11-07 14:42:16 +01:00
Nikita Popov
ea6d22cfad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix php_pcre_mutex_free()
2019-11-07 14:32:03 +01:00
Nikita Popov
e9bdb5cd08
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove outdated comments in test
2019-11-07 14:06:53 +01:00
Nikita Popov
cb03bbbf60
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable ifunc resolvers under thread sanitizer as well
2019-11-07 13:11:58 +01:00
Nikita Popov
bae312d040
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add UPGRADING note about default object from empty value
[ci skip]
2019-11-07 11:48:52 +01:00
Nikita Popov
0027ad4801
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78759
2019-11-07 11:17:38 +01:00
Christoph M. Becker
34dda406bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78788 : ./configure generates invalid php_version.h
2019-11-07 10:01:43 +01:00
Nikita Popov
b312598daf
Move extra checks after zpp in get_browser()
2019-11-06 17:50:48 +01:00
Nikita Popov
34ea5b0585
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove bogus skipifs in get_browser tests
2019-11-06 17:50:20 +01:00
Máté Kocsis
14bdb0cfc7
Fix consistency issues with array accesses warnings/exceptions
...
* Change a number of "resource used as offset" notices to warnings,
which were previously missed.
* Throw the "resource used as offset" warning for isset() as well.
* Make array_key_exists() behavior with regard to different key
types consistent with isset() and normal array accesses. All key
types now use the usual coercions and array/object keys throw
TypeError.
Closes GH-4887.
2019-11-06 12:56:47 +01:00
Nikita Popov
0b0d4eb0eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78787
2019-11-06 12:53:29 +01:00
Christoph M. Becker
abc382e885
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3.13 is next
2019-11-05 18:25:39 +01:00
Sara Golemon
f8de6309bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump for 7.2.26-dev
2019-11-05 10:59:04 -05:00
Nikita Popov
c849438bd0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78775
2019-11-05 12:16:17 +01:00
Christoph M. Becker
22725639cc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove obsolete oniguruma.patch
2019-11-05 10:19:06 +01:00
Nikita Popov
56cee36374
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code `ext/mysqlnd/mysqlnd_net.c`.
2019-11-04 21:36:36 +01:00
Máté Kocsis
6d0366ad08
Add stubs for IntlTimeZone
2019-11-04 14:10:01 +01:00
Fabien Villepinte
42692d45f5
Merge branch 'PHP-7.4'
2019-11-04 13:56:18 +01:00
Nikita Popov
c46b2ed677
Remove support for array_key_exists() with objects
2019-11-04 13:10:03 +01:00
Christoph M. Becker
31f1254182
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make test more robust
2019-11-04 12:23:00 +01:00
Nikita Popov
b509d67554
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Remove configure checks for supported instruction sets"
2019-11-04 11:34:02 +01:00
Nikita Popov
5b447d4b42
Remove dead code related to inherits props in reflection
...
Public/protected properties defined in parent classes will be
inherited in the child -- there is no need to explicitly try to
walk up the chain and look them up.
2019-11-04 11:24:32 +01:00
Nikita Popov
0e3045ae69
Store pointer to property_info in reflection
...
Instead of constructing a dummy property_info for dynamic properties,
leave the field as NULL and handle this as appropriate.
This was originally part of an alternative fix for bug #78774 , but
I think doing it this way is generally preferrable independently
of that.
2019-11-04 11:08:19 +01:00
Nikita Popov
7f9e7399d3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78774
2019-11-04 11:04:11 +01:00
Christoph M. Becker
7d96dcac2c
Fix #55005 : imagepolygon num_points requirement
...
We actually have to check `$num_points` instead of `2*count($points)`,
because the latter may be greater than the former, but not all elements
of `$points` are guaranteed to be used. This allowed to pass arrays
with excess elements to draw polygons with less than three vertices.
While the current implementation of `gdImagePolygon()` and friends
would allow us to draw monogons and digons, we don't allow that
anymore, because the respective drawing primitives work slightly
different (e.g. drawing lines support anti-aliasing, but drawing
general polygons does not).
To minimize the BC break, we do not fix this longstanding issue for PHP
7, but target PHP 8 only.
2019-11-02 14:05:01 +01:00
Christoph M. Becker
4d067d811d
Add ext/phar arginfo stubs
2019-11-02 11:55:11 +01:00
Nikita Popov
991a0250b5
Reduce oniguruma retry limit in fuzzer
...
For some patterns matching may take quite long even at retry limit
100000 and it seems that this is not easy to fix on the oniguruma
side.
Reduce the retry limit by another factor of 10 in hope of reducing
timeouts.
2019-11-02 10:40:41 +01:00
Christoph M. Becker
21eddde3fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Print Client Library Version in phpinfo
2019-11-02 10:19:56 +01:00
Nikita Popov
dde2bcb556
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Explicitly specify ubuntu versions on azure pipelines
2019-11-02 10:13:07 +01:00
Christoph M. Becker
88bab00199
Remove unused code
...
These are left-overs from image2wbmp(), which has already been removed.
2019-11-02 00:10:46 +01:00
Christoph M. Becker
34defbb784
Accept int parameter in the first place
...
This is more liberal then before, where that parameter (if given) had
to be IS_LONG, while now it would be converted to int according to weak
typing rules. This is, however, more what a developer would expect.
2019-11-01 19:15:48 +01:00
Máté Kocsis
f19950fea0
Promote some warnings to exceptions in standard lib
...
Closes GH-4879.
2019-11-01 17:07:51 +01:00
Nikita Popov
11ce417215
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78768
2019-11-01 17:04:59 +01:00
Nikita Popov
5ca46572e6
Allow generating stubs for directory
2019-11-01 16:54:20 +01:00
Christoph M. Becker
4008704f62
zend_parse_parameters_throw() is obsolete
...
Since `zend_parse_parameters()` throws now, there is no reason to
explicitly call `zend_parse_parameters_throw()` anymore, and since both
have actually the same implementation, we redefine the latter as macro.
2019-11-01 16:47:15 +01:00
Máté Kocsis
2204dbde3b
Add missing ZPP checks
...
Closes GH-4878.
2019-11-01 15:26:52 +01:00
Christoph M. Becker
5dd5f1bc4a
Finish OpenSSL arginfo stubs
2019-11-01 15:21:28 +01:00
Fabien Villepinte
8ea2be387e
Merge branch 'PHP-7.4'
2019-11-01 12:38:32 +01:00
Fabien Villepinte
5955211710
Merge branch 'PHP-7.4'
2019-11-01 12:27:04 +01:00
Cameron Porter
07964fc2b5
pdo_oci: Add support for setting and getting the oracle OCI 18c call timeout value.
2019-11-01 10:36:55 +01:00
Dmitry Stogov
61ebce1f06
Don't skip RECV instuctions when function uses type hints
2019-11-01 09:33:46 +03:00
Christoph M. Becker
32d3dbf789
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test cases for libxml2 2.9.10
2019-10-31 16:10:18 +01:00
Nikita Popov
2f8b766838
Add stubs for WeakReference
2019-10-31 12:17:04 +01:00
Nikita Popov
1517bc4426
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove configure checks for supported instruction sets
2019-10-31 11:34:15 +01:00
Nikita Popov
0b689c163e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77930 : Remove mmap limit
2019-10-31 09:37:27 +01:00
Christoph M. Becker
7816df2c57
Elevate warnings to ValueErrors in ext/calendar
...
All of these warnings/ValueErrors are due to programming errors, i.e.
calling a function with unsupported arguments.
2019-10-31 08:49:15 +01:00
Christoph M. Becker
fe13066403
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78761 : Zend memory heap corruption with preload and casting
2019-10-30 19:50:22 +01:00
Christoph M. Becker
9b817264eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78762 : Failing FFI::cast() may leak memory
2019-10-30 17:22:56 +01:00
Máté Kocsis
9493893412
Cleanup return values when parameter parsing is unsuccessful
2019-10-30 16:05:20 +01:00
Máté Kocsis
969e7a3c8b
Cleanup return values for Intl when parameter parsing is unsuccessful
...
Closes GH-4871.
2019-10-30 13:21:40 +01:00
Nikita Popov
5cbe5a538c
Don't use chunking for stream writes
...
We're currently splitting up large writes into 8K size chunks, which
adversely affects I/O performance in some cases. Splitting up writes
doesn't make a lot of sense, as we already must have a backing buffer,
so there is no memory/performance tradeoff to be made here.
This change disables the write chunking at the stream layer, but
retains the current retry loop for partial writes. In particular
network writes will typically only write part of the data for large
writes, so we need to keep the retry loop to preserve backwards
compatibility.
If issues due to this change turn up, chunking should be reintroduced
at lower levels where it is needed to avoid issues for specific streams,
rather than unnecessarily enforcing it for all streams.
2019-10-30 13:03:45 +01:00
Nikita Popov
f9ab339c0f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add UPGRADING note for stream_read() change
[ci skip]
2019-10-30 11:32:16 +01:00
Rimvydas Zilinskas and Christoph M. Becker
e4593c51ff
Add more openssl stubs
...
Co-authored-by: Christoph M. Becker <cmbecker69@gmx.de >
2019-10-30 11:20:48 +01:00
Nikita Popov
9241037837
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimize creation of empty arrays in json_decode
2019-10-30 11:06:59 +01:00
Nikita Popov
e0a401335d
Make "unterminated comment" into a parse error
2019-10-30 11:00:27 +01:00
Nikita Popov
93ba3abe63
Warn on strtr(["" => "x"])
...
Previously:
* If only ["" => "x"] was present, the original string was returned
without warning.
* If both ["" => "x"] and at least one more element was present,
false was returned without warning.
New behavior:
* Ignore "" keys in the replacement array (and perform any remaining
replacement).
* Throw a warning indicating that an empty string replacement has
been ignored.
Closes GH-4792.
2019-10-30 10:53:45 +01:00
Nikita Popov
becda2e041
Promote mt_rand() min/max warning to ValueError
2019-10-30 10:36:42 +01:00
Máté Kocsis
ad9ea5abde
Add stubs for various standard functions
...
Closes GH-4851.
2019-10-30 10:34:06 +01:00
Nikita Popov
e0be51d082
Use ArgumentCountError in IntlGregorianCalendar ctor
2019-10-30 10:27:52 +01:00
Tyson Andre
96f361dca0
Update documentation/comment for GH-4860
...
Fix folding for the new helper method.
Clarify comment in UPGRADING:
The performance on associative arrays would also improve,
as long as no offsets were unset (no gaps).
Packed arrays can have gaps.
Closes GH-4873.
[ci skip]
2019-10-30 10:26:56 +01:00
Máté Kocsis
fee94da127
Add stubs for directory and file functions
2019-10-30 10:10:40 +01:00
Nikita Popov
aef8836110
Don't check $this existence in object opcodes
...
We are now guaranteed that $this always exists inside methods, as
well as insides closures (if they use $this at all).
This removes checks for $this existence from the individual object
opcodes. Instead ZEND_FETCH_THIS is used in the cases where $this
is not guaranteed to exist, which is mainly the pseudo-main scope.
Closes GH-3822.
2019-10-30 09:30:13 +01:00
Nikita Popov
776f4bc680
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing refcount increment
2019-10-30 09:23:23 +01:00
Nikita Popov
ad53bacf38
Fix bug #78681 by renaming libphp8.so to libphp.so
...
The major version number is no longer included.
2019-10-29 16:06:09 +01:00
Christoph M. Becker
64685782e4
Allow to call XMLReader::open() and ::XML() statically
...
The implementation of `XMLReader::open()` and `XMLReader::XML()` still
supports calling the methods statically and non-statically. However,
as of PHP 8.0.0, calling these methods statically is not allowed,
because they are not declared as static methods. Since we consider it
to be cleaner to call these methods statically, but had deprecated to
call them statically, we properly support both variants.
We implement support for static and non-static calls by overloading, so
that non-static calls have access to the `$this` pointer.
2019-10-29 15:58:32 +01:00
Nikita Popov
4963701aa4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78689
2019-10-29 15:08:03 +01:00
Nikita Popov
817fbe8186
Remove some RETURN_FALSE on exception
2019-10-29 13:36:03 +01:00
Nikita Popov
6719d3e718
Add Z_PARAM_STRING/ARRAY_OR_NULL convenience macros
2019-10-29 13:29:52 +01:00
Nikita Popov
63a20cb400
Don't accept objects for options in password_hash()
...
This was likely a mixup of zpp modifiers in the original implementation.
Per the RFC only arrays should be accepted here.
2019-10-29 13:20:22 +01:00
Nikita Popov
c43179fb6b
Promote base_convert "invalid base" errors to ValueError
2019-10-29 13:12:37 +01:00
Nikita Popov
26327bcd3b
Throw "Unsupported operand types" error when using ** on arrays
2019-10-29 13:05:02 +01:00
Nikita Popov
8f20b9969f
Expect number argument in round()
2019-10-29 12:50:29 +01:00
Craig Duncan
1d631c18de
Convert phpdbg arginfo to php stubs
...
Closes GH-4867.
2019-10-29 11:39:58 +01:00
Nikita Popov
1c9cbc911d
Small phpdbg cleanups
...
Add a zpp_none() call, convert E_ERROR to ValueError.
2019-10-29 11:39:02 +01:00
Nikita Popov
504f7ffdd6
Small ext/dom cleanups
2019-10-29 11:16:23 +01:00
Christoph M. Becker
312ecc69d5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test case on non Windows platforms
2019-10-29 10:07:22 +01:00
Nikita Popov
39897eb80b
Try to fix asan warning in scalar_constant_defaults.phpt
...
Doing the SAVE_VALID_OPLINE right before the call, because we
still need r0 before that.
2019-10-29 10:01:35 +01:00
Derick Rethans
726989433a
Merge branch 'PHP-7.4'
2019-10-29 09:00:45 +00:00
Christoph M. Becker
657f7e898d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test case on non Windows platforms
2019-10-29 09:57:27 +01:00
Christoph M. Becker
c5e1a0454f
Skip test case on non Windows platforms
2019-10-29 09:53:44 +01:00
Nikita Popov
778a9c05b6
Try to fix 32-bit fprintf test
2019-10-29 09:52:46 +01:00
Christoph M. Becker
3dbb90b07e
Fix test cases for master
2019-10-29 09:35:16 +01:00
Christoph M. Becker
6c078d8bd5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement #78270 : Support __vectorcall convention with FFI
2019-10-29 08:58:17 +01:00
Stanislav Malyshev
39bf35ca87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix libmagic buffer overflow issue (CVE-2019-18218)
bump version
set versions for release
2019-10-28 20:47:57 -07:00
Christoph M. Becker
c2f56d0546
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add support for Interbase 1 dialect
2019-10-28 16:41:16 +01:00
Christoph M. Becker
b897d19552
Add missing zend_parse_parameters_none()
...
We fix the trivial cases; some others need further discussion, see
<https://news-web.php.net/php.internals/107723 >.
2019-10-28 16:18:15 +01:00
Nikita Popov
87fefd165a
Remove ability to unbind $this of closures if used
...
This was deprecated in PHP 7.4, removing it for PHP 8.0.
2019-10-28 13:24:07 +01:00
Fabien Villepinte
26579db403
Define IS_WINDOWS in the test runner
...
Avoid code duplication
Closes GH-4866.
2019-10-28 13:14:50 +01:00
Christoph M. Becker
f9a98f6dbd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78751 : Serialising DatePeriod converts DateTimeImmutable
2019-10-28 13:09:44 +01:00
Christoph M. Becker
84f2a984d4
Elevate warnings to Error Exceptions in ext/bcmath
...
`bcdiv()` and `bcmod()` throw DivisionByZeroError if the divisor is 0,
which matches the behavior of the `/` and `%` operators, and `bcsqrt()`
throws ValueError for negative operands.
2019-10-28 12:22:31 +01:00
kharhamel
82dc9a31c3
Convert warnings to Errors in sprintf() functions
...
Closes GH-4837.
2019-10-28 11:58:59 +01:00
Tyson Andre
9d48bf5152
Fix miscellaneous typos in docs and error messages
...
Closes GH-4863.
2019-10-28 11:44:08 +01:00
Nikita Popov
742aaaa150
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove redundant variable rv and optimize code
2019-10-28 11:42:57 +01:00
Tyson Andre
e7ff590d0d
Optimize array_slice for packed arrays with large offsets
...
If the offset is 100000, and there are no gaps in the packed/unpacked array,
then advance the pointer once by 100000,
instead of looping and skipping 100000 times.
Add a new test of array_slice handling unset offsets.
Closes GH-4860.
2019-10-28 11:30:59 +01:00
Nikita Popov
9f98fddb7b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78752
2019-10-28 10:28:24 +01:00
Christoph M. Becker
addc78f379
Revert "Add missing zend_parse_parameters_none()"
...
This reverts commit ef439ec895 .
Test failures need to be resolved first.
2019-10-27 13:41:41 +01:00
Christoph M. Becker
ef439ec895
Add missing zend_parse_parameters_none()
2019-10-27 13:12:45 +01:00
Nikita Popov
0040b2a958
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Try one more FD in ext/standard/tests/file/php_fd_wrapper_04.phpt
2019-10-27 09:36:44 +01:00
Christoph M. Becker
913a449b27
Remove generic type annotations
...
Cf. <https://github.com/php/php-src/commit/de69a9d3ebad41da9bc7c59f836bb141f0af70f8#r35675846 >.
2019-10-26 16:24:53 +02:00
Christoph M. Becker
b823864926
Fix and make reflection arginfo stubs more specific
2019-10-26 16:17:02 +02:00
Fabien Villepinte
8a88f72beb
Merge branch 'PHP-7.4'
2019-10-26 16:08:00 +02:00
Christoph M. Becker
de69a9d3eb
Improve reflection arginfo stubs
2019-10-26 12:32:12 +02:00
Thomas Gerbet
c9fc076a75
Add stubs for ext-reflection
2019-10-26 12:32:12 +02:00
Nikita Popov
75279b50a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add ARM64 CI to Travis
2019-10-25 16:38:13 +02:00
Nikita Popov
e63a44dd03
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78226 : Don't call __set() on uninitialized typed properties
2019-10-25 16:32:14 +02:00
Nikita Popov
7d056fc6c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78747
2019-10-25 12:53:24 +02:00
Nikita Popov
225a02f3d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimize VERIFY_RETURN_TYPE for TMP operands as well
2019-10-25 11:41:41 +02:00
Nikita Popov
711e2a1216
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check class linking in VERIFY_RETURN_TYPE optimization
Simplify travis setup scripts
2019-10-25 11:25:49 +02:00
Nikita Popov
c858d17f06
Optimize instanceof_function
...
Split out the simple equality check into an inline function --
this is one of the common cases.
Replace instanceof_function_ex with zend_class_implements_interface.
There are a few more places where it may be used.
2019-10-25 10:51:17 +02:00
Nikita Popov
bd7b1afd6e
Check type is set when verifying variadic args
...
Weird that there was no test for this...
This code is somewhat inefficient, because it will be performed
for every arg, rather than only once.
2019-10-25 10:27:45 +02:00
Nikita Popov
296269cfe8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove recursive check from instanceof_interface
2019-10-25 10:20:19 +02:00
Nikita Popov
374cbfe568
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimize instanceof_class/interface
2019-10-24 17:50:53 +02:00
Nikita Popov
19bea48c9a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean up and clarify instanceof_function_ex()
2019-10-24 17:42:04 +02:00
Nikita Popov
d71a6ee54f
Remove unnecessary type checks in verify_missing_return_type
...
We don't emit VERIFY_RETURN_TYPE for void functions, so there's
no need to check it here. It's always an error.
2019-10-24 15:52:06 +02:00
Nikita Popov
9666d7a753
Don't check ZEND_TYPE_IS_SET() in zend_check_type()
...
Usually this function is only used if we already know that there is
a type. Add checks to the places where we don't.
2019-10-24 15:41:26 +02:00
Nikita Popov
1f497b3db7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip IntlTimeZone::getOffset() error tests on non-x86
2019-10-24 15:26:24 +02:00
Nikita Popov
45deb01cc2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip large ftruncate test if large files not supported
Don't test "blocks" in lstat_stat_variation7.phpt
Increase FD used in php://fd test
Use posix_getuid() to check for root in pcntl_setpriority() test
2019-10-24 14:47:15 +02:00
Remi Collet
97f994762f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo and better wording
2019-10-24 07:43:56 +02:00
Remi Collet
ff09d39328
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added suppot for glob() wildcard matching in ffi.preload directive
Reverting push to wrong repo
Update alloc patch
2019-10-24 07:40:27 +02:00
Dmitry Stogov
aacea14359
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Ignore ZEND_FFI_TYPE_OWNED flag
2019-10-23 19:54:52 +03:00
Nikita Popov
62fcb11cbd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix aarch64 crc32 implementation
2019-10-23 17:42:16 +02:00
Nikita Popov
13e0c5f4c9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't autoload when checking property types
2019-10-23 12:24:01 +02:00
Nikita Popov
ae46df0cb9
JIT: Add option to disable SSA checks
2019-10-23 11:25:13 +02:00
Nikita Popov
fe6c420b02
JIT: Handle typed refs in assign dim
2019-10-23 11:25:10 +02:00
Colin O'Dell
e7335eb420
Allow array_splice() length to be null
2019-10-23 11:22:12 +02:00
Colin O'Dell
80103bdb78
Document the changes to substr functions
2019-10-23 11:22:12 +02:00
Nikita Popov
8efbbcae0c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use ICU's CXXFLAGS when using pkg-config
2019-10-23 11:18:05 +02:00
Nikita Popov
bc96e86417
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add "-pthread" to EXTRA_LDFLAGS_PROGRAM as well
2019-10-23 11:07:49 +02:00
Christoph M. Becker
f65d42d56c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added missing call to ZipArchive::close()
2019-10-23 10:47:59 +02:00
Nikita Popov
ecc309bfb9
JIT: Fix handling of typed ref in assign dim op
2019-10-23 10:08:25 +02:00
Nikita Popov
2f80fbe3ae
JIT: Fix handling of typed ref in assign op
2019-10-23 10:08:09 +02:00
Nikita Popov
8cdbcd7d91
JIT: Check exception after jit_assign_dim_op_helper
2019-10-23 10:07:59 +02:00
Nikita Popov
097184cae7
JIT: UNDEF result on "Illegal offset type" exception
2019-10-23 10:07:48 +02:00
Remi Collet
3d9bbd1b53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add new ffi.preload option in php.ini and display ini entries in MINFO
2019-10-23 07:49:29 +02:00
Christoph M. Becker
d04297a899
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
2019-10-22 17:54:28 +02:00
Dmitry Stogov
626a5837c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow loading FFI bindings through ffi.preload directive
2019-10-22 17:53:24 +03:00
Colin O'Dell
e6d3146bdc
Accept null lengths for substr functions()
...
If a null $length is passed to any of these functions, behave as if no
parameter was passed:
- substr()
- substr_count()
- substr_compare()
- iconv_substr()
2019-10-22 12:09:04 +02:00
Colin O'Dell
8ccd58baca
Add Z_PARAM_LONG_OR_NULL macro
2019-10-22 12:09:04 +02:00
Christoph M. Becker
c6cdfa967c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78716 : Function name mangling is wrong for some parameter types
2019-10-22 11:39:40 +02:00
Nikita Popov
530a8a3854
Fix and undeprecate ReflectionType::__toString()
...
Add deprecated _ZendTestClass::__toString() method to preserve
an existing test.
ReflectionType::__toString() will now return a complete
representation of the type, as it should have originally. Users
that relied on nullability being absent should have been pushed
to ReflectionNamedType::getName() by the deprecation of
ReflectionType::__toString() in PHP 7.1 / PHP 7.4.
2019-10-22 11:26:02 +02:00
Nikita Popov
1faea28cdd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add a run with opcache to the coverage job
2019-10-22 11:13:02 +02:00
Christoph M. Becker
0ef27dbe8a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-10-22 09:53:05 +02:00
Remi Collet
3dc62ef8cd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add NEWS entry
2019-10-22 09:38:18 +02:00
Stanislav Malyshev
6bef57f2e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78599 (env_path_info underflow can lead to RCE) (CVE-2019-11043)
bump versions after release
set versions for release
2019-10-21 13:17:32 -07:00
Fabien Villepinte
084d401beb
Merge branch 'PHP-7.4'
2019-10-21 21:33:30 +02:00
Fabien Villepinte
95390972f1
Merge branch 'PHP-7.4'
2019-10-21 21:17:50 +02:00
Dmitry Stogov
42f4bdba2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78512 (Cannot make preload work)
2019-10-21 14:53:03 +03:00
Nikita Popov
d927b745d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix static prop cleanup for dl'ed internal classes
2019-10-21 12:17:43 +02:00
Nikita Popov
065d00f241
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix leak with cycle in static prop of internal class
2019-10-21 10:27:35 +02:00
Christoph M. Becker
f7c61c070f
Add ext/sodium arginfo stubs
2019-10-21 10:19:57 +02:00
Joe Watkins
174ab25fd4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78697 : inaccurate error message
2019-10-21 09:25:24 +02:00
Stanislav Malyshev
c797ed5cc7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78633 : Heap buffer overflow (read) in mb_eregi
2019-10-20 23:20:26 -07:00
Jakub Zelenka
878f8b0b23
Merge branch 'PHP-7.4'
2019-10-20 16:59:30 +01:00
Fabien Villepinte
cdacad8e50
Merge branch 'PHP-7.4'
2019-10-20 10:57:31 +02:00
Fabien Villepinte
08b7279036
Merge branch 'PHP-7.4'
2019-10-19 22:12:18 +02:00
Christoph M. Becker
0436bc875e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix miscellaneous typos in docs
2019-10-19 19:20:25 +02:00
Fabien Villepinte
23f3b54906
Merge branch 'PHP-7.4'
2019-10-19 15:44:57 +02:00
Christoph M. Becker
284e993791
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78684 : PCRE bug72463_2 test is sending emails on Linux
2019-10-19 12:59:59 +02:00
Christoph M. Becker
b00cc3378c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78694 : Appending to a variant array causes segfault
2019-10-19 11:52:38 +02:00
Nikita Popov
49327e2e15
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve exif tag name fetching
Implement a cache for exif tag name lookups
Limit the amount of errors generated during exif parsing
2019-10-18 16:55:46 +02:00
Christoph M. Becker
43a1363a05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case
2019-10-18 16:24:14 +02:00
Christoph M. Becker
2484f1e88a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #70153 \DateInterval incorrectly unserialized
2019-10-18 15:33:58 +02:00
Christoph M. Becker
ecc9588d0c
Properly handle non resources passed to socket_select()
...
As of PHP 8.0.0, failing `zend_fetch_resource_ex()` throws a TypeError,
so we cannot simply skip non resources in the `$read`, `$write` and
`$except` arrays. Instead we bail out. Since these arrays are already
checked in `php_sock_array_to_fd_set()`, we remove the additional check
in `php_sock_array_from_fd_set()`.
2019-10-18 14:16:25 +02:00
Christoph M. Becker
04d5086578
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update array access syntax deprecated
2019-10-17 23:40:30 +02:00
Dmitry Stogov
605e0de357
Clenup "smart branch" handling
2019-10-18 00:11:30 +03:00
Dmitry Stogov
65c4cc231d
Fixed wrong shift
2019-10-17 23:31:47 +03:00
Nikita Popov
e80934d747
Pass cache slot when printing type errors
...
Instead of using a separate ce.
2019-10-17 17:06:48 +02:00
Nikita Popov
9a634a9c6b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Integrate property types with variance system
2019-10-17 13:42:47 +02:00
Dmitry Stogov
3df64af965
Relay on DO_ICALL/DO_UCALL opcode to avoid generation of useless code
2019-10-17 12:55:36 +03:00
Dmitry Stogov
3a88c5b87a
Fixed exception handling
2019-10-16 22:38:01 +03:00
Fabien Villepinte
86c33b8ddd
Merge branch 'PHP-7.4'
2019-10-16 20:53:52 +02:00
Dmitry Stogov
5431837a6c
Clenup "smart branch" handling
2019-10-16 12:28:30 +03:00
Dmitry Stogov
51da02375a
Fixed exception handling
2019-10-16 02:36:06 +03:00
Dmitry Stogov
902b00e68e
Fixed exception source
2019-10-16 01:26:35 +03:00
Derick Rethans
087d8cd214
Merge branch 'PHP-7.4'
2019-10-15 21:01:05 +01:00
Fabien Villepinte
3d22c80fc2
Test an error case with DOMDocument::createEntityReference
2019-10-15 21:56:44 +02:00
Sara Golemon
b8bf8a4372
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Silence undefined index warning when openssl not available.
2019-10-15 15:38:24 -04:00
Christoph M. Becker
6ff5316c7f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent parallel testing conflicts
2019-10-15 16:30:07 +02:00
Christoph M. Becker
8f0a9199ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS for 7.4.0RC5
Update NEWS for PHP 7.4.0RC4
2019-10-15 16:28:04 +02:00
Christoph M. Becker
273731fb76
Add Zend class/interface arginfo stubs
...
We also change `Generator::throw()` to expect a `Throwable` in the
first place, and we now throw a TypeError instead of returning `false`
from `Exception::getTraceAsString()`.
2019-10-15 16:21:00 +02:00
Nikita Popov
5c24f8042d
Promote "Cannot use parent" to fatal error
2019-10-15 11:46:48 +02:00
Dmitry Stogov
0d55456d73
Use "const" qualifier
2019-10-15 11:06:11 +03:00
Dmitry Stogov
cef1960ce7
Use "const" qualifier
2019-10-14 21:49:08 +03:00
Dmitry Stogov
5213612359
Fixed compilation warning
2019-10-14 21:47:46 +03:00
Dmitry Stogov
2958fecb8b
Fixed incorrect JIT compilation
2019-10-14 21:32:10 +03:00
Joe Watkins
f8e3970ff0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix checksum calculation for opcache
2019-10-14 16:50:56 +02:00
Nikita Popov
4e563e6c95
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix handling of overflowing invalid octal in tokenizer
2019-10-14 16:37:27 +02:00
Dmitry Stogov
3f50922aee
Fixed incorrect JIT compilation
2019-10-14 16:45:58 +03:00
Dmitry Stogov
4273865bba
Drop checkpoint that leaded to use after free
2019-10-14 13:37:22 +03:00
Nikita Popov
9257fa79be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add "-pthread" to EXTRA_LDFLAGS_PROGRAM as well
2019-10-14 11:34:38 +02:00
Dmitry Stogov
5197d0cd5e
Reduced number of CFG pass iterations
2019-10-14 11:37:10 +03:00
Fabien Villepinte
6daa54d3be
Fix grammar in skipif messages
2019-10-12 23:18:56 +02:00
Christoph M. Becker
77bd1ce60d
Just return after exception has been thrown
2019-10-12 23:09:23 +02:00
Thomas Gerbet
428bd3d908
Add stubs for ext-sockets
2019-10-12 17:08:24 +02:00
Christoph M. Becker
cc8739cfb9
Fix potentially borked test case
...
If interface 'lo' is not available, `socket_set_option()` may warn,
which would cause the test to be marked as borked. Thus we silence the
function call.
2019-10-12 16:48:45 +02:00
Christoph M. Becker
52f0610b74
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case
2019-10-12 16:29:42 +02:00
Christoph M. Becker
642f80636e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix potential heap corruption
2019-10-12 16:16:44 +02:00
Christoph M. Becker
993463a65e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78665 : Multicasting may leak memory
2019-10-12 14:46:36 +02:00
Christoph M. Becker
f22608913c
Appveyor: switch master to VS 2019
2019-10-11 18:00:49 +02:00
Nikita Popov
242b5547a2
Merge branch 'PHP-7.4'
2019-10-11 17:44:59 +02:00
Nikita Popov
17f91360bd
Merge branch 'PHP-7.4'
2019-10-11 17:10:15 +02:00
Nikita Popov
393aa057d3
Merge branch 'PHP-7.4'
2019-10-11 16:51:50 +02:00
Nikita Popov
e35bdb4912
Add fdiv() function
...
The fdiv() function is part of the fmod() / intdiv() family. It
implements a floating-point division with IEEE-754 semantics.
That is, division by zero is considered well-defined and does not
trigger any kind of diagnostic. Instead one of INF, -INF or NAN
will be returned, depending on the case.
This is in preparation for throwing DivisionByZeroError from the
standard division operator.
2019-10-11 16:36:11 +02:00
Remi Collet
28ed73d94a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Fix #78662 : stream_write bad error detection
2019-10-11 13:38:29 +02:00
Nikita Popov
db233501ff
Use clean shutdown on uncaught exception
2019-10-11 12:41:15 +02:00
Christoph M. Becker
aab1445b4c
Don't specify method return values in stubs
...
We also fix the @return annotation of `::open()` and `::XML()`, which
return an `XMLReader` instance when called statically.
2019-10-11 12:19:00 +02:00
Dmitry Stogov
daac578b51
Fixed JIT of preloaded script
2019-10-11 12:54:07 +03:00
Dmitry Stogov
2068ce9adf
Use RT_CONSTANT() or CT_CONSTANT() macro depending on ZEND_ACC_DONE_PASS_TWO flag
2019-10-11 12:54:07 +03:00
Nikita Popov
85c8c5bfac
Merge branch 'PHP-7.4'
2019-10-11 10:58:03 +02:00
Dmitry Stogov
3db5dc44bc
JMP optimization cleanup.
...
Make JMP optimisation in pass3 and JMP optimization from CFG pass to be almost identical.
2019-10-11 11:23:02 +03:00
Dmitry Stogov
3ad20f80f5
Revert/redo pass_two only once
2019-10-10 23:20:36 +03:00
Dmitry Stogov
ca265b04d0
Removed #if HAVE_DFA_PASS
2019-10-10 21:46:24 +03:00
Nikita Popov
3df043324e
Merge branch 'PHP-7.4'
2019-10-10 16:15:00 +02:00
Dmitry Stogov
94c469ac98
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fixed CLI/CGI/FPM build, when they are built together with Apache SAPI"
Revert "Don't buid static libaraies when only DSO required"
Revert "Link executable files using non PIC object files. This reduces PIC overhead and improves performance."
2019-10-10 17:00:45 +03:00
Fabien Villepinte
78c753e8ee
Fix typo in tests
2019-10-10 15:57:57 +02:00
Nikita Popov
93b39f68f5
Merge branch 'PHP-7.4'
2019-10-10 15:17:44 +02:00
Dmitry Stogov
833821ac24
Eliminate CHECK_VAR instructions for defined CVs
2019-10-10 16:07:31 +03:00
Nikita Popov
2118f6a898
Merge branch 'PHP-7.4'
2019-10-10 14:44:53 +02:00
Nikita Popov
fea482ee5c
Merge branch 'PHP-7.4'
2019-10-10 12:45:38 +02:00
Nikita Popov
f1aff654be
Use php stream in exif fuzzer
...
This has the main benefit that we don't go through the
realpath cache, which will cause leak checking to be
disabled.
2019-10-10 12:33:15 +02:00
Nikita Popov
a748d27c9b
Merge branch 'PHP-7.4'
2019-10-10 12:08:17 +02:00
Nikita Popov
1ab489e99a
Merge branch 'PHP-7.4'
2019-10-10 11:42:05 +02:00
Dmitry Stogov
6a459a8a3f
Separate common code and add few more patterns
2019-10-10 12:19:06 +03:00
Nikita Popov
595e8c6773
Merge branch 'PHP-7.4'
2019-10-10 11:17:55 +02:00
Dmitry Stogov
0cb977a691
Fixed edge cases introduced by 170ed1f5a7
2019-10-10 11:48:31 +03:00
Nikita Popov
c1da10b77b
Set display_startup_errors=0 when running skipif
...
Now that we're displaying errors in skipif, suppress this particular
category. Otherwise we get warnings in the SKIPIF of tests with
EXTENSION where the extension does not exist, and there's no way
to suppress them.
2019-10-10 10:43:21 +02:00
Nikita Popov
51501dacb1
Merge branch 'PHP-7.4'
2019-10-10 10:08:32 +02:00
Nikita Popov
b093abcde3
Fix exception handling for call_user_func_array() with invalid type
...
Now that this throws an exception, the call frame cleanup will be
handled by exception handling -- remove it here to avoid double
frees.
2019-10-10 09:55:19 +02:00
Dmitry Stogov
d9964efe23
One more place
2019-10-10 02:21:37 +03:00
Dmitry Stogov
bf5d299ef4
Fixed typo
2019-10-10 02:17:50 +03:00
Dmitry Stogov
fa0a17a76f
Move ECHO handling into common switch
2019-10-09 23:24:41 +03:00
Dmitry Stogov
fd69af38c8
Cleanup JMP optimization. Remove duplicate code (conditional jums with constant operand) and outdated commented code.
2019-10-09 23:07:32 +03:00
Dmitry Stogov
78a1c8c811
Cleanup JMP optimization pass
2019-10-09 22:52:09 +03:00
Nikita Popov
b53b2f3e82
Merge branch 'PHP-7.4'
2019-10-09 17:34:00 +02:00
Christoph M. Becker
508a179568
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78656 : Parse errors classified as highest log-level
2019-10-09 17:30:37 +02:00
Nikita Popov
efed9f6b15
Merge branch 'PHP-7.4'
2019-10-09 17:01:02 +02:00
Dmitry Stogov
d37f5da75e
typo and cleanup
2019-10-09 17:58:35 +03:00
Nikita Popov
cb657440b4
Merge branch 'PHP-7.4'
2019-10-09 14:58:17 +02:00
Christoph M. Becker
73e9acbaff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78650 : new COM Crash
2019-10-09 14:17:25 +02:00
Nikita Popov
9c9a833f9c
Actually remove the YIELD key specialization
...
I only adjusted the code before, without switching to TMPVAR.
2019-10-09 14:11:07 +02:00
Nikita Popov
165a065a12
Reduce YIELD key specialization
...
Keeping the value specialization for now, which is more commonly
applicable.
2019-10-09 13:59:07 +02:00
Nikita Popov
da3b245715
Reduce YIELD_FROM specialization
...
Generator delegation is a complex compound operation, it does not
make a lot of sense to optimize refcounting here to this degree.
2019-10-09 13:53:07 +02:00
Nikita Popov
2aba10be4a
Reduce ZEND_THROW specialization
...
Throwing is very expensive due to the need of gathering the backtrace,
so it makes little sense to optimize refcounting to this degree.
2019-10-09 13:17:25 +02:00
Dmitry Stogov
f6f32f2cf0
SAMRT BRANCH improvement.
...
Avoid need of insertion NOP opcoes between unrelated SMART BRANCH instruction and following JMPZ/JMPNZ.
Now instead of checking the opcode of following instruction, the same information is encoded into SMART BRANH result_type.
2019-10-09 13:48:39 +03:00
Dmitry Stogov
170ed1f5a7
Otimize out useless QM_ASSIGN
2019-10-09 09:08:25 +03:00
Gabriel Caruso
95181553c8
Add missing zend_parse_parameters_none() checks
...
Closes GH-4796.
2019-10-08 23:10:18 +02:00
Nikita Popov
b0cf34a30c
Merge branch 'PHP-7.4'
2019-10-08 18:20:31 +02:00
Nikita Popov
bd21e202b9
Reduce oniguruma limits in fuzzing sapi
...
The defaults are fairly conservative and may still take quite a
bit to match a single expression. Reduce them by a factor of 10x
to speed up fuzzing.
2019-10-08 17:38:49 +02:00
Nikita Popov
a32f130f94
Merge branch 'PHP-7.4'
2019-10-08 17:34:25 +02:00
Nikita Popov
7c1bc91e52
Merge branch 'PHP-7.4'
2019-10-08 17:19:52 +02:00
Nikita Popov
571a3bfc6c
Merge branch 'PHP-7.4'
2019-10-08 16:14:19 +02:00
Dmitry Stogov
31c3b0c7cc
Fixed Zend/tests/bug70785.phpt on builds wothout global regesters
2019-10-08 17:08:59 +03:00
Nikita Popov
cffa81e438
Merge branch 'PHP-7.4'
2019-10-08 15:52:18 +02:00
Dmitry Stogov
56ae3f6c4a
Added "const" qualifier
2019-10-08 16:50:04 +03:00
Dmitry Stogov
eec04f6b56
Encapsulate all SMART BRANCH related logic inside macros. Result of SMART BRANCH may be uninitialized (on exception).
2019-10-08 16:37:21 +03:00
Nikita Popov
d98497615c
Merge branch 'PHP-7.4'
2019-10-08 14:33:01 +02:00
Christoph M. Becker
a11f85805a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIFs in exif tests
2019-10-08 14:13:23 +02:00
Nikita Popov
41526976c5
Merge branch 'PHP-7.4'
2019-10-08 12:35:47 +02:00
Christoph M. Becker
8548a1bdec
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78642 : Wrong libiconv version displayed
2019-10-08 12:11:19 +02:00
Christoph M. Becker
1c0ebef819
Merge branch 'PHP-7.4'
...
* PHP-7.4:
7.3.12 is next
2019-10-08 12:06:11 +02:00
Remi Collet
0a361dd1b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next is 7.2.25
2019-10-08 11:37:09 +02:00
Remi Collet
3dabce087c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add librt for opcache
2019-10-08 10:49:30 +02:00
Christoph M. Becker
e9be4622c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78641 : addGlob can modify given remove_path value
2019-10-08 09:50:43 +02:00
Tyson Andre
1065becb57
Merge branch 'PHP-7.4'
2019-10-07 19:33:03 -04:00
Markus Staab
0eee18097f
Fix typo [ci skip]
2019-10-07 23:11:19 +02:00
Christoph M. Becker
121bb732f9
Fix com_dotnet build
2019-10-07 19:39:38 +02:00
Nikita Popov
9522bbaf79
Merge branch 'PHP-7.4'
2019-10-07 17:52:54 +02:00
Nikita Popov
e9f4676b3f
Merge branch 'PHP-7.4'
2019-10-07 17:31:12 +02:00
Dmitry Stogov
b02b81299c
Comparison cleanup:
...
- introduce zend_compare() that returns -1,0,1 dirctly (without intermediate zval)
- remove compare_objects() object handler, and keep only compare() handler
2019-10-07 17:57:49 +03:00
Christoph M. Becker
e2100619ac
Expect appropriate parameter type in the first place
...
`mb_encode_numericentity()` and `mb_decode_numericentity()` accepted
arbitrary zvals as `$convmap`, but ignored anything else than arrays.
This appears to be an unresolved relict of their ZPP conversion for
PHP 5.3[1]. We now expect an array in the first place.
We also expect `count($convmap)` to be a multiple of four (else we
throw a `ValueError`), and do no longer special case empty `$convmap`.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=1c77f594294aee9d60e7309279c616c01c39ba9d >
2019-10-07 16:48:08 +02:00
Nikita Popov
4802df5b3c
Merge branch 'PHP-7.4'
2019-10-07 16:44:44 +02:00
Nikita Popov
57670c6769
Check num required args is correct in debug builds
...
Also replace the assertion failure with an E_CORE_ERROR that
includes the function name, so these are easier to debug.
2019-10-07 16:34:05 +02:00
Nikita Popov
5f80eb7842
Fix required number of arguments in stubs
...
* get_parent_class() argument is optional
* Mark array_filter() $callback as optional
* The $base of gmp_strval() is optional
* DateTime constructor also accepts zero arguments
* hash_update_file() stream context is optional
* xmlwriter_write_dtd_entity() $isparam argument is optional
2019-10-07 16:33:41 +02:00
Nikita Popov
c9d4696f76
Merge branch 'PHP-7.4'
2019-10-07 16:32:42 +02:00
Nikita Popov
9b28553d45
Merge branch 'PHP-7.4'
2019-10-07 13:24:24 +02:00
Christoph M. Becker
e54d2efdda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bail out if JUNIT is not enabled
2019-10-07 13:22:47 +02:00
Nikita Popov
749134f867
Merge branch 'PHP-7.4'
2019-10-07 12:43:51 +02:00
Christoph M. Becker
d37454d9f0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Delete temporary .post files of run-tests.php
2019-10-07 12:18:27 +02:00
theodorejb
ef9736e062
Convert string function arginfo to PHP stubs
2019-10-07 11:13:16 +02:00
Nikita Popov
fdc133063d
Convert count_chars invalid mode error to ValueError
2019-10-07 11:10:05 +02:00
Nikita Popov
2fcd454480
Merge branch 'PHP-7.4'
2019-10-07 10:51:22 +02:00
Mark
52376c177d
Fix bug #78563
...
Make XmlParser final, unclonable and unserializable.
Closes GH-4778.
2019-10-07 10:24:41 +02:00
Tyson Andre
dd61edfd7c
Update opcache return type info for gd functions
...
Many of these now have reflection types,
making the old signatures redundant or inaccurate.
(Some methods also throw Errors instead of returning null/false)
Closes GH-4785.
2019-10-07 10:16:50 +02:00
Tyson Andre
02f2056864
Update zend_func_info for pcre/curl/iconv/json
...
preg_quote and curl_error now have a non-null return type of `string`.
zend_func_info now duplicates many real reflection types
(some of which are now non-null)
Closes GH-4788.
2019-10-07 10:16:31 +02:00
Tyson Andre
52dfe873ab
Remove redundant zend_func_info for zlib/hash/session
...
E.g. hash_equals is outdated - it has a non-null reflection type of bool.
Remove redundant signatures for types that are obviously not reference
counted (`F0`).
Closes GH-4787.
2019-10-07 10:16:08 +02:00
Tyson Andre
d0f7a7e7c9
Remove redundant func info for ctype/bc/fileinfo
...
This is limited to types that aren't reference counted.
I assume the info that there is exactly one reference
should be preserved (e.g. for bcsqrt)
Closes GH-4786.
2019-10-07 10:15:50 +02:00
Tyson Andre
3c2ba240a9
Update zend_func_info for zend, array extensions
...
Some of these functions now have real reflection types
and will throw instead of return null/false.
Others provide the exact same reflection type information
that zend_func_info does. (or would after updating outdated types)
Closes GH-4790.
2019-10-07 10:15:30 +02:00
Nikita Popov
647b1c7fcf
Remove most uses of ZEND_PARSE_PARAMETERS_END_EX()
...
As ZPP now throws, it makes no sense to specify an explicit return
value.
2019-10-07 10:02:18 +02:00
Nikita Popov
5ff7347a66
Merge branch 'PHP-7.4'
...
[ci skip]
2019-10-07 09:51:28 +02:00
Christoph M. Becker
2ff42076ff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78623 : Regression caused by "SP call yields additional empty result set"
2019-10-07 09:19:08 +02:00
Christoph M. Becker
8f7238ed5c
Explicitly declare empty parameter list
2019-10-06 19:04:51 +02:00
Christoph M. Becker
058fed6cd9
Just return on failing ZPP
2019-10-06 18:00:17 +02:00
Christoph M. Becker
013506779c
Add missing zend_parse_parameters_none()
2019-10-06 17:56:40 +02:00
Christoph M. Becker
0a47096c08
Add MBString arginfo stubs
2019-10-06 17:45:32 +02:00
Thomas Gerbet
ff00f49673
Add stubs for ext-xmlrpc
2019-10-06 13:47:21 +02:00
Nikita Popov
21e631e473
Merge branch 'PHP-7.4'
2019-10-06 10:07:57 +02:00
Benjamin Eberlei
e40da2661a
Update NEWS
2019-10-05 19:01:50 +02:00
Benjamin Eberlei
6c963694b1
ext/dom: Add global registerNodeNS flag on DOMXPath ctor and property.
2019-10-05 18:56:58 +02:00
Christoph M. Becker
375ceefec0
Add missing zend_parse_parameters_none()
2019-10-05 18:22:01 +02:00
Christoph M. Becker
e3abc534eb
Add ext/pspell arginfo stubs
2019-10-05 11:11:52 +02:00
Christoph M. Becker
49b98b4d5c
Add arginfo stub for JsonSerializable
2019-10-05 11:10:30 +02:00
Nikita Popov
5050507282
Merge branch 'PHP-7.4'
2019-10-04 22:47:10 +02:00
Nikita Popov
43358cc7b6
Merge branch 'PHP-7.4'
2019-10-04 16:04:42 +02:00
Christoph M. Becker
487e6e9eca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Split intl tests for ICU 65
2019-10-04 13:55:33 +02:00
Nikita Popov
fec0ff8cb0
Merge branch 'PHP-7.4'
2019-10-04 12:42:58 +02:00
Dmitry Stogov
dc3c8c75da
Prefer optimization without JMPZNZ instruction
2019-10-04 12:52:46 +03:00
Nikita Popov
d44cf9b539
Replace "unexpected character" warning with ParseError
...
Closes GH-4767.
2019-10-04 11:28:58 +02:00
Nikita Popov
11d139625f
Merge branch 'PHP-7.4'
2019-10-04 10:39:32 +02:00
Nikita Popov
c10cd739a7
Merge branch 'PHP-7.4'
2019-10-04 10:12:16 +02:00
Christoph M. Becker
0edcd105f3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78620 : Out of memory error
2019-10-04 09:14:36 +02:00
Dmitry Stogov
3f069b19a0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78614 (Does not compile with DTRACE anymore)
2019-10-04 10:10:53 +03:00
Joe Watkins
26baf5454b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix #78624 : session_gc return value for user defined session handlers
2019-10-04 06:16:41 +02:00
Joe Watkins
4731f57882
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in CODING_STANDARDS.md [ci skip]
2019-10-04 05:42:44 +02:00
Dmitry Stogov
bf56daa8c8
Remove "finally" restriction.
2019-10-04 02:53:24 +03:00
Dmitry Stogov
204660fd9a
Simplify protection from infinity loops
2019-10-04 02:04:00 +03:00
Dmitry Stogov
3a78c3aaf5
Moved non-constant JMP optimizations from pass1 to pass3.
...
Removed useless "break"s, that stopped optimization too early.
2019-10-04 00:27:49 +03:00
Dmitry Stogov
39d1e50b2d
Avoid "$a = $a + ..." to "$a += ..." conversion (compound assignments work slower).
...
Added DFA optimization patters (e.g. "$a = $a + 1" to "++$a"), that previously worked only for compound assignments.
2019-10-03 16:33:17 +03:00
Dmitry Stogov
de3c1eb85e
Move obvious optimization patterns from pass1 directly to compiler
2019-10-03 14:57:20 +03:00
Dmitry Stogov
a5465728c2
Added missing rules
2019-10-03 14:56:02 +03:00
Dmitry Stogov
c1de93efbe
Fixed comments
2019-10-03 13:55:58 +03:00
Dmitry Stogov
59c828a8c4
Added missing rules
2019-10-03 13:54:08 +03:00
Joe Watkins
114060e2f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #76809 (SSL settings aren't respected when persistent connection is reused)
2019-10-03 07:13:49 +02:00
Joe Watkins
733a1e9df0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #76859 stream_get_line skips data if used with data-generating filter
2019-10-03 06:52:25 +02:00
Dmitry Stogov
1e4c553e0d
Cleanup JMP optimization rules
2019-10-03 04:26:40 +03:00
Dmitry Stogov
6cac8d5b3b
Optimizer cleanup
...
- all rules from pass2 moved to pass1
- all JMP unrelated rules from pass3 moved to pass1
- pass3 keeps only JMP optimization rules
- pass2.c is removed
- pass1_5.c remaned to pass1.c ("_5" was related to PHP 5)
2019-10-03 02:18:16 +03:00
Derick Rethans
a0eef7067b
Updated to version 2019.3 (2019c)
2019-10-02 23:39:12 +01:00
Derick Rethans
bf0a39a1c6
Empty merge
2019-10-02 23:39:12 +01:00
Christoph M. Becker
f6c685a750
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix #78620 : Out of memory error"
2019-10-02 19:03:48 +02:00
Christoph M. Becker
d0672fc005
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78620 : Out of memory error
2019-10-02 18:22:11 +02:00
theodorejb
e60d9da167
Fix array_fill stub return type
...
This was missed in commit d5e9ef8f0f .
2019-10-02 18:01:27 +02:00
Fabien Villepinte
76c8f2ed34
Fix regex in generate_parser_corpus.php
...
The next section after --FILE-- is not necessarily --EXPECT--.
Accept any section.
Closes GH-4770.
2019-10-02 16:56:41 +02:00
tyage
4d6f88e215
Fix #72374 : remove_path strips first char of filename
2019-10-02 15:33:28 +02:00
Nikita Popov
8a2a9e05a4
Merge branch 'PHP-7.4'
2019-10-02 14:41:25 +02:00
George Peter Banyard
d5e9ef8f0f
Promote warnings to error in array_flip()
...
Closes GH-4576.
2019-10-02 12:31:02 +02:00
Nikita Popov
d882795d78
Merge branch 'PHP-7.4'
2019-10-02 12:08:12 +02:00
Christoph M. Becker
9fc5471578
Fix borked test case
...
Setting `CURLOPT_STDERR` can trigger a warning, what causes the test to
be marked as borked as of commit e49593a[1]. To avoid this, we silence
the `curl_setopt()` call.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=e49593a7c3159a5673ce74b4e5133f1264dc313f >
2019-10-02 11:37:33 +02:00
Nikita Popov
52ba5efaf7
Merge branch 'PHP-7.4'
2019-10-02 11:34:54 +02:00
peter279k
1ea329d457
Fix bug #77204
...
Include opened path in getimagesize() error message
2019-10-02 11:21:17 +02:00
Nikita Popov
a653240bd7
Prune opcache func info
...
Remove opcache func info for some functions which have arg info
with same or better accuracy (this is incomplete, we can drop more).
2019-10-02 10:54:47 +02:00
George Peter Banyard
1ca4ab09a5
Promote warnings to errors in array_push()
...
This is in line with the engine change from
https://wiki.php.net/rfc/engine_warnings .
2019-10-02 10:38:23 +02:00
Nikita Popov
2f92957fd3
Convert some notices to warnings
...
Part of https://wiki.php.net/rfc/engine_warnings .
2019-10-02 10:34:08 +02:00
Nikita Popov
2041c9abf5
Merge branch 'PHP-7.4'
2019-10-02 10:09:37 +02:00
Joe Watkins
32b87f855e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed #75245 Don't set content of elements with only whitespaces
2019-10-02 08:17:45 +02:00
Dmitry Stogov
e7e8e45166
Fixed tests
2019-10-02 02:31:01 +03:00
Dmitry Stogov
02b166cde6
Remove irrelevant tests (they were failed because of warning to exception chenge in parameter parsing API).
2019-10-02 01:13:30 +03:00
Dmitry Stogov
fbe19323ac
Fixed tests
2019-10-02 01:09:37 +03:00
Dmitry Stogov
2de67e6e6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed test that "fails" from time to time
2019-10-02 00:57:40 +03:00
Dmitry Stogov
96ae6f7041
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed test that "fails" from time to time
2019-10-02 00:49:58 +03:00
Nikita Popov
27ad0efb58
Revert "Save opline before fallible arg type check in recv_init jit"
...
This reverts commit b09bddcaa5 .
This causes test failures on macos -- presumably the relevant
difference is that it has no global regs. I suspect that this
is related to the fact that SAVE_VALID_OPLINE may use r0 as
a scratch register, which is already in use. Reverting for now.
2019-10-01 22:16:56 +02:00
Nikita Popov
646dc19048
Suppress fsockopen error in ldap_set_rebind_proc_error.phpt
2019-10-01 22:02:47 +02:00
Nikita Popov
872a759f88
Limit input size in exif fuzzer
...
Probably still too much...
2019-10-01 18:29:23 +02:00
Nikita Popov
7d90f4864d
Require a space ofter run-tests "warn"
...
We don't want to treat a PHP "Warning: " as a run-tests warn.
2019-10-01 17:36:42 +02:00
Nikita Popov
b09bddcaa5
Save opline before fallible arg type check in recv_init jit
...
The verify arg functions may throw an exception, so we need to save
the opline beforehand. Asan failures could be observed in
Zend/tests/type_declarations/scalar_constant_defaults.phpt
with a ZTS build.
2019-10-01 17:19:27 +02:00
Gerard Roche
1afcf28ad0
README: Fix AppVeyor branch and add link to LICENSE
...
Point AppVeyor status badge to master
Closes GH-4763.
[ci skip]
2019-10-01 15:15:36 +02:00
Nikita Popov
82f74ce3f2
Improve bless tests script to minimize diffs
...
Compute the diff between the old EXPECTF and the new output and
don't touch lines that still match the old EXPECTF. This reduces
the amount of manual fixup necessary after running bless_tests.php.
2019-10-01 15:00:22 +02:00
Nikita Popov
edace5f5e0
Merge branch 'PHP-7.4'
2019-10-01 13:05:12 +02:00
Nikita Popov
4d49ec208e
Add --enable-fuzzer-msan flag
...
To build fuzzers with memory sanitizer.
2019-10-01 13:04:47 +02:00
Christoph M. Becker
b53d9528c2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix AppVeyor build
2019-10-01 11:51:35 +02:00
Christoph M. Becker
76179cdf3d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing skip keyword in tests
Update NEWS for 7.4.0RC4
Update NEWS for PHP 7.4.0RC3
2019-10-01 11:19:43 +02:00
Christoph M. Becker
21e4f48260
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix AppVeyor setup wrt. changed OpenSSL default config path
2019-10-01 10:01:58 +02:00
Christoph M. Becker
e2338208aa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update regarding changed OpenSSL default config path
2019-10-01 09:16:51 +02:00
Nikita Popov
15761ef359
Pass mode to open() in exif fuzzer
...
Funny how despite all those sanitizers running, nothing ever
caught this...
2019-09-30 18:23:47 +02:00
Fabien Villepinte
e49593a7c3
Mark test as borked when skipif produces invalid output
...
SKIPIF section should either output nothing, or start with a
supported keyword like "skip". Mark all tests that don't do so as
BORKED.
2019-09-30 17:52:43 +02:00
Nikita Popov
235983dfde
Merge branch 'PHP-7.4'
2019-09-30 17:52:39 +02:00
Christoph M. Becker
a601d519aa
Just return after throwing a ValueError
2019-09-30 16:40:56 +02:00
Mark
8aad466c42
Convert GD Resources to objects
2019-09-30 15:14:02 +02:00
Nikita Popov
c0a54f41b3
Merge branch 'PHP-7.4'
2019-09-30 15:06:51 +02:00
Christoph M. Becker
b1468169dc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip tests for old versions instead of marking them XFAIL
2019-09-30 14:14:59 +02:00
Christoph M. Becker
d0d7508d1b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78609 : mb_check_encoding() no longer supports stringable objects
2019-09-30 13:07:19 +02:00
Nikita Popov
b442a9b69b
Merge branch 'PHP-7.4'
2019-09-30 12:54:45 +02:00
Nikita Popov
01fc1a3057
Remove most uses of the ERROR type
...
It is now only used to signal exceptions for property reads. ERROR
zvals are never returned back to the VM anymore, so there's no
need to check for them when receiving a VAR.
Also return MAY_BE_ERROR, as ERROR is now no longer relevant for
inference.
2019-09-30 11:35:07 +02:00
Nikita Popov
7e77617533
Merge branch 'PHP-7.4'
2019-09-30 10:42:47 +02:00
Dmitry Stogov
9372b6876d
Restore "avoid exception check" optimization and add EG(exception) check only on slow path.
2019-09-30 11:40:25 +03:00
Nikita Popov
1cde9e8528
Merge branch 'PHP-7.4'
2019-09-30 10:30:20 +02:00
Christoph M. Becker
ecb1e312a0
Fix default value
2019-09-29 18:22:36 +02:00
Christoph M. Becker
3c16606d46
Elevate warning to ValueError for invalid ZipArchive object
2019-09-29 14:28:39 +02:00
Christoph M. Becker
6902d14b81
Properly clean up files created by test cases
2019-09-29 14:28:39 +02:00
Christoph M. Becker
61a4ae90d7
Add missing zend_parse_parameters_none()
2019-09-29 14:28:38 +02:00
Christoph M. Becker
1858b00d00
Add ZipArchive arginfo stubs
2019-09-29 14:28:37 +02:00
Christoph M. Becker
31e8ce6604
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix build for libzip < 0.11.2
2019-09-29 13:39:15 +02:00
Nikita Popov
33bf1495b2
Don't use asm arithmetic under msan
...
Clang 9 supports asm goto, so these no longer get automatically
skipped.
2019-09-29 11:38:34 +02:00
Craig Duncan
676f455f74
Convert libxml arginfo to php stubs
2019-09-29 10:40:37 +02:00
Nikita Popov
1593f79ecd
Merge branch 'PHP-7.4'
2019-09-28 21:30:15 +02:00
Nikita Popov
38387d7cfc
Merge branch 'PHP-7.4'
2019-09-28 17:17:36 +02:00
Christoph M. Becker
03e92d4d48
Add ext/snmp arginfo stubs
2019-09-28 15:47:00 +02:00
Christoph M. Becker
bf13d25f1c
Don't return explicit value on failing ZPP
2019-09-28 13:39:40 +02:00
Christoph M. Becker
8574268ccb
Add missing zend_parse_parameters_none()
2019-09-28 13:33:46 +02:00
Nikita Popov
61f8f68a79
Make fuzzing sapi i386 compatible
...
* Avoid an unnecessary -lstdc++ dependency. It's not going to be
used in the end anyway, and is an unnecessary hassle to set up.
* Use $LIB_FUZZING_ENGINE instead of hardcoding -lFuzzingEngine.
2019-09-27 23:58:48 +02:00
Nikita Popov
8145da0d82
Remove unused zend_del_literal() function
2019-09-27 23:58:48 +02:00
Christoph M. Becker
ed2c13ab07
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix wrong function name in SKIPIF
2019-09-27 23:02:51 +02:00
Christoph M. Becker
5a4b9bcc94
More ZPP warning to error related test fixes
2019-09-27 19:16:35 +02:00
Christoph M. Becker
752012a491
Fix tests wrt. ZPP warnings to errors
...
Since these test parts are solely about checking ZPP, we drop them
altogether.
2019-09-27 19:07:29 +02:00
Christoph M. Becker
f8ae8e9e80
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test regarding Reflection::export() deprecation
2019-09-27 16:35:40 +02:00
Christoph M. Becker
f11801712e
Initialize variables
...
These variables may not be initialized otherwise, but are passed to
another function; although it seems they are not used there, if not
having been initialized, MSVC complains.
2019-09-27 16:15:37 +02:00
Christoph M. Becker
8ad301a1de
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix SKIPIF in ext/mysqli
2019-09-27 16:05:17 +02:00
Nikita Popov
38b19d47e0
Convert "Only arrays and Traversables can be unpacked" into Error
2019-09-27 15:50:34 +02:00
Nikita Popov
e8b0163e0b
Promote write "use scalar as array" warning to Error
2019-09-27 15:49:18 +02:00
Nikita Popov
32c20d5670
Remove unused mmap_file + mmap_len from basic_globals
2019-09-27 13:00:07 +02:00
Nikita Popov
2354aa9676
Add test for illegal unset/isset offset
...
Weirdly these warnings had zero coverage previously...
Remove an incorrect exception checking optimization: The key
lookup may throw (it could also throw previously, though only
through a custom error handler).
2019-09-27 13:00:07 +02:00
Nikita Popov
0ebf2bdba0
Convert "Illegal offset type" warnings to exceptions
2019-09-27 13:00:07 +02:00
Nikita Popov
f2b09969db
Convert "cannot add element" warning to exception
2019-09-27 13:00:07 +02:00
Christoph M. Becker
36eecc1076
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix skipif.inc
2019-09-27 12:52:52 +02:00
Nikita Popov
31ff9f3e29
Merge branch 'PHP-7.4'
2019-09-27 11:20:48 +02:00
Nikita Popov
aa02c259f8
Merge branch 'PHP-7.4'
2019-09-27 11:12:13 +02:00
Nikita Popov
34e7c2daf0
Merge branch 'PHP-7.4'
2019-09-27 10:49:25 +02:00
Nikita Popov
a66c60cce3
Throw Error when writing property of non-object
...
This removes object auto-vivification support.
This also means that we can remove the corresponding special
handling for typed properites: We no longer need to check that a
property is convertible to stdClass if such a conversion might
take place indirectly due to a nested property write.
Additionally OBJ_W style operations now no longer modify the
object operand, and as such we no longer need to treat op1 as a
def in SSA form.
The next step would be to actually compile the whole LHS of OBJ_W
operations in R rather than W mode, but that causes issues with
SimpleXML, whose object handlers depend on the current compilation
structure.
Part of https://wiki.php.net/rfc/engine_warnings .
2019-09-27 10:11:47 +02:00
Tyson Andre
e8d2097bdc
Update opcache zend_func_info after wbmp/xml_parser changes
...
See UPGRADING on the master branch.
```
- GD:
. The deprecated function image2wbmp() has been removed.
RFC: https://wiki.php.net/rfc/image2wbmp
. The deprecated functions png2wbmp() and jpeg2wbmp() have been removed.
RFC: https://wiki.php.net/rfc/deprecate-png-jpeg-2wbmp
- XML:
. xml_parser_create(_ns) will now return an XmlParser object rather than a
resource.
```
2019-09-27 10:06:36 +02:00
Dmitry Stogov
7d7b20ea91
Don't generate useless stubs
2019-09-26 23:21:48 +03:00
Nikita Popov
8686a3d30b
Merge branch 'PHP-7.4'
2019-09-26 13:50:02 +02:00
Nikita Popov
7e295da81c
Limit max length for parser fuzzer
...
We're getting some very large inputs (~500KB) on OSS-Fuzz, which
slot down performance a lot. Let's try limiting this, starting
with a still fairly large value of 64KB.
Also remove the max_execution_time limit, so that slow test cases
cause a genuine libfuzzer timeout and we may investigate them.
2019-09-26 10:45:47 +02:00
Nikita Popov
adcc07dd44
Merge branch 'PHP-7.4'
2019-09-26 10:26:12 +02:00
Dmitry Stogov
470bbb8c70
Avoid code dupliction
2019-09-26 01:40:30 +03:00
Dmitry Stogov
de599aec9f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed GOTO VM
2019-09-26 01:20:48 +03:00
Dmitry Stogov
cf33837d75
Cleanup CFG optimization
2019-09-25 17:30:59 +03:00
Stephen Reay
72e3b252e8
Adding ldap stubs for arginfo
2019-09-25 15:09:25 +02:00
Gabriel Caruso
5d6e923d46
Remove mention of PHP major version in Copyright headers
...
Closes GH-4732.
2019-09-25 14:51:43 +02:00
Nikita Popov
fb60ccc666
Merge branch 'PHP-7.4'
2019-09-25 11:03:19 +02:00
Christoph M. Becker
de6b76805d
Just return on throwing ZPP
2019-09-25 10:40:45 +02:00
Christoph M. Becker
2540c44dbe
Add missing zend_parse_parameters_none()
2019-09-25 10:40:45 +02:00
Nikita Popov
f753975c7a
Merge branch 'PHP-7.4'
2019-09-25 10:35:26 +02:00
Stephen Reay
b0d80e16e3
Add SimpleXML arginfo stubs
2019-09-25 10:34:21 +02:00
Nikita Popov
2e6c91e3ab
Merge branch 'PHP-7.4'
2019-09-25 10:19:34 +02:00
Gabriel Caruso
202158e2cd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use nproc instead of hardcoded number
2019-09-25 00:07:09 +02:00
Christoph M. Becker
652c09ecf7
[ci skip] Update UPGRADING.INTERNALS
...
Cf. <http://git.php.net/?p=php-src.git;a=commit;h=0c7124e6beff0a7b0540691db370148be06d242a >.
2019-09-24 16:20:18 +02:00
Christoph M. Becker
0c7124e6be
Add check_only parameter to get_closure handler
...
`get_closure` handlers are called to check whether an object is
callable, and to actually get the closure, respectively. The behavior
of the handler might differ for these two cases, particularly the
handler may throw in the latter case, but should not in the former.
Therefore we add a `check_only` parameter, to be able to distinguish
the desired purpose.
2019-09-24 16:08:42 +02:00
Nikita Popov
1fe47ad233
Add new entries for exif and unserialize fuzzing corpus
2019-09-24 12:34:30 +02:00
Nikita Popov
3b52307c86
Merge branch 'PHP-7.4'
2019-09-24 12:19:14 +02:00
Nikita Popov
a369430b00
Avoid signed shift
2019-09-24 11:36:05 +02:00
Christoph M. Becker
3c28a4ac6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-09-24 11:16:08 +02:00
Stanislav Malyshev
a9dabe0e20
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78559 : Heap buffer overflow in mb_eregi
2019-09-23 21:51:26 -07:00
Christoph M. Becker
c761616f66
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS entry
2019-09-23 23:04:26 +02:00
Dmitry Stogov
1030ff5f5f
Use cheaper code for scalar type check
2019-09-23 23:04:08 +03:00
Dmitry Stogov
6e226c188c
Change ZEND_RECV and ZEND_RECV_VARIADIC to use extended_value for cache slot (instead of op2), to be consistent with ZEND_RECV_INIT.
2019-09-23 22:28:56 +03:00
Nikita Popov
2128c634f6
Check that type is set in ZEND_TYPE_IS_MASK()
...
Allow this macro to be used without an explicit ZEND_TYPE_IS_SET()
check.
2019-09-23 19:43:27 +02:00
Benjamin Eberlei
cece939526
Cleanup ext/dom: Additional unimplemented code following 25bfac4
2019-09-23 19:28:55 +02:00
Nikita Popov
131c1a5668
Merge branch 'PHP-7.4'
2019-09-23 17:18:45 +02:00
Nikita Popov
6276dd826b
Use ZEND_TYPE_IS_SET() when checking for property types
...
Instead of a simple if or 0 comparison. This would no longer work
if zend_type is a struct.
2019-09-23 16:53:54 +02:00
Nikita Popov
3a104c3c37
Merge branch 'PHP-7.4'
2019-09-23 16:43:04 +02:00
Nikita Popov
3012d006ff
Don't set nullability flag for parameters without type
...
Use value 0 instead. To compensate we check in ReflectionParameter
allowsNull() whether the type is set at all: If it isn't, it always
allows null.
This removes a discrepancy between internal&userland functions:
For userland functions allowsNull() on untyped parameters returned
true, but for internal functions it returned false.
2019-09-23 16:39:52 +02:00
Nikita Popov
e441378b54
Update error messages in some more tests
2019-09-23 16:39:52 +02:00
Nikita Popov
5dcbc65a53
Canonicalize typed prop/param default value errors
...
Use shared logic to determine what values are valid, and a single
error message format.
2019-09-23 16:20:26 +02:00
Nikita Popov
b7745d6eeb
Check for nullable void type earlier
2019-09-23 15:59:47 +02:00
Nikita Popov
d7ae123648
Canonicalize typed properties error message
...
We have lots of other typed properties related error messages of
the form "assign X to typed property Y::$z of type A", so use th
same format for the primary message as well. Special-casing things
like classes and nullability is not going to scale with future
type-system extensions, and I don't think it really adds clarity
either.
2019-09-23 15:48:49 +02:00
Nikita Popov
8d7911ef56
Standardize type printing in reflection
...
Use ?T instead of "T or NULL".
2019-09-23 15:40:03 +02:00
Nikita Popov
9e8ba7891e
Change representation of zend_type from type code to MAY_BE_* mask
...
This switches zend_type from storing a single IS_* type code to
storing a MAY_BE_* type mask. Right now most code still assumes
that there is only a single type in the mask (or two together
with MAY_BE_NULL). But this will make it a lot simpler to introduce
union types.
An additional advantage (and why I'm doing this separately), is
that a number of special cases no longer need to be handled
separately: We can do a single mask & (1 << type) check to handle
all simple types, booleans (true|false) and null.
2019-09-23 15:31:35 +02:00
Nikita Popov
9ec2480bd6
Merge branch 'PHP-7.4'
2019-09-23 14:52:45 +02:00
Nikita Popov
bbc958990c
Merge branch 'PHP-7.4'
2019-09-23 13:47:43 +02:00
Nikita Popov
64a5e80bb3
Merge branch 'PHP-7.4'
2019-09-23 13:19:05 +02:00
Nikita Popov
febea5219f
Merge branch 'PHP-7.4'
2019-09-23 13:09:12 +02:00
Christoph M. Becker
72f73f95b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow lookup of distro-packaged QDBM headers on Debian
2019-09-23 09:54:59 +02:00
Stephen Reay
01bdc68379
Added arginfo stubs for IMAP extension
2019-09-22 19:25:55 +02:00
Christoph M. Becker
9fa65eed2c
Add missing zend_parse_parameters_none()
2019-09-22 19:14:31 +02:00
Christoph M. Becker
ac282a90f1
Add skip reasons
2019-09-22 19:14:30 +02:00
Christoph M. Becker
159b088522
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test to be skipped if dom is not available
2019-09-22 18:43:45 +02:00
Christoph M. Becker
3213e1e776
Just return on ZPP exception
...
No need to return FALSE.
2019-09-22 16:39:02 +02:00
Christoph M. Becker
610b7a74fc
Fix arginfo of tidy_repair_string()
...
Cf. 5356bad8c6 .
2019-09-22 16:31:48 +02:00
Christoph M. Becker
5356bad8c6
Remove unused parameter
...
The `$use_include_path` parameter doesn't make sense for
`tidy_repair_string()`, and actually unused, so we remove it.
2019-09-22 16:28:42 +02:00
Christoph M. Becker
7f36328bf0
Add ext/tidy stubs
2019-09-22 16:18:33 +02:00
Christoph M. Becker
6072fe4342
Properly use zend_parse_method_parameters()
...
`zend_parse_method_parameters()` is meant for dual (procedural and OO)
APIs; there is no need to attempt to get "this" first, and to dispatch
to `zend_parse_parameters()` and `zend_parse_method_parameters()`,
respectively.
2019-09-22 16:18:33 +02:00
Christoph M. Becker
071ccee7f7
Add ext/dba stubs
2019-09-22 13:58:30 +02:00
Nikita Popov
c6315f86c9
Merge branch 'PHP-7.4'
2019-09-22 12:13:22 +02:00
Nikita Popov
0a6291b81a
Merge branch 'PHP-7.4'
2019-09-22 10:27:21 +02:00
Christoph M. Becker
f2f3134118
Employ zend_parse_method_parameters()
2019-09-22 10:16:06 +02:00
Christoph M. Becker
0f56110615
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix length of key passed to zend_hash_str_find_ptr
2019-09-21 18:13:31 +02:00
Christoph M. Becker
48892e6d24
Remove unused parameter
...
Cf. <https://bugs.php.net/78579 >.
2019-09-21 16:30:17 +02:00
Christoph M. Becker
8293667f60
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78579 : mb_decode_numericentity: args number inconsistency
2019-09-21 16:18:20 +02:00
Bishop Bettini
1b086f506b
[ci skip] Add phar + imap maintainer email
...
Looks like commit c09b13cb (Add Bishop Bettini as maintainer for
phar & imap, 2019-03-16) missed adding my email address.
2019-09-20 12:59:50 -04:00
Remi Collet
7eaf2389d8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78574 (broken shared build)
2019-09-20 13:30:28 +02:00
Christoph M. Becker
e0a213d98f
Make MSVC happy again
...
MSVC complains about unsupported preprocessor syntax, so we employ the
same workaround as in zend_cpuinfo.h.
2019-09-20 12:51:03 +02:00
Craig Duncan
8326ef5519
Convert soap functions arginfo to php stubs
...
We alos make the last parameter of `SoapClient::__setCookie()` and
`SoapFault::__construct()` properly nullable.
2019-09-20 11:21:13 +02:00
Craig Duncan
48e696319c
Convert pcntl functions arginfo to php stubs
2019-09-20 11:15:22 +02:00
Dmitry Stogov
3d59cec506
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't buid static libaraies when only DSO required
2019-09-19 23:46:45 +03:00
Nikita Popov
6a21804b83
Merge branch 'PHP-7.4'
2019-09-19 21:14:54 +02:00
Nikita Popov
eedc4f1295
Merge branch 'PHP-7.4'
2019-09-19 21:02:20 +02:00
Dmitry Stogov
ddfb3d6056
Fixed 32-bit JIT
2019-09-19 21:53:36 +03:00
Stephen Reay
c34de80df8
Convert IMAP function aliases
...
These are not really aliases, convert them to normal functions.
Closes GH-4725.
2019-09-19 17:24:49 +02:00
Nikita Popov
edfcf2d81f
Merge branch 'PHP-7.4'
2019-09-19 17:22:34 +02:00
Nikita Popov
975ef6ea9c
Merge branch 'PHP-7.4'
2019-09-19 14:20:38 +02:00
Nikita Popov
962a9cd74e
Merge branch 'PHP-7.4'
2019-09-19 11:36:29 +02:00
Nikita Popov
cdd4e591a4
Don't make argument nullable based on AST null initializer
...
Closes GH-4720.
2019-09-19 11:27:00 +02:00
Christoph M. Becker
d6ef63db53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78543 : is_callable() on FFI\CData throws Exception
2019-09-19 09:17:53 +02:00
George Peter Banyard
f816171240
Indicate entry is skipped in error message
2019-09-18 22:30:12 +02:00
Nikita Popov
0b4e007253
Merge branch 'PHP-7.4'
2019-09-18 16:37:23 +02:00
Nikita Popov
418d243e37
Change instructions to use oniguruma from git
...
Some bugs are already fixed there.
[ci skip]
2019-09-18 14:56:25 +02:00
Dmitry Stogov
2aefd11211
Optimize access to thread local cache.
...
This patch saves one CPU instruction on each "_tsrm_ls_cache" access in ZTS CLI/CGI/FPM builds.
This reduce typical instruction sequence for EG(current_execute_data) access from 4 to 3 CPU instructions.
2019-09-18 14:03:07 +03:00
Nikita Popov
d7b4cdff3f
Add instructions for building an instrumented libonig
...
[ci skip]
2019-09-18 12:49:42 +02:00
Craig Duncan
1fc2fec138
Convert session functions arginfo to php stubs
2019-09-18 10:59:57 +02:00
Nikita Popov
ee41204915
Merge branch 'PHP-7.4'
2019-09-18 10:45:19 +02:00
Nikita Popov
96840a280f
Add debugging code to usleep()
...
To see if intermittent CI failures are caused by a signal interrupt.
2019-09-18 10:13:35 +02:00
Nikita Popov
16f4fa0ee8
Merge branch 'PHP-7.4'
2019-09-18 09:31:52 +02:00
Christoph M. Becker
d61bc63c4d
Change XMLWriter resources to objects
...
While we generally prefer objects over resources for quite a while, the
procedural XMLWriter API still uses resources, although there is
already an object-oriented API which uses objects. This dichotomy
makes no sense, slightly complicates the implementation, and doesn't
allow a stepwise migration to the object-oriented API, which might be
desired. Thus we completely drop the XMLWriter resources in favor of
XMLWriter objects.
We consider the minor BC break acceptable for a major version, since
only explicit type checks (`is_resource()`, `gettype()` etc.) need to
be adapted.
2019-09-18 08:52:14 +02:00
Benjamin Eberlei
873b54840f
Upgrading notes for removed ext/dom classes.
2019-09-17 23:52:08 +02:00
Benjamin Eberlei
25bfac44b0
Cleanup ext/dom: Removal of unimplemented dummy classes.
...
The following classes were registered in ext/dom but
neither documented nor had any behavior (only test data).
These classes are now removed:
- DOMNameList
- DomImplementationList
- DOMConfiguration
- DomError
- DomErrorHandler
- DOMImplementationSource
- DOMLocator
- DOMUserDataHandler
- DOMTypeInfo
2019-09-17 23:45:06 +02:00
Derick Rethans
07d0ebb15b
Merge branch 'PHP-7.4'
2019-09-17 17:34:31 +01:00
Nikita Popov
31b9b656b4
Merge branch 'PHP-7.4'
2019-09-17 17:34:31 +02:00
Christoph M. Becker
9a734c5c19
Implement NUL byte checks for dbnames
...
Since we're passing these parameter to C functions accepting `char*`
without any further checking, we should reject strings with NUL bytes
in the first place.
2019-09-17 16:37:28 +02:00
Nikita Popov
8a66cb35a3
Merge branch 'PHP-7.4'
2019-09-17 16:18:03 +02:00
Nikita Popov
4ea28680a9
Merge branch 'PHP-7.4'
2019-09-17 15:43:57 +02:00
Dmitry Stogov
50527aa49b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed CLI/CGI/FPM build, when they are built together with Apache SAPI
2019-09-17 15:44:40 +03:00
Nikita Popov
2cafaab885
Merge branch 'PHP-7.4'
2019-09-17 13:15:01 +02:00
Nikita Popov
31c6c861a2
Merge branch 'PHP-7.4'
2019-09-17 12:55:18 +02:00
Nikita Popov
f613e32058
Merge branch 'PHP-7.4'
2019-09-17 12:19:57 +02:00
Nikita Popov
8af9043766
Merge branch 'PHP-7.4'
2019-09-17 12:18:01 +02:00
Nikita Popov
b8c0e17f33
Merge branch 'PHP-7.4'
2019-09-17 12:07:23 +02:00
Nikita Popov
c1adb7a74e
Move scripts out of corpus/ directory
2019-09-16 20:18:29 +02:00
Nikita Popov
c4e2ca607f
Various improvements to fuzzer SAPIs
2019-09-16 16:04:10 +02:00
Stanislav Malyshev
41f45647f9
Add fuzzer SAPIs to the core
2019-09-16 16:04:09 +02:00
Christoph M. Becker
9b9fac78b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78429 : opcache_compile_file(__FILE__); segfaults
2019-09-16 16:01:49 +02:00
Christoph M. Becker
e6b1f9d56d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
2019-09-16 15:55:58 +02:00
Fabien Villepinte
7e8f11531e
Make some session tests more robust
2019-09-16 15:20:32 +02:00
Nikita Popov
d26eb10f08
Merge branch 'PHP-7.4'
2019-09-16 15:01:22 +02:00
Christoph M. Becker
23de7b14db
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78516 : password_hash(): Memory cost is not in allowed range
2019-09-16 14:59:22 +02:00
Nikita Popov
02da1fe490
Merge branch 'PHP-7.4'
2019-09-16 14:38:19 +02:00
Nikita Popov
c749a3ef67
Merge branch 'PHP-7.4'
2019-09-16 13:53:44 +02:00
Nikita Popov
f487cd81ba
Merge branch 'PHP-7.4'
2019-09-16 13:03:18 +02:00
Nikita Popov
bbfe298fb6
Merge branch 'PHP-7.4'
2019-09-16 12:00:26 +02:00
Nikita Popov
ad839e5fca
Merge branch 'PHP-7.4'
2019-09-16 11:40:13 +02:00
Dmitry Stogov
c2f937e134
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed typos
2019-09-16 10:30:02 +03:00
Thomas Gerbet
ef27bd60d0
Add stubs for ext-hash
2019-09-16 09:17:47 +02:00
Christoph M. Becker
7a20ba43d3
Add missing ZPP_none()
2019-09-15 21:30:15 +02:00
Christoph M. Becker
5a79b4b938
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Stick with zend_long for ABI compatibility
2019-09-15 15:14:46 +02:00
Christoph M. Becker
a858a53c07
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78535 : auto_detect_line_endings value not parsed as bool
2019-09-14 18:49:00 +02:00
Nikita Popov
3372a24b99
Merge branch 'PHP-7.4'
2019-09-14 12:10:15 +02:00
Nikita Popov
a86e04876b
Merge branch 'PHP-7.4'
2019-09-14 00:25:39 +02:00
Nikita Popov
b6d138fba1
Merge branch 'PHP-7.4'
2019-09-13 18:23:47 +02:00
Nikita Popov
04c45edf35
Merge branch 'PHP-7.4'
2019-09-13 14:37:28 +02:00
Dmitry Stogov
78a890e45f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make constant and copy propagation only for IS_TMP_VAR operands
2019-09-13 12:39:45 +03:00
Dmitry Stogov
8a673e9380
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect usage of QM_ASSIGN instruction
2019-09-13 12:13:25 +03:00
Dmitry Stogov
cf4c4ee900
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78531 (Crash when using undefined variable as object
2019-09-13 01:43:40 +03:00
Dmitry Stogov
86a56f89a3
Use zval_try_get_tmp_string() instead of zval_get_tmp_string() for cheaper EG(exception) check
2019-09-13 00:20:06 +03:00
Dmitry Stogov
0a7233f2aa
Avoid reloading
2019-09-12 20:13:31 +03:00
Dmitry Stogov
358a6b4c31
Reorder conditions
2019-09-12 19:43:45 +03:00
Dmitry Stogov
8b10fcd3e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Load string once
2019-09-12 18:53:26 +03:00
Dmitry Stogov
13fd8c533c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Eliminate checks using ZEND_CONST_COND() macro
2019-09-12 18:29:58 +03:00
Nikita Popov
f61f122b9a
Merge branch 'PHP-7.4'
2019-09-12 16:41:45 +02:00
Christoph M. Becker
b59f6e4fb1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix exif build
NEWS
2019-09-12 09:14:27 +02:00
Kalle Sommer Nielsen
c2d661c2e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78442 ('Illegal component' on exif_read_data since PHP7)
2019-09-12 06:34:35 +03:00
Nikita Popov
a09da43888
Merge branch 'PHP-7.4'
2019-09-11 17:05:07 +02:00
Nikita Popov
a97645eb0a
Merge branch 'PHP-7.4'
2019-09-11 16:51:30 +02:00
Nikita Popov
403396e42c
Merge branch 'PHP-7.4'
2019-09-11 16:30:59 +02:00
Nikita Popov
7992a712a9
Merge branch 'PHP-7.4'
2019-09-11 12:02:39 +02:00
Nikita Popov
9ca21b9d0a
Merge branch 'PHP-7.4'
2019-09-11 11:13:33 +02:00
Nikita Popov
f10eb9f756
Merge branch 'PHP-7.4'
2019-09-11 10:32:27 +02:00
Nikita Popov
c70bab7b24
Merge branch 'PHP-7.4'
2019-09-11 09:53:18 +02:00
Dmitry Stogov
e5af673e45
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bad format string
2019-09-11 00:53:30 +03:00
Sara Golemon
76fa2111e0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump for 7.2.24
2019-09-10 13:05:56 -04:00
Remi Collet
3d7cd00e97
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Raise minimal GCC version, Test with 4.8 is OK With 4.4: error: #pragma GCC diagnostic not allowed inside functions
2019-09-10 16:30:39 +02:00
Christoph M. Becker
bd57fc747f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PHP 7.3.10RC1 has been tagged
2019-09-10 15:13:52 +02:00
Peter Cowburn
4253811c42
upgrading notes for ValueError/zend_value_error()
2019-09-10 13:19:24 +01:00
Dmitry Stogov
02c83b809a
ceanup
2019-09-10 15:12:42 +03:00
Christoph M. Becker
4f4074328c
Prefer ValueError over Error in GD
...
Cf. <https://github.com/php/php-src/pull/4682 >.
2019-09-10 12:37:42 +02:00
Florian Weimer
aeaab8ee3e
Port various autoconf bits to C99 compilers
...
C99 no longer has implicit function declarations and implicit ints.
Current GCC versions enable them as an extension, but this will
change in a future GCC version.
2019-09-10 12:32:14 +02:00
Dmitry Stogov
0128f6eb84
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS entry, test and minor cleanup for FFI::isNull()
add FFI::isNull() to check whether a FFI\CData is a null pointer
2019-09-10 11:34:08 +03:00
Dmitry Stogov
989959fb16
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Drop regression test
2019-09-10 11:23:53 +03:00
Christoph M. Becker
2bb77e6367
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Drop regression test
2019-09-10 10:09:02 +02:00
Dmitry Stogov
d40d0faa90
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Stop after exceptions
2019-09-10 11:02:03 +03:00
Christoph M. Becker
396be33ca5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Request #77863 : PDO firebird support type Boolean in input parameters
2019-09-10 09:23:05 +02:00
Peter Cowburn
a43679632b
raise ValueError from imagecreate/imagecreatetruecolor
...
Raise a ValueError instead of a plain Error when calling imagecreate()
or imagecreatetruecolor() with too big or small values for the width or
height arguments.
2019-09-09 21:06:00 +01:00
Peter Cowburn
bc61997571
add ValueError
...
ValueError is intended to be thrown when a function or method receives
an argument that has the right type (incorrect type should throw a
TypeError) but an inappropriate value.
2019-09-09 21:06:00 +01:00
Dmitry Stogov
628fd6ec71
clenup
2019-09-09 22:40:28 +03:00
Dmitry Stogov
f43fe067e9
Avoid hash value recalculation on each counter update
2019-09-09 21:25:54 +03:00
Christoph M. Becker
8aff6627b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
new_variable '{' expr '}' is deprecated as well
2019-09-09 19:06:43 +02:00
Ivan Enderlin
dce8d19fc1
Mention that arg_info[-1] holds the return info
...
I lost some time trying to know how to find the returned type.
It's not that obvious it is stored in the _argument_ information array.
For the sake of Internet, here is the full code checking that a function _has_ a returned type:
```c
zend_function *function = /* e.g. fci_cache->function_handler */;
if (!(function->op_array.fn_flags & ZEND_ACC_HAS_RETURN_TYPE)) {
php_printf("no return type\n");
} else {
php_printf("has a return type\n");
php_printf("return type = %s\n", zend_get_type_by_const(ZEND_TYPE_CODE(function->common.arg_info[-1].type)));
}
```
2019-09-09 17:42:26 +02:00
Nikita Popov
fc4e73b383
Merge branch 'PHP-7.4'
2019-09-09 17:30:07 +02:00
Nikita Popov
004f31c434
Merge branch 'PHP-7.4'
2019-09-09 17:19:12 +02:00
Nikita Popov
f2b7a4393a
Merge branch 'PHP-7.4'
2019-09-09 17:15:41 +02:00
Christoph M. Becker
c4931715c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix version
2019-09-09 15:44:56 +02:00
Christoph M. Becker
8c7ee916ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78510 : Partially uninitialized buffer returned by sodium_crypto_generichash_init()
2019-09-09 15:33:36 +02:00
Nikita Popov
c288dfc075
Merge branch 'PHP-7.4'
2019-09-09 14:24:39 +02:00
Remi Collet
8aab32ff5f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zip edxtension is now 1.15.5
fix type consistency after 8f897f1040
2019-09-09 14:22:24 +02:00
Nikita Popov
f16ad678f7
Merge branch 'PHP-7.4'
2019-09-09 11:37:36 +02:00
Nikita Popov
09e9c4f3c1
Merge branch 'PHP-7.4'
2019-09-09 10:50:30 +02:00
Nikita Popov
7b0eb5b9be
Merge branch 'PHP-7.4'
2019-09-09 10:11:54 +02:00
Peter Kokot
3cebb99773
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix #78349 : Bundled pcre2 library missing LICENCE file
2019-09-08 21:50:06 +02:00
蝦米
66f3fc9f79
fix missing close bracket
...
[ci skip][skip ci]
2019-09-08 18:09:43 +02:00
Nikita Popov
81fcd76a25
Merge branch 'PHP-7.4'
2019-09-07 22:48:12 +02:00
Dmitry Stogov
bf501cbbea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Link executable files using non PIC object files. This reduces PIC overhead and improves performance.
2019-09-07 11:59:26 +03:00
Nikita Popov
ee4b11c668
Detect calls to abstract methods in get_method() already
...
Instead of checking for this during DO_FCALL, already detect this
case during get_method()/get_static_method(), similar to visibility
checks.
This causes a minor difference in behavior, in that arguments will
no longer be evaluated. I think this is correct though (and consistent
with visibility errors).
2019-09-06 15:05:24 +02:00
Nikita Popov
8522cdd6fa
Merge branch 'PHP-7.4'
2019-09-06 15:00:17 +02:00
Nikita Popov
2789ad982e
Merge branch 'PHP-7.4'
2019-09-06 14:48:31 +02:00
Nikita Popov
675e3c33cb
Merge branch 'PHP-7.4'
2019-09-06 14:36:50 +02:00
Nikita Popov
790ed7d540
Enable display_startup_errors by default
2019-09-06 14:33:03 +02:00
Nikita Popov
e530a89c00
Merge branch 'PHP-7.4'
2019-09-06 11:33:36 +02:00
Dmitry Stogov
64b2ee606c
Merge branch 'non_pic'
...
* non_pic:
Link executable files using non PIC object files. This reduces PIC overhead and improves performance.
2019-09-06 11:45:43 +03:00
Christoph M. Becker
53c002e257
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix version
2019-09-05 19:37:43 +02:00
Christoph M. Becker
f895b7557e
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix version
2019-09-05 19:35:12 +02:00
Christoph M. Becker
8c9efdf720
Fix version
...
7.3.10 is next, not 7.3.11.
2019-09-05 19:33:17 +02:00
Stanislav Malyshev
58dd6996d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix version
2019-09-05 09:56:20 -07:00
Nikita Popov
edf5896a4e
Merge branch 'PHP-7.4'
2019-09-05 18:29:30 +02:00
Dmitry Stogov
9513b20738
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Microoptimization (avoid code duplication)"
2019-09-05 15:35:42 +03:00
Dmitry Stogov
1b5d41751f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Microoptimization (avoid code duplication)
2019-09-05 13:45:25 +03:00
Dmitry Stogov
34d98490df
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Load execute_data without global regs
2019-09-05 13:21:47 +03:00
Nikita Popov
d9750ac41e
Load execute_data without global regs
2019-09-05 10:46:50 +02:00
Dmitry Stogov
0f8bb9e37d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HOT attribute from some VM handlers. Comparisons almost always followed by JMPZ/JMPNZ; JMPZNZ is rare used.
Remove --with-zlib-dir option from mysqlnd config
2019-09-05 11:43:13 +03:00
Nikita Popov
7ed5fa4a86
Merge branch 'PHP-7.4'
2019-09-05 10:40:45 +02:00
Nikita Popov
5d490742cb
Fix deprecated args freeing with JIT
...
I'm including the logic for this rare case in the helper function
to avoid complicating the main JIT logic.
2019-09-05 10:05:46 +02:00
Nikita Popov
395e87d497
Merge branch 'PHP-7.4'
2019-09-04 15:33:16 +02:00
Mark
5af8361060
Warnings to Errors: imagesetstyle
2019-09-04 15:21:59 +02:00
Mark
4a1f0eb9d3
Warnings to errors in imageaffinematrix*()
2019-09-04 15:18:07 +02:00
Mark
06a3dd536d
Warnings to errors in imagecrop(auto)
2019-09-04 15:12:04 +02:00
Nikita Popov
b02f425b6c
Merge branch 'PHP-7.4'
2019-09-04 12:47:21 +02:00
Mark
d1f9ab11b3
Warnings to errors imageconvolution
2019-09-04 12:42:17 +02:00
Mark
34865f54e7
Warnings become errors for imagepolygon et al
2019-09-04 12:35:48 +02:00
Mark
87dbb32246
Negative checks for gamma
2019-09-04 12:31:01 +02:00
Mark
af8ecb39ae
Warnings for image colour range check now throw exceptions
2019-09-04 12:27:08 +02:00
Mark
6c6c109e24
Warnings to errors for imagecreatefromgd2part
...
We also delete tests which were duplicates of a completely unrelated
test.
2019-09-04 12:22:27 +02:00
Mark
6a05e42459
Warnings to Errors imagetruecolortopalette
2019-09-04 12:14:34 +02:00
Mark
fde52e8a2c
Warnings to Errors imagecreate(truecolor)
...
We also add a test helper which we will be using for other GD functions
as well.
2019-09-04 12:09:07 +02:00
Christoph M. Becker
616027cf69
Add ext/xmlreader stubs
2019-09-04 11:55:33 +02:00
Christoph M. Becker
f3dad0400c
Add missing zend_parse_paramters_none()
2019-09-04 11:26:51 +02:00
Dmitry Stogov
8e6d0d0975
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78488 (OOB in ZEND_FUNCTION(ffi_trampoline)).
2019-09-04 12:16:54 +03:00
Dmitry Stogov
39e655433a
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Add missing opcache return types for functions in spl
2019-09-04 12:15:15 +03:00
Dmitry Stogov
8a393ec886
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78488 (OOB in ZEND_FUNCTION(ffi_trampoline)).
2019-09-04 12:14:15 +03:00
Dmitry Stogov
d03d369fdb
Fixed bug #78488 (OOB in ZEND_FUNCTION(ffi_trampoline)).
2019-09-04 12:13:49 +03:00
Nikita Popov
91b69beec8
Merge branch 'PHP-7.4'
2019-09-04 11:12:56 +02:00
Christoph M. Becker
227f51683f
Declare nullable arguments in stubs
2019-09-04 09:55:27 +02:00
Christoph M. Becker
68edbbfe76
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add the last missing SKIPIF
2019-09-04 08:54:07 +02:00
Christoph M. Becker
6bd5567ce7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIF (mbstring)
2019-09-04 08:51:24 +02:00
Fabien Villepinte
2eae7897c3
Add missing SKIPIF (xml)
2019-09-04 08:46:13 +02:00
Christoph M. Becker
789e8e174a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIF (openssl)
2019-09-04 08:43:51 +02:00
Christoph M. Becker
e6d2ef1047
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIF (sqlite)
2019-09-04 08:39:34 +02:00
Christoph M. Becker
aa7308e0a8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIF
2019-09-04 08:36:39 +02:00
Christoph M. Becker
000cc04909
Fix default value
2019-09-03 22:51:57 +02:00
Dmitry Stogov
56e880af9f
Link executable files using non PIC object files. This reduces PIC overhead and improves performance.
2019-09-03 23:42:22 +03:00
Christoph M. Becker
6926018bda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Document opcache.preload_user directive
2019-09-03 14:08:52 +02:00
Nikita Popov
cc4af3513d
Merge branch 'PHP-7.4'
2019-09-03 13:59:59 +02:00
Christoph M. Becker
714561d0ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #41997 : SP call yields additional empty result set
2019-09-03 13:33:52 +02:00
Dmitry Stogov
3be83233c3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Execute preload script under user defined by opcache.preload_user directive
2019-09-03 14:23:44 +03:00
Christoph M. Becker
37713c80e4
Don't explicitly set return value on ZPP failure in ext/xml
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-09-03 13:12:05 +02:00
Christoph M. Becker
7e8b3dd542
Add ext/xml stubs
2019-09-03 13:07:20 +02:00
Nikita Popov
9d4a9ad0c7
Merge branch 'PHP-7.4'
2019-09-03 12:28:35 +02:00
Nikita Popov
52d31bf139
Don't perform coercions in internal func return type assertion
...
The returned value must match the specified type exactly, as we
can't perform any coercions in non-debug builds.
Fix incorrect stub for easter_date() that slipped through the
assertion for this reason...
2019-09-03 12:16:04 +02:00
Nikita Popov
24d8cbce54
Fix gen_stubs with out-of-tree build
...
We need to prefix with $(top_srcdir).
2019-09-03 11:38:02 +02:00
Nikita Popov
597a5da027
Support computing func info from ret arg info for internal funcs
2019-09-03 10:32:47 +02:00
Nikita Popov
3cca014ce4
Remove duplicate func info for array_key_first/last
...
Looks like this was already added in master separately...
2019-09-03 10:31:39 +02:00
Nikita Popov
d4a7d17b9a
Merge branch 'PHP-7.4'
2019-09-03 09:58:29 +02:00
Nikita Popov
d440a3cddb
Merge branch 'PHP-7.4'
2019-09-03 09:53:51 +02:00
Nikita Popov
53fdcd718b
Merge branch 'PHP-7.4'
2019-09-03 09:50:23 +02:00
Nikita Popov
2bfbb16ff2
Merge branch 'PHP-7.4'
2019-09-03 09:44:09 +02:00
Tyson Andre
149588280b
Fix opcache optimizer info for time_nanosleep (again)
...
Fixes my earlier PR #4617
If I remember correctly,
The F0 macro is used for return values that are guaranteed to not be
reference counted.
The F1 macro is used for return values that may have up to 1 reference
(i.e. MAY_BE_RC1).
I didn't notice that time_nanosleep needed to be F1 since it could
return an array, and that array is reference counted.
2019-09-03 09:31:01 +02:00
Christoph M. Becker
2b061654bf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing argument checks
2019-09-03 09:28:48 +02:00
Nikita Popov
7f78f839dc
php_stream_from_zval can no longer return false
2019-09-03 09:25:50 +02:00
Nikita Popov
3ac0f42c40
Merge branch 'PHP-7.4'
2019-09-03 09:24:20 +02:00
Christoph M. Becker
7695049b86
Don't explicitly set return value on ZFR failure in ext/xmlwriter
...
Failing `zend_fetch_resource(2)` throws as of PHP 8.0.0, so explicitly
setting a return value is useless, and also slightly confusing.
2019-09-03 09:17:08 +02:00
Christoph M. Becker
489dec18fc
Add ext/xmlwriter stubs
2019-09-03 09:11:42 +02:00
Dmitry Stogov
0581508ba4
Fixed pow() function info
2019-09-02 21:44:10 +03:00
Dmitry Stogov
53b3a449bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update PHP_API_VERSION
2019-09-02 19:03:45 +03:00
Nikita Popov
4fc4249d24
Make ReflectionType an abstract class
...
This is never instantiated directly, only child classes are used.
2019-09-02 15:38:56 +02:00
Christoph M. Becker
6ca2e1db8e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-09-02 15:22:19 +02:00
Christoph M. Becker
6ea698869c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #76577 : outdated documentation concerning track_errors
2019-09-02 15:07:48 +02:00
Nikita Popov
bdf2cd7508
Move isBuiltin() method from ReflectionType to ReflectionNamedType
...
This method only makes sense for single types, e.g. it would be
meaningless for union types.
Note that we always return ReflectionNamedType right now, so this does
not break compatibility for code using any currently existing types.
2019-09-02 14:59:31 +02:00
Nikita Popov
603b9c43cb
Add arg type assertions to DO_ICALL
...
Now that DO_ICALL is also used for functions with type hints, we
should include the arginfo sanity check assertions in there as
well.
2019-09-02 14:30:51 +02:00
Dmitry Stogov
33e10fe1cb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Free two bits in fn_flags by merging ZEND_ACC_HEAP_RT_CACHE/ZEND_ACC_USER_ARG_INFO and ZEND_ACC_DONE_PASS_TWO/ZEND_ACC_ARENA_ALLOCATED that may be used only for user/internal functions
2019-09-02 14:20:01 +03:00
Dmitry Stogov
633c5886bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed information about unused flags
2019-09-02 12:50:40 +03:00
Dmitry Stogov
a5597312e4
Fixed performance degradation caused by arg_info of internal function
2019-09-02 12:11:18 +03:00
Nikita Popov
d19ecd0f33
Fix typo in type
2019-09-02 10:55:51 +02:00
Nikita Popov
ea5854ca8c
Make error_reporting=E_ALL the default
2019-09-02 10:03:26 +02:00
Nikita Popov
f50f7418b5
Merge branch 'PHP-7.4'
2019-09-02 09:37:41 +02:00
George Peter Banyard
d0754b86b1
Promote warnings to errors in substr_count()
2019-08-31 23:37:04 +02:00
George Peter Banyard
0240b903c5
Promote warnings to errors in substr_compare()
2019-08-31 23:34:24 +02:00
George Peter Banyard
c072ef71ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Drop E_STRICT notice in mysqli extension
2019-08-31 23:17:21 +02:00
Nikita Popov
11819efb4f
Merge branch 'PHP-7.4'
2019-08-30 17:25:27 +02:00
Nikita Popov
ec9297592e
Check zpp before other errors in SoapServer::addSoapHeader()
2019-08-30 17:03:25 +02:00
Nikita Popov
82d9f14532
Merge branch 'PHP-7.4'
2019-08-30 16:37:20 +02:00
Nikita Popov
c217e31d0d
Merge branch 'PHP-7.4'
2019-08-30 16:10:11 +02:00
Nikita Popov
ded9b987bb
Merge branch 'PHP-7.4'
2019-08-30 16:08:05 +02:00
Nikita Popov
06c257ec4b
Enable JIT on community_job
2019-08-30 15:08:08 +02:00
Nikita Popov
24b1c2447c
JIT: Fix missing free on JMPZ_EX with op1 == res
...
We need to free the operand before we overwrite it with the result.
2019-08-30 14:50:22 +02:00
Nikita Popov
65fa6dac19
Add jit_bisect_limit
...
To help identify which function is being miscompiled.
2019-08-30 14:50:22 +02:00
Christoph M. Becker
39ab4104ed
Remove duplicate md5/sha1 implementation
...
This code was actually unused since its introduction, and since at
least the md5 implementation in the core was completely overhauled,
we're dropping the md5 and sha1 related stuff from ext/hash.
2019-08-30 13:21:48 +02:00
Nikita Popov
69cf535261
Fix func info for chop()
...
chop() is an alias of rtrim() and may return copied strings, so
should use FN.
2019-08-30 11:18:47 +02:00
Nikita Popov
be8247101d
Merge branch 'PHP-7.4'
2019-08-30 11:02:40 +02:00
Nikita Popov
1bbdb6a674
Disable symfony build on master
2019-08-30 10:46:42 +02:00
Nikita Popov
8239b58bea
Fix closure extra args freeing for JIT as well
2019-08-30 10:35:41 +02:00
Nikita Popov
2879ab46c0
Merge branch 'PHP-7.4'
2019-08-30 10:33:12 +02:00
Nikita Popov
23b1638622
Merge branch 'PHP-7.4'
2019-08-30 10:07:52 +02:00
George Peter Banyard
1f647ab4ca
Move and fix scandir related bug test
2019-08-30 09:50:04 +02:00
George Peter Banyard
b3d725218d
Promote warnings to errors in dir stdlib extension
2019-08-30 09:50:04 +02:00
Peter Kokot
9bd0cce819
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix #78460 : PEAR installation failure
2019-08-30 04:32:30 +02:00
George Peter Banyard
6c0eb1be33
Promote warnings to errors in assert_options()
2019-08-29 23:10:37 +02:00
George Peter Banyard
dd10e70d0c
Promote Directory handler warning to error
2019-08-29 23:08:25 +02:00
Nikita Popov
0d8a399afa
Merge branch 'PHP-7.4'
2019-08-29 19:07:59 +02:00
Mark
1f863399d5
Warnings to Errors hash_equals
2019-08-29 16:13:06 +02:00
Mark
e18bac96b7
Errorfy hash_pbkdf2
2019-08-29 16:11:21 +02:00
Mark
ee104cf1bb
Warnings become errors for hash_hkdf
2019-08-29 16:10:40 +02:00
Mark
960da6dff8
Warnings become errors hash stream functions (other than hash_init)
2019-08-29 16:10:08 +02:00
Mark
14c07fef74
Warnings become errors hash_init
2019-08-29 16:09:29 +02:00
Mark
21587854b4
Warnings become errors hash_hmac hash_hmac_file
2019-08-29 16:08:16 +02:00
George Peter Banyard
62751b0d45
Promote warnings to errors in array_walk(_recursive)()
2019-08-29 16:02:59 +02:00
George Peter Banyard
81277a104c
Promote warnings to errors in compact()
2019-08-29 16:02:20 +02:00
George Peter Banyard
20edea5a85
Promote warnings to errors in array_merge(_recursive)() and array_replace()
2019-08-29 16:01:39 +02:00
Nikita Popov
3da3b4c8f8
Merge branch 'PHP-7.4'
2019-08-29 14:47:30 +02:00
Nikita Popov
d00036e625
Merge branch 'PHP-7.4'
2019-08-29 12:34:31 +02:00
George Peter Banyard
70e604ee46
Promote warnings to errors in extract()
2019-08-28 23:15:01 +02:00
Christoph M. Becker
4669c53fcc
Don't explicitly set return value on ZFR failure in ext/odbc
...
Failing `zend_fetch_resource(2)` throws as of PHP 8.0.0, so explicitly
setting a return value is useless, and also slightly confusing.
2019-08-28 18:53:26 +02:00
Nikita Popov
e04eb28375
Merge branch 'PHP-7.4'
2019-08-28 18:18:25 +02:00
Christoph M. Becker
8417bc19b8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78473 : odbc_close() closes arbitrary resources
2019-08-28 18:10:33 +02:00
Nikita Popov
ad661375e8
Merge branch 'PHP-7.4'
2019-08-28 17:36:31 +02:00
Christoph M. Becker
0201a858d0
Add ext/odbc stubs
2019-08-28 17:05:28 +02:00
Nikita Popov
6323c13e74
Merge branch 'PHP-7.4'
2019-08-28 17:04:55 +02:00
Christoph M. Becker
afb69b6f2d
Fix test regarding ZPP TypeErrors
...
We simply remove the second call to `odbc_data_source` since it is
testing standard ZPP behavior.
2019-08-28 16:45:05 +02:00
Nikita Popov
3f339ec15f
Merge branch 'PHP-7.4'
2019-08-28 12:32:22 +02:00
Nikita Popov
937d5f6598
Compute needle end only after checking it's non-empty
2019-08-28 09:32:18 +02:00
Stanislav Malyshev
8cefd7c5ce
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade oniguruma lib to 6.9.3
2019-08-28 00:12:08 -07:00
George Peter Banyard
9fc3d5da11
Promote warnings to errors in max()
2019-08-27 23:41:22 +02:00
George Peter Banyard
b91a881b32
Promote warnings to errors in min()
2019-08-27 23:38:22 +02:00
Nikita Popov
a8792887d9
Merge branch 'PHP-7.4'
2019-08-27 22:01:59 +02:00
Nikita Popov
99ce142f6e
Some pcntl cleanup
...
Fix some indentation issues and make sure zpp is used consistently.
2019-08-27 17:25:19 +02:00
Nikita Popov
deb5226b31
Merge branch 'PHP-7.4'
2019-08-27 17:03:29 +02:00
Christoph M. Becker
29925cef47
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add ffi to php.ini extension [ci skip]
2019-08-27 15:54:18 +02:00
Anatol Belski
ad3c763e2c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix signature and calls
2019-08-27 14:35:06 +02:00
Christoph M. Becker
a748f7347d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update SDK version for AppVeyor
2019-08-27 13:36:41 +02:00
Nikita Popov
d93b094584
Throw TypeError from VM implementation of get_class()
...
The normal function already throws TypeError through the usual zpp
mechanism, but the VM implementation handles this manually and has
not been updated.
2019-08-27 09:37:48 +02:00
Nikita Popov
f107b670da
Add skipifs for zmm
2019-08-27 09:12:22 +02:00
Nikita Popov
085ddd0cde
Fix chunk_split test on i386 release
2019-08-27 09:09:03 +02:00
Jakub Zelenka
71e2c97ffb
Merge branch 'PHP-7.4'
2019-08-26 18:12:35 +01:00
Craig Duncan
4836660b90
Convert fileinfo functions arginfo to php stubs
...
We also allow the context for finfo to be null.
2019-08-26 18:13:58 +02:00
Nikita Popov
38c2230d07
Merge branch 'PHP-7.4'
2019-08-26 17:54:00 +02:00
Craig Duncan
743591458c
Convert exif functions arginfo to php stubs
...
We also allow sections needed to be null.
2019-08-26 17:25:12 +02:00
George Peter Banyard
5b09e6043c
Remove memory exhaustion checks in php_chunk_split()
2019-08-26 17:14:49 +02:00
George Peter Banyard
6d578482a9
Improve strpos and strstr function family implementation
2019-08-26 17:11:37 +02:00
Nikita Popov
ade97c207c
Merge branch 'PHP-7.4'
2019-08-26 16:12:47 +02:00
Christoph M. Becker
0ab4fca8e3
Add ext\opcache stubs
2019-08-26 16:05:01 +02:00
Burak Çakırel
d2210dc2ea
Add assert arginfo stubs
...
Closes GH-4619.
2019-08-26 15:41:31 +02:00
Nikita Popov
a98307df87
Make arginfo printing of prefer-ref arguments nicer
2019-08-26 15:39:39 +02:00
Christoph M. Becker
e047e9d893
Add ext/ffi stubs
2019-08-26 15:25:27 +02:00
Nikita Popov
0c2d4d698c
Make sure that params with null default are marked nullable
2019-08-26 14:34:28 +02:00
Nikita Popov
a47f170a75
Assert that symbol table is available in compact()
...
I believe NULL here is no longer possible due to the dynamic call
check. A similar assumption already exists in the extract()
implementation.
2019-08-26 14:25:48 +02:00
Christoph M. Becker
99c57b33cf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace deprecated libzip functions
2019-08-26 14:06:08 +02:00
George Peter Banyard
c1c8538f95
Promote warnings to errors in array_rand()
2019-08-26 13:31:02 +02:00
Nikita Popov
0038db2251
Avoid duplicate "non well-formed" warning
...
The arginfo checking code for internal functions should not generate
this warning, as it will be thrown by zpp.
2019-08-26 13:16:02 +02:00
Theodore Brown
d5f42d68c8
Convert remaining array function arginfo to PHP stubs
2019-08-26 12:53:00 +02:00
viest
48040cf345
Remove deprecated getaddrinfo flags
...
The AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES have
been deprecated by glibcs, and PHP 7.4 follows this deprecation.
This removes the offending flags for PHP 8.0.
2019-08-26 11:45:31 +02:00
George Peter Banyard
91f4e2e614
Promote warnings to errors in explode()
2019-08-26 11:35:03 +02:00
Nikita Popov
06a4a9ba42
Merge branch 'PHP-7.4'
2019-08-26 11:33:38 +02:00
Nikita Popov
e57034a89b
Merge branch 'PHP-7.4'
2019-08-26 11:15:18 +02:00
Nikita Popov
e28cb9d04e
Merge branch 'PHP-7.4'
2019-08-26 11:10:07 +02:00
Nikita Popov
4c70a585b7
Merge branch 'PHP-7.4'
2019-08-26 10:28:14 +02:00
Stanislav Malyshev
5a77831a53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test
2019-08-25 20:06:50 -07:00
Stanislav Malyshev
c176c666e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #75457 : heap-use-after-free in php7.0.25
2019-08-25 19:21:13 -07:00
Christoph M. Becker
c8ec166cda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78454 : Consecutive numeric separators cause OOM error
2019-08-25 22:46:55 +02:00
George Peter Banyard
743729d5bf
Promote warnings to errors in str_pad()
2019-08-25 20:13:27 +02:00
Christoph M. Becker
6cd821b2d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't modify arrays passed by value
2019-08-25 18:29:08 +02:00
Christoph M. Becker
64d0416a72
Add ext/gmp stubs
2019-08-25 17:56:39 +02:00
Nikita Popov
6e3135070c
Remove unnecessary haystack length check in stripos()
...
This falls out naturally from the following condition, because
either the needle length will be zero as well, or the needle
will be longer than the (empty) haystack.
2019-08-25 16:31:15 +02:00
Nikita Popov
4346d1b0e6
Remove unnecessary NULL check
...
needle_dup cannot be NULL here.
2019-08-25 16:30:16 +02:00
Nikita Popov
d955ee9f6b
Make string size calculation in chunk_split more precise
...
The +1 on the string length is unnecessary, as we need the string
length without trailing NUL byte here.
The +1 on the chunks is only necessary if there is a rest. If the
string devides into chunks exactly, we don't need an extra chunk.
This makes the allocations exactly as large as it needs to be.
2019-08-25 15:34:37 +02:00
Olumide Samson
b9c961e160
Add some header and html function stub
2019-08-25 15:27:58 +02:00
Christoph M. Becker
4742b2e1de
Add stubs for ext/ftp
2019-08-25 14:56:45 +02:00
Nikita Popov
3602fea659
Skip memory_limit test without ZMM
2019-08-25 09:38:49 +02:00
Stanislav Malyshev
511faf7435
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update Oniguruma to 6.9.1
2019-08-25 00:21:23 -07:00
Stanislav Malyshev
72bc4672c6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix CVE-2019-13224: don't allow different encodings for onig_new_deluxe()
set version for release
2019-08-24 23:17:44 -07:00
George Peter Banyard
9d18f23c4c
Remove 'bogus' error condition in str_pad()
2019-08-24 16:05:00 +02:00
George Peter Banyard
675e975185
Promote warning to error in zend_forbid_dynamic_call()
2019-08-23 20:01:51 +02:00
George Peter Banyard
1059e3dc39
Promote warnings to errors in str_repeat()
2019-08-23 20:01:19 +02:00
Christoph M. Becker
bba7f38c4f
Don't explicitly set return value on ZPP failure in ext/iconv
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-08-23 18:14:46 +02:00
Christoph M. Becker
d420336115
Add ext/iconv stubs
2019-08-23 18:14:45 +02:00
Nikita Popov
4e4cc9b480
Merge branch 'PHP-7.4'
2019-08-23 17:23:31 +02:00
Nikita Popov
51ea7fc477
Merge branch 'PHP-7.4'
2019-08-23 17:01:49 +02:00
Nikita Popov
51905cd212
Merge branch 'PHP-7.4'
2019-08-23 15:37:07 +02:00
Nikita Popov
38ed1e6353
Merge branch 'PHP-7.4'
2019-08-23 15:27:55 +02:00
Christoph M. Becker
9f14eb114b
Fix bug77812-*.phpt
...
Undefined constants error as of PHP 8.0.0.
2019-08-23 14:49:50 +02:00
Christoph M. Becker
aa3f9c5f1c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77812 : Interactive mode does not support PHP 7.3-style heredoc
2019-08-23 14:04:52 +02:00
Tyson Andre
0c09089caf
Fix escapes for namespaced classes in gen_stub.php
...
Fix the string generated when the `ns\class` is passed to a macro
#define ESCAPE(x) #x
// puts(ESCAPE(ns\class)); // warning: unknown escape sequence: \c
puts(ESCAPE(ns\\class)); // Properly prints ns\class to stdout.
2019-08-23 12:29:55 +02:00
Christoph M. Becker
9b227640c1
Empty merge
2019-08-23 12:23:36 +02:00
Christoph M. Becker
5d94ad7944
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78438 : Corruption when __unserializing deeply nested structures
2019-08-23 11:41:38 +02:00
George Peter Banyard
f51421c629
Promote warnings to errors in chunk_split()
2019-08-22 21:45:36 +02:00
George Peter Banyard
fdff6cfd50
Promote warnings to errors in str_word_count()
2019-08-22 21:45:07 +02:00
George Peter Banyard
754d9f3da4
Promote warnings to errors in wordwrap()
2019-08-22 21:44:34 +02:00
George Peter Banyard
fe44e1637a
Promote warnings to errors in dirname()
2019-08-22 21:44:01 +02:00
George Peter Banyard
698491d98a
Promote warnings to errors in str_split()
2019-08-22 19:33:37 +02:00
George Peter Banyard
c0554fdec5
Promote warnings to errors in strtr()
2019-08-22 19:33:37 +02:00
George Peter Banyard
c1fcf2d616
Promote warnings to errors in array_pad()
2019-08-22 19:30:20 +02:00
George Peter Banyard
7dcbcd4ca5
Promote warnings to errors in array_column()
2019-08-22 19:27:47 +02:00
Christoph M. Becker
cee24be5b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix var_unserializer debug code
2019-08-22 15:59:34 +02:00
George Peter Banyard
ab76c613fe
Normalise strr(i)pos offset messages with str(i)pos ones.
2019-08-22 12:56:32 +02:00
Thomas Gerbet
70fa43edbe
Add stub for ext zlib
2019-08-22 11:01:51 +02:00
Christoph M. Becker
c53064fbff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78441 : Parse error due to heredoc identifier followed by digit
2019-08-21 22:55:25 +02:00
George Peter Banyard
7d4e3dc32d
Promote warnings to errors in array_combine()
2019-08-21 18:12:56 +02:00
George Peter Banyard
eaf66df517
Promote warnings to errors in array_multisort()
2019-08-21 18:10:13 +02:00
George Peter Banyard
c70f92caf8
Promote warning to error in array_chunk()
2019-08-21 18:07:35 +02:00
George Peter Banyard
7c6acc2eef
Promote warnings to errors in range()
2019-08-21 18:05:08 +02:00
George Peter Banyard
5b8e12a99b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code in base64.c
2019-08-20 21:46:51 +02:00
Nikita Popov
85b17a0429
Remove some unnecessary RETURN_FALSE
2019-08-20 17:08:19 +02:00
Remi Collet
8a9e7c8858
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ensure proper settings for test
Update NEWS for 7.4.0RC1
Update NEWS for PHP 7.4.0beta4
2019-08-20 16:31:24 +02:00
Tyson Andre
50be2ecbd7
Fix opcache type info for stream_bucket_make_writable()
...
Closes GH-4567.
2019-08-20 16:21:53 +02:00
Christoph M. Becker
773957c36f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78386 : fstat mode has unexpected value on PHP 7.4
2019-08-20 16:04:50 +02:00
Simon Podlipsky
4867864cae
Add Curl ext PHP stubs
...
Closes GH-4557.
2019-08-20 15:16:57 +02:00
Simon Podlipsky
3b2329dae9
Add Calendar ext PHP stubs
...
Closes GH-4552.
2019-08-20 15:15:52 +02:00
Christoph M. Becker
9c0c20b9f8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use C++ style comments
2019-08-20 13:59:20 +02:00
Christoph M. Becker
64c577abc5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix the problem for connect_attr, set db condition, and add a new attribute _server_host
2019-08-20 13:35:53 +02:00
Henrique Duarte
a6e1094b6e
Add stubs for filter extension
...
Closes GH-4542.
2019-08-20 11:04:25 +02:00
Nikita Popov
af5c637f96
Remove some unnecessary RETURN_FALSE uses
2019-08-20 10:35:27 +02:00
Christoph M. Becker
fff6445d44
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78220 : Can't access OneDrive folder
2019-08-19 19:59:08 +02:00
inem0o
baeb10d736
Add sha1 arginfo stubs
2019-08-19 12:35:53 +02:00
inem0o
8150c65ae4
Add pageinfo arginfo stubs
2019-08-19 11:29:22 +02:00
inem0o
b7c4d8e846
Add metaphone arginfo stubs
2019-08-19 11:18:44 +02:00
inem0o
ff7900f551
Add md5 arginfo stubs
2019-08-19 09:41:46 +02:00
Benjamin Eberlei
58d661cd7d
Cleanup unnecessary if guard clause to free buffer.
2019-08-18 12:28:40 +02:00
Christoph M. Becker
f50c460723
Don't explicitly set return value on ZPP failure in ext/calendar
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-08-17 14:23:11 +02:00
Yusuke Kawasaki
7602169d7c
Fix typo: environement [ci skip]
2019-08-17 12:41:53 +02:00
Nikita Popov
0fa469ab0c
Merge branch 'PHP-7.4'
2019-08-17 11:00:15 +02:00
George Peter Banyard
2505edb40d
Remove useless error check for bin2hex()
...
And change prototype accordingly...
Closes GH-4550.
2019-08-16 23:53:53 +02:00
Sara Golemon
b78347ba35
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Suppress deprecation warning on IDNA2003 ICU methods
2019-08-16 12:45:44 -04:00
Christoph M. Becker
2d1f371871
Don't explicitly set return value on ZPP failure
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-08-16 17:54:11 +02:00
Christoph M. Becker
1f49b1df50
Don't explicitly set return value on ZPP failure
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-08-16 17:52:42 +02:00
Sara Golemon
c406efd406
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Move to non deprecated API on suitable ICU versions"
2019-08-16 11:42:51 -04:00
Kauan Sousa
eec89ec066
Creating stub for ext bz2
2019-08-16 17:21:12 +02:00
inem0o
f795bdfd30
Add lcg arginfo stubs
2019-08-16 12:56:07 +02:00
inem0o
f1eca42825
Add ftok arginfo stubs
2019-08-16 12:53:11 +02:00
Nikita Popov
37a8408e83
Support typed variadic args in gen_stubs
2019-08-15 22:07:49 +02:00
Christoph M. Becker
d04c85fcb5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
appveyor: exclude some documentation paths
2019-08-15 18:20:03 +02:00
Christoph M. Becker
76574342d7
Empty merge
2019-08-15 15:30:28 +02:00
Victor Gazotti
75a3213d19
creating stubs for echant ext
2019-08-15 15:16:56 +02:00
Christoph M. Becker
a3abbc0920
Unify ZPP handling in ext/sqlite3
...
Since `zend_parse_parameters()` now throws on failure, it doesn't make
sense anymore to use `zend_parse_parameters_throw()` instead, and also
it's useless to set an explicit return value.
2019-08-15 13:31:02 +02:00
Christoph M. Becker
e3ebdb6be2
Don't repeat yourself
...
SQLite3::bindParam() and SQLite3::bindValue() have identical
implementation (the only thing that differs is the second parameter's
passing mode), so we unify the implementation.
2019-08-15 13:10:53 +02:00
Craig Duncan
107c1e0c1b
Convert sqlite3 functions arginfo to php stubs
2019-08-15 12:56:46 +02:00
Nikita Popov
743d27631f
Normalize SimpleXML::asXML() argument handling
...
Remove odd manual checks in favor of a standard zpp call.
2019-08-15 11:18:56 +02:00
Nikita Popov
deceafbe63
Merge branch 'PHP-7.4'
2019-08-15 10:40:45 +02:00
zhdaniel
844b261e3a
Fix typo
2019-08-15 09:32:35 +02:00
Christoph M. Becker
c82566dec7
Empty merge
2019-08-14 19:26:26 +02:00
Nikita Popov
ded28e2435
Merge branch 'PHP-7.4'
2019-08-14 17:53:38 +02:00
Theodore Brown
e2b0fb946b
Add hrtime arginfo stubs
2019-08-14 16:46:10 +02:00
Victor Gazotti
262227fc9e
Add some stubs at ctype ext
2019-08-14 16:43:26 +02:00
jason-liew
ffffaf12cf
add some stubs for array func in basic_functions
2019-08-14 15:27:58 +02:00
Stephen Reay
f40cc41465
Added arginfo stub for posix extension
2019-08-14 14:40:37 +02:00
Sara Golemon
9436a2c488
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump for 7.2.23
2019-08-13 19:34:42 -04:00
Christoph M. Becker
b265bfb223
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Next will be 7.3.10
2019-08-14 00:49:06 +02:00
Christoph M. Becker
d469e2bf56
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump version numbers
2019-08-13 23:26:58 +02:00
Nikita Popov
d0f4ec4c31
Merge branch 'PHP-7.4'
2019-08-13 20:24:39 +02:00
Nikita Popov
8c927442b4
Merge branch 'PHP-7.4'
2019-08-13 14:54:57 +02:00
Islam Israfilov
1dc88ff67e
Add inet_ntop and inet_pton stubs
2019-08-13 14:52:14 +02:00
Christoph M. Becker
e7ac9428d8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code
2019-08-13 13:29:35 +02:00
Stephen Reay
d4e5e63b6c
Added zip arginfo stubs
2019-08-13 13:01:51 +02:00
Nikita Popov
be4b66a369
Merge branch 'PHP-7.4'
2019-08-13 12:35:02 +02:00
Nikita Popov
1ae0b68404
Merge branch 'PHP-7.4'
2019-08-13 12:17:47 +02:00
Nikita Popov
9af705e753
Merge branch 'PHP-7.4'
2019-08-13 11:45:16 +02:00
inem0o
ccf79547af
Add crypt() function's stub
...
Closes GH-4515.
2019-08-13 11:28:32 +02:00
Nikita Popov
19378ae44a
Merge branch 'PHP-7.4'
2019-08-13 11:23:35 +02:00
Nikita Popov
2e4f76dc80
Merge branch 'PHP-7.4'
2019-08-13 10:23:32 +02:00
inem0o
fb363f7f00
add syslog arginfo stubs
2019-08-13 09:58:26 +02:00
Nikita Popov
d996a8c410
Merge branch 'PHP-7.4'
2019-08-13 09:55:06 +02:00
Craig Duncan
06aa2ae993
Update the date class arginfo the new format
2019-08-12 20:57:30 +01:00
Craig Duncan
288442716e
Add a prefix to differeniate between class methods and functions
...
Closes GH-4528
2019-08-12 20:57:18 +01:00
Christoph M. Becker
ab7c3bf4bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix WS
2019-08-12 18:00:21 +02:00
Nikita Popov
f0d4c48c7e
Merge branch 'PHP-7.4'
2019-08-12 17:18:14 +02:00
Stephen Reay
0b3a10aecc
Add readline arginfo stubs
2019-08-12 16:03:26 +02:00
Christoph M. Becker
cd57fb5140
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing argument checks
2019-08-12 15:42:26 +02:00
Kyle
b17957eaac
Add missing parameters to __set_state() methods
...
Closes GH-4526.
2019-08-12 15:20:23 +02:00
Christoph M. Becker
4281b1378e
Don't explicitly set return value on ZPP/ZFR failure
...
Failing `zend_parse_parameters()` and `zend_fetch_resource()` throw as
of PHP 8.0.0, so explicitly setting a return value is useless, and also
slightly confusing.
2019-08-12 14:42:26 +02:00
Nikita Popov
1a9a5f995c
Merge branch 'PHP-7.4'
2019-08-12 10:45:43 +02:00
Stephen Reay
9f95d68ca3
Added arginfo stubs for sysvmsg
...
Closes GH-4522.
2019-08-12 10:28:52 +02:00
Nikita Popov
7c49951769
Support regenerating all stubs
2019-08-12 10:27:22 +02:00
Stephen Reay
434f5329f7
Fixed inconsistent naming for stub, return type for shmop_size
2019-08-12 10:13:53 +02:00
Stephen Reay
c5a7f61eca
Fix return type on shmop_close
2019-08-12 10:13:52 +02:00
Stephen Reay
93efcaa9c3
Added shmop arginfo stubs
2019-08-12 10:13:52 +02:00
Stephen Reay
47b95bd83c
Added arginfo stubs for sysvsem
...
Closes GH-4523.
2019-08-12 10:05:36 +02:00
Stephen Reay
5db3306981
Added arginfo stubs for svsvshm
...
Closes GH-4524.
2019-08-12 10:05:36 +02:00
Nikita Popov
429378d78d
Remove some misleading RETURN_FALSE
...
These functions throw, so they can't return false.
This is just a subset...
2019-08-12 10:05:36 +02:00
Christoph M. Becker
193dcec529
Don't explicitly set return value on ZPP failure
...
Failing ZPP throws as of PHP 8.0.0, so explicitly setting a return
value is useless, and also slightly confusing.
2019-08-12 10:02:45 +02:00
Christoph M. Becker
4b6363d100
Claim maintainership of ext/com_dotnet
2019-08-11 22:28:04 +02:00
Christoph M. Becker
3e80b13682
Don't throw manual exceptions on ZPP failure
...
As of PHP 8.0.0, ZPP throws on failure, so manually throwing exceptions
is superfluous and confusing.
2019-08-11 22:21:08 +02:00
Christoph M. Becker
177981d80d
Add com_dotnet function stubs
2019-08-11 21:46:14 +02:00
Stephen Reay
cfbcd4caef
Arginfo stubs for tokenizer
2019-08-11 19:03:04 +02:00
Stephen Reay
44de46ab69
Add support for callable to the stub generator [ci skip]
2019-08-11 18:37:35 +02:00
inem0o
1376f61aed
Add crc32 stub
2019-08-11 18:33:58 +02:00
Derick Rethans
0835e66372
Updated to version 2019.2 (2019b)
2019-08-11 16:06:00 +01:00
Derick Rethans
7d7fd3e818
Empty merge
2019-08-11 16:06:00 +01:00
Christoph M. Becker
0c5b75b063
Fix arginfo
...
The second parameter of `imagexbm()` is nullable.
2019-08-11 16:41:31 +02:00
Christoph M. Becker
f30501b172
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix parameter order
2019-08-11 16:18:44 +02:00
Christoph M. Becker
f273204011
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extend color component range checks
2019-08-11 15:23:23 +02:00
Nikita Popov
228bae7d74
Use TypeError for preg_replace type check
...
This is a type violation warning, and as such should use TypeError
in PHP 8.
2019-08-11 14:28:10 +02:00
Christoph M. Becker
4067519541
Fix arginfo
2019-08-11 13:54:52 +02:00
Christoph M. Becker
c90a27387e
Add GD function stubs
2019-08-11 13:17:24 +02:00
Stephen Reay
66b750d07e
Add stubs for PCRE extension
...
Closes GH-4501.
2019-08-11 12:46:42 +02:00
Rimvydas Zilinskas
31d7f9763b
Add partial openssl stubs
...
Closes GH-4509.
2019-08-10 22:19:16 +02:00
Simon Podlipsky
4799b76f39
Add BCMath PHP stubs
...
Closes GH-4508.
2019-08-10 22:18:04 +02:00
Craig Duncan
f9980e609e
Convert gettext functions arginfo to php stubs
...
Closes GH-4506
2019-08-10 17:17:19 +01:00
inem0o
b98bc5bd92
Add base64_encode / base64_decode stubs
...
Closes GH-4504.
2019-08-10 17:40:10 +02:00
Craig Duncan
7e7eaa0eb2
Convert json functions arginfo to php stubs
...
Closes GH-4500
2019-08-10 16:04:30 +01:00
Nikita Popov
ae721c488d
Handle preprocessor conditions inside classes
...
Also remove the dead parseClass() function.
2019-08-10 16:29:45 +02:00
Stephen Reay
9c02c58481
Fallback to curl in gen_stub if wget fails
...
Closes GH-4502.
2019-08-10 16:21:03 +02:00
Nikita Popov
17987da884
Expand preprocessor support in gen_stubs
...
Support #ifdef, #ifndef, #else and nested #if's.
2019-08-10 15:07:54 +02:00
Nikita Popov
d9e2d18505
Add some basic_functions stubs
2019-08-10 12:34:29 +02:00
Dmitry Stogov
172c71980d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed handling of references in nested data of objects with destructor
2019-08-09 17:47:50 +03:00
Nikita Popov
8edf59ce29
Merge branch 'PHP-7.4'
2019-08-09 16:34:47 +02:00
Nikita Popov
8e2218a36c
Merge branch 'PHP-7.4'
2019-08-09 15:04:10 +02:00
Dmitry Stogov
fa1e4984ab
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Fixed bug #78391
Make uninitialized DateTime an Error
Generate arginfo from PHP stub files
2019-08-09 16:03:07 +03:00
Nikita Popov
4276d669d2
Merge branch 'PHP-7.4'
2019-08-09 15:02:57 +02:00
Nikita Popov
69a771346a
Fixed bug #78391
2019-08-09 15:02:44 +02:00
Dmitry Stogov
a037a5bd33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed second part of the bug #78379 (Cast to object confuses GC, causes crash)
2019-08-09 15:58:44 +03:00
Nikita Popov
3b2f2ce474
Make uninitialized DateTime an Error
...
This avoids many spurious false return values.
2019-08-09 14:51:25 +02:00
Nikita Popov
33886f710c
Generate arginfo from PHP stub files
...
Signature stubs for internal functions are specified in xyz.stub.php,
from which we generate actual arginfo structures in xyz_arginfo.h.
This file then needs to be included in the implementation appropriately.
Arginfo from stubs can be regenerated using scripts/dev/gen_stub.php.
However, this should also automatically happen when the stub file is
modified.
2019-08-09 14:51:25 +02:00
Dmitry Stogov
9b973550b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added asserts to catch GC errors when refcount goes below zero.
2019-08-09 13:40:56 +03:00
Matteo Beccati
3b84238200
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test when SIGKILL is not defined
2019-08-09 10:33:23 +02:00
Matteo Beccati
13980414eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test when default TZ is not UTC
2019-08-09 09:58:36 +02:00
Nikita Popov
e22633c4a7
Merge branch 'PHP-7.4'
2019-08-08 10:55:07 +02:00
Nikita Popov
a56d1cfc00
Merge branch 'PHP-7.4'
...
[ci skip]
2019-08-08 10:12:43 +02:00
Nikita Popov
527dad600b
Merge branch 'PHP-7.4'
2019-08-08 09:56:10 +02:00
Dmitry Stogov
db4eb13b25
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78379 (Cast to object confuses GC, causes crash)
2019-08-08 10:09:04 +03:00
Christoph M. Becker
1542d1b5ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix detection of pg_config.h
2019-08-07 13:25:27 +02:00
Christoph M. Becker
8b5b4d8860
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip test if ext/json is not available
2019-08-07 13:04:42 +02:00
Christoph M. Becker
2de4837b1f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make extension compatibility check more liberal
2019-08-07 11:31:29 +02:00
Christoph M. Becker
932842b23e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78282 : atime and mtime mismatch
2019-08-06 17:29:13 +02:00
Dmitry Stogov
b912335315
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Inline zend_zval_ptr() in executor explicitely (only on hot paths)
2019-08-06 16:33:27 +03:00
Dmitry Stogov
f64650408a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo
2019-08-06 13:58:29 +03:00
Dmitry Stogov
e2440c3da5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Preloading is not comatible with dl() function
2019-08-06 12:45:48 +03:00
Dmitry Stogov
4d9e5ddf7c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't set GC_HAS_DESTRUCTORS flag if destructors were already called
Update NEWS for 7.4.0beta3
Update NEWS for PHP 7.4.0beta2
2019-08-06 11:37:08 +03:00
Dmitry Stogov
d6a8a5ac64
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78376 (Incorrect preloading of constant static properties)
2019-08-05 22:56:03 +03:00
Christoph M. Becker
6326717dcc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix handling of succeeding XFAIL tests
2019-08-05 11:39:09 +02:00
Christoph M. Becker
85f253ae4f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support calling convention specific function name mangling
2019-08-04 12:14:31 +02:00
Christoph M. Becker
acac7d1a1a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78346 : strip_tags no longer handling nested php tags
2019-08-02 17:05:01 +02:00
Christoph M. Becker
ca8c01ea16
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78179 : MariaDB server version incorrectly detected
2019-08-02 16:46:06 +02:00
Nikita Popov
d4e31cc69f
Merge branch 'PHP-7.4'
2019-08-02 10:38:39 +02:00
Nikita Popov
21cd438c33
Merge branch 'PHP-7.4'
2019-08-01 17:00:49 +02:00
Christoph M. Becker
7f210dd1b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove upgrade-pcre.php script
2019-08-01 10:50:40 +02:00
Nikita Popov
e63093e547
Merge branch 'PHP-7.4'
2019-08-01 10:11:02 +02:00
Christoph M. Becker
f38f75f392
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix 78213: Empty row pocket
2019-07-31 18:08:19 +02:00
Peter Kokot
3e124fc1c7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix #78348 : Remove -lrt from pdo_sqlite.so
2019-07-30 22:09:18 +02:00
Christoph M. Becker
075440e7d2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests
2019-07-30 16:33:16 +02:00
Remi Collet
0c52061d12
add php-keyring.gpg update step
2019-07-30 14:59:37 +02:00
Nikita Popov
a4cfbeb143
Merge branch 'PHP-7.4'
2019-07-30 10:32:26 +02:00
Nikita Popov
2b1073eb19
Merge branch 'PHP-7.4'
2019-07-30 10:19:01 +02:00
Nikita Popov
14f99ede42
Merge branch 'PHP-7.4'
2019-07-30 10:07:25 +02:00
Christoph M. Becker
5bf12e8453
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add security related NEWS entries [ci skip]
2019-07-30 09:52:07 +02:00
Remi Collet
1afe6b530e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add security NEW entries + reorder [ci skip]
2019-07-30 09:27:35 +02:00
Stanislav Malyshev
4798570607
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78338 : Array cross-border reading in PCRE
2019-07-29 14:51:35 -07:00
Stanislav Malyshev
e043025fda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77919 : Potential UAF in Phar RSHUTDOWN
Update NEWS
Fix bug #78256 (heap-buffer-overflow on exif_process_user_comment)
Fix bug #78222 (heap-buffer-overflow on exif_scan_thumbnail)
2019-07-29 13:20:59 -07:00
Nikita Popov
cab6b34224
Merge branch 'PHP-7.4'
2019-07-29 21:08:39 +02:00
Christoph M. Becker
7548421202
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix build for --disable-signals
2019-07-29 18:50:13 +02:00
Nikita Popov
148954101a
Merge branch 'PHP-7.4'
2019-07-29 17:34:42 +02:00
Nikita Popov
9a3aef3c21
Merge branch 'PHP-7.4'
2019-07-29 17:15:35 +02:00
Christoph M. Becker
d8c2537d64
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
2019-07-29 14:49:18 +02:00
Christoph M. Becker
1a3e3c8c26
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Document how to generate ffi_parser.c
2019-07-29 13:39:28 +02:00
Nikita Popov
45eabeca81
Merge branch 'PHP-7.4'
2019-07-29 13:03:59 +02:00
Nikita Popov
c84ba44c16
Merge branch 'PHP-7.4'
2019-07-29 11:27:44 +02:00
Nikita Popov
2b10f6299b
Merge branch 'PHP-7.4'
2019-07-29 11:26:36 +02:00
Nikita Popov
cd1c651af1
Merge branch 'PHP-7.4'
2019-07-29 11:13:33 +02:00
Nikita Popov
bc6e4b6c57
Merge branch 'PHP-7.4'
2019-07-29 10:12:58 +02:00
Christoph M. Becker
3f3aac1d07
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78342 : Bus error in configure test for iconv //IGNORE
2019-07-29 08:52:11 +02:00
Peter Kokot
a547af7ce2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
nit: Fix a typo in UPGRADING
2019-07-27 23:14:43 +02:00
Christoph M. Becker
9817382149
Merge branch 'PHP-7.4'
...
* PHP-7.4:
file encoding cleanup: remove bom in win32 files
2019-07-27 10:14:14 +02:00
Peter Kokot
6b55b5ed00
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Mention also API versions bumps
2019-07-26 01:48:22 +02:00
Peter Kokot
62a2138fc7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos in UPGRADING and improve wording in a few places
2019-07-26 01:17:13 +02:00
Christoph M. Becker
174aaf594f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplication
2019-07-25 19:09:53 +02:00
Levi Morrison
a688335955
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove .post files only for passing tests
2019-07-25 09:51:29 -06:00
Matteo Beccati
85aee3419c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Addded missing NEWS/UPGRADING entries for PDO "??" escape
2019-07-25 16:31:00 +02:00
Remi Collet
88a3e80dd1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix build warnings
2019-07-25 11:50:57 +02:00
Nikita Popov
8d39510af8
Merge branch 'PHP-7.4'
2019-07-25 10:43:50 +02:00
Peter Kokot
02cdef555d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump PHP_JSON_VERSION to PHP_VERSION
2019-07-24 22:19:49 +02:00
Peter Kokot
9af6d5545a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove AC_FPM_POLL
2019-07-24 22:04:24 +02:00
Peter Kokot
452356af2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove outdated Libtool hack for macs
2019-07-24 21:43:26 +02:00
Nikita Popov
957013c5b7
Merge branch 'PHP-7.4'
2019-07-24 20:53:19 +02:00
Dmitry Stogov
96dab0a657
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid over-specialization
2019-07-24 20:00:55 +03:00
Dmitry Stogov
30886007c1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reordering
2019-07-24 18:52:55 +03:00
Dmitry Stogov
a106e52b10
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Delay dereference
2019-07-24 18:40:03 +03:00
Nikita Popov
890a97c6d2
Merge branch 'PHP-7.4'
2019-07-24 16:41:44 +02:00
Dmitry Stogov
1f38adb501
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid reloading
2019-07-24 17:38:42 +03:00
Dmitry Stogov
57d9b94dea
Simplify TMP/VAR operand releasing
2019-07-24 14:13:40 +03:00
Nikita Popov
0fcd017340
Merge branch 'PHP-7.4'
2019-07-24 12:07:04 +02:00
Nikita Popov
8aa92c1465
Merge branch 'PHP-7.4'
2019-07-24 10:52:18 +02:00
Nikita Popov
173ebe4c44
Merge branch 'PHP-7.4'
2019-07-24 10:44:40 +02:00
Nikita Popov
dc6341eb78
Merge branch 'PHP-7.4'
2019-07-24 10:07:51 +02:00
Nikita Popov
80681e8d40
Merge branch 'PHP-7.4'
2019-07-24 09:55:09 +02:00
Dmitry Stogov
3c4f38d512
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed CALL VM
2019-07-24 01:52:26 +03:00
Dmitry Stogov
43c4e4cd22
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed unspecialized executor
2019-07-24 01:43:20 +03:00
Nikita Popov
d37d418927
Merge branch 'PHP-7.4'
2019-07-23 11:28:10 +02:00
Peter Kokot
cef2071eb4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Update NEWS
Update NEWS
2019-07-23 02:32:56 +02:00
Matteo Beccati
9590912854
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix FR #71885 (Allow escaping question mark placeholders)
2019-07-22 19:35:37 +02:00
Peter Kokot
7dbd25df68
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_OCILOBISTEMPORARY and HAVE_OCICOLLASSIGN
2019-07-22 19:14:30 +02:00
Nikita Popov
ac555cf6ee
Merge branch 'PHP-7.4'
2019-07-22 17:56:38 +02:00
Nikita Popov
a1e2c8870e
Merge branch 'PHP-7.4'
2019-07-22 17:26:01 +02:00
Nikita Popov
7a1540fa28
Merge branch 'PHP-7.4'
2019-07-22 17:00:17 +02:00
Remi Collet
92d6720dcf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
cleanup gd build with system libgd - drop need to use libpng with system libgd - drop need to use libjpeg with system libgd - drop need to use libXpm with system libgd - drop need to use libfreetype with system libgd - improve configure comments
2019-07-22 16:14:36 +02:00
Peter Kokot
4ec0889bec
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_PQPUTCOPYEND
2019-07-22 16:06:12 +02:00
Peter Kokot
f888f4cf4f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix internals upgrading log
Remove HAVE_DSA_DEFAULT_METHOD
2019-07-22 16:04:20 +02:00
Christoph M. Becker
ea2b8122e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove superfluous HAVE_GD_BUNDLED checks
2019-07-22 16:00:18 +02:00
Nikita Popov
a9969ec1bd
Merge branch 'PHP-7.4'
2019-07-22 12:41:20 +02:00
Nikita Popov
49f848e957
Merge branch 'PHP-7.4'
2019-07-22 12:29:31 +02:00
Nikita Popov
1e95f44850
Merge branch 'master' of git.php.net:/php-src
2019-07-22 12:29:27 +02:00
Nikita Popov
36db71df47
Merge branch 'PHP-7.4'
2019-07-22 12:28:40 +02:00
Christoph M. Becker
ebe91a0066
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Drop superfluous ENABLE_GD_TTF
2019-07-22 12:01:58 +02:00
Nikita Popov
8092604ec2
Merge branch 'PHP-7.4'
2019-07-22 11:19:32 +02:00
Dmitry Stogov
c713f589c1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Initialize static_members_table
2019-07-22 12:03:35 +03:00
Dmitry Stogov
390810e1e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Evaluate constant in class scope
2019-07-22 11:59:49 +03:00
Nikita Popov
a16ca769af
Merge branch 'PHP-7.4'
2019-07-22 10:34:58 +02:00
Remi Collet
2db5dfd6fc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
improve temporary fix for system libgd
2019-07-22 09:12:48 +02:00
Peter Kokot
f7f0b4c1dd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove build.mk usage
2019-07-21 11:41:20 +02:00
Peter Kokot
9ddf7b5599
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some unused HAVE_* symbols
2019-07-21 11:35:09 +02:00
Peter Kokot
00821b807c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_LIBZIP
2019-07-21 11:32:53 +02:00
George Wang
e4f6744552
Merge branch 'PHP-7.4'
2019-07-21 00:02:03 -04:00
Peter Kokot
65d3e142e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Renamed MySQLi test to remove duplicate 'mysqli_'
2019-07-21 01:10:57 +02:00
Peter Kokot
ca93928f99
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos
2019-07-21 01:02:51 +02:00
Peter Kokot
7d94c90374
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix failed tests for phar
2019-07-21 00:50:27 +02:00
Peter Kokot
b2bd9aeb41
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move HAVE_SQLITE3_CLOSE_V2 to pdo_sqlite
2019-07-21 00:41:20 +02:00
Peter Kokot
24fbda0505
Update changelog
2019-07-21 00:39:44 +02:00
Peter Kokot
605386e394
Remove HAVE_LOCALE_H and locale.h check
...
This was a left over for supporting old code in PHP extensions out there.
Check is not needed anymore since this is part of C89+ standard.
Closes GH-4445
2019-07-21 00:37:47 +02:00
Remi Collet
eba877de77
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78314 (missing freetype support/functions with external gd)
2019-07-20 07:57:26 +02:00
Peter Kokot
ba2864d4d8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused sqlite symbols
2019-07-20 00:27:39 +02:00
Peter Kokot
11e7c001df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos in FFI
2019-07-19 23:07:34 +02:00
Christoph M. Becker
257064de1a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Put oniguruma include path to proper CFLAGS
2019-07-19 20:05:08 +02:00
Christoph M. Becker
3060a4cf52
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move Oniguruma related config stuff to where it belongs
2019-07-19 19:31:58 +02:00
Nikita Popov
a5fb908e31
Merge branch 'PHP-7.4'
2019-07-19 10:59:10 +02:00
Dmitry Stogov
97912023bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use run-time cache to avoid repeatable hash lookups in ZEND_DECLARE_CLASS_DELAYED
2019-07-19 11:46:35 +03:00
Nikita Popov
eb766751dc
Merge branch 'PHP-7.4'
2019-07-19 10:06:30 +02:00
Dmitry Stogov
3cc6dd9c76
Fixed JIT
2019-07-19 10:50:51 +03:00
Dmitry Stogov
a837b80a48
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use run-time cache to avoid repeatable hash lookups when creating anonymous functions and classes
2019-07-19 10:45:00 +03:00
Dmitry Stogov
5ac3580b9b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ZEND_DECLARE_ANON_CLASS doesn't need to skip anything now. It's immediatelly followed by ZEND_NEW.
2019-07-19 10:10:50 +03:00
Peter Kokot
265bd7d039
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove safe_mode directive when installing ext/phar
2019-07-19 00:03:06 +02:00
Dmitry Stogov
dea80d708d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Merge common code
2019-07-18 16:50:56 +03:00
Nikita Popov
e13981f981
Merge branch 'PHP-7.4'
2019-07-18 14:42:34 +02:00
Christoph M. Becker
010d6246e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove remaining lightnings from run-tests.php
2019-07-18 12:15:42 +02:00
Peter Kokot
f33d12096d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate socklen_t check
2019-07-18 12:11:45 +02:00
Nikita Popov
b022817227
Merge branch 'PHP-7.4'
2019-07-18 11:16:33 +02:00
Nikita Popov
da68dc85a3
Merge branch 'PHP-7.4'
2019-07-18 11:13:38 +02:00
Sjon Hortensius
05752d3acf
Ref #77388 : Don't pass BAD_ESCAPE_IS_LITERAL
...
This option is considered dangerous and unwanted. To allow for more
graceful migration don't error on now ignored X modifier.
Closes GH-4430.
2019-07-18 10:52:27 +02:00
Nikita Popov
bbcfa5083e
Remove Z_PARAM_ZVAL_DEREF
...
Since PHP 7.4 using this is very likely wrong, and we don't have
any core uses of it for that reason. Extensions shouldn't be using
it either. Accept as Z_PARAM_ZVAL and then assign using
ZEND_TRY_ASSIGN macros.
2019-07-18 10:44:27 +02:00
Christoph M. Becker
33656f0289
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS and UPGRADING wrt. opcache.cache_id [ci skip]
2019-07-18 09:17:14 +02:00
Christoph M. Becker
0ff5931310
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use regedit to register event source
2019-07-18 09:11:18 +02:00
Peter Kokot
ba72a135f0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs
2019-07-18 02:27:33 +02:00
Peter Kokot
22583b20bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
Remove unused defines
2019-07-18 02:23:46 +02:00
Peter Kokot
89a6ebd0e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelog
Remove unused MISSING_MSGHDR_MSGFLAGS
2019-07-18 02:18:18 +02:00
Peter Kokot
e504716320
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate AC_PROG_CPP call
2019-07-18 02:15:32 +02:00
Peter Kokot
139ecf84ff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelog
Remove unused HAVE_SHM_MMAP_ZERO and HAVE_SHM_MMAP_FILE
2019-07-18 02:13:32 +02:00
Christoph M. Becker
54401001a8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow multiple cache instances per user/host on Windows
2019-07-17 19:52:49 +02:00
Christoph M. Becker
6d00cff36f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Remove Windows syslog script and syslog.reg"
2019-07-17 19:37:46 +02:00
Nikita Popov
96aae524bf
Merge branch 'PHP-7.4'
2019-07-17 15:59:31 +02:00
Nikita Popov
b7a0e111cc
Merge branch 'PHP-7.4'
2019-07-17 14:48:59 +02:00
Nikita Popov
1221293a98
Avoid duplicate fstat() for includes
...
By adding a flag to avoid forced fstat for includes. The two fstats
will happen back to back and we don't care about a possible
invalidation.
I was hoping to move this higher up in the stack and make the
ISREG check somewhere in fsizer of fixup, but this doesn't really
seem to be possible. E.g. an FP stdin handle will not be a regular
file but of course needs to be allowed. Additionally custom stream
wrappers may not implement this functionality.
2019-07-17 14:48:10 +02:00
Dmitry Stogov
b1f17a2579
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid extra specialization for cold opcodes
2019-07-17 14:04:26 +03:00
Nikita Popov
3c2f433b2b
Merge branch 'PHP-7.4'
2019-07-17 12:02:30 +02:00
Nikita Popov
995b391621
Merge branch 'PHP-7.4'
2019-07-17 11:22:41 +02:00
Dmitry Stogov
aced6c1538
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove old hack
2019-07-17 12:05:40 +03:00
Nikita Popov
b32e9a9227
Merge branch 'PHP-7.4'
2019-07-17 10:41:34 +02:00
Dmitry Stogov
a997a23f61
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added specialization for comparison instructions and QM_ASSIGN
2019-07-17 09:12:27 +03:00
Peter Kokot
cf197962e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
Simplify functions checks in m4
2019-07-17 03:55:04 +02:00
Dmitry Stogov
51442a428c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate "cold" and common unspecialized code
2019-07-17 00:56:06 +03:00
Peter Kokot
b40be8751a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelog
Remove unused build checks
2019-07-16 22:47:02 +02:00
Dmitry Stogov
ca68570609
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Provide type info
2019-07-16 22:56:47 +03:00
Nikita Popov
c4a6998c62
Merge branch 'PHP-7.4'
2019-07-16 17:45:03 +02:00
Nikita Popov
3faa903d47
Merge branch 'PHP-7.4'
2019-07-16 16:44:46 +02:00
Dmitry Stogov
72c6ea9cb8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Slit INC/DEC opcodes into hot/cold parts and remove specialized versioins for LONG_OR_DOUBLE.
2019-07-16 17:40:31 +03:00
Nikita Popov
70e2d2d0ee
Merge branch 'PHP-7.4'
2019-07-16 15:54:05 +02:00
Nikita Popov
06cf349dc3
Merge branch 'PHP-7.4'
2019-07-16 15:48:24 +02:00
Christoph M. Becker
6697204222
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert short tag to standard tag in Zend test file
2019-07-16 15:29:33 +02:00
Christoph M. Becker
54574dcf02
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
2019-07-16 13:46:17 +02:00
Remi Collet
56dc1981b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
move NEWS entry [ci skip]
2019-07-16 13:00:57 +02:00
Dmitry Stogov
2ac93e2965
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace deprecated conditions by ZEND_ASSERT.
2019-07-16 13:50:55 +03:00
Nikita Popov
e36118a5c5
Merge branch 'PHP-7.4'
2019-07-16 12:20:21 +02:00
Nikita Popov
ce972ba349
Merge branch 'PHP-7.4'
2019-07-16 11:54:40 +02:00
Nikita Popov
c562d71d12
Merge branch 'PHP-7.4'
2019-07-16 11:11:08 +02:00
Remi Collet
1d29b5b89b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next is 7.2.22
2019-07-16 10:39:37 +02:00
Nikita Popov
760308cbff
Fix build without jit
2019-07-16 10:26:25 +02:00
Nikita Popov
bd38129fa4
Merge branch 'PHP-7.4'
2019-07-16 10:25:14 +02:00
Dmitry Stogov
ab2888511b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Delay IS_UNDEF checks
2019-07-16 11:17:04 +03:00
Dmitry Stogov
c0b683e751
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect specialization (missed IS_INDIRECT handling)
2019-07-16 01:54:34 +03:00
Peter Kokot
ccac19ed6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Small typo and proto name fix
2019-07-15 18:15:58 +02:00
Peter Kokot
62d21d8e20
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove win32/php_stdbool.h
2019-07-15 18:00:31 +02:00
Peter Kokot
f213132c72
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused files
2019-07-15 17:59:17 +02:00
Peter Kokot
160ba0f7bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove Windows syslog script and syslog.reg
2019-07-15 17:57:51 +02:00
Peter Kokot
f6c684a45f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some *.dsp/*.dsw leftovers
2019-07-15 17:56:07 +02:00
Nikita Popov
90d5276e1b
Merge branch 'PHP-7.4'
2019-07-15 17:29:45 +02:00
Nikita Popov
9207aef60c
Merge branch 'PHP-7.4'
2019-07-15 16:26:25 +02:00
Nikita Popov
e33d7dc9e6
Merge branch 'PHP-7.4'
2019-07-15 15:20:45 +02:00
Christoph M. Becker
35c5e0a052
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync mysqlnd version with PHP version
2019-07-15 14:21:25 +02:00
Remi Collet
f6e32613c7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo [ci skip]
2019-07-15 14:17:32 +02:00
Remi Collet
40bed7b3a7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78269 password_hash uses weak options for argon2
Fix #78269 password_hash uses weak options for argon2
2019-07-15 14:12:13 +02:00
Christoph M. Becker
7556600dfc
Fix #65547 : Default value for sunrise/sunset zenith still wrong
...
The value of the zenith angle to calculate sunrise and sunset times is
commonly defined as 90°50', and is "obtained by adding the average
apparent radius of the Sun (16') to the average amount of atmospheric
refraction at the horizon (34')", according to
http://aa.usno.navy.mil/faq/docs/RST_defs.php .
This value is also used for the Sunrise/Sunset Algorithm published in
the Almanac for Computers, 1990, see
https://web.archive.org/web/20161202180207/http://williams.best.vwh.net/sunrise_sunset_algorithm.htm .
2019-07-15 13:52:09 +02:00
Nikita Popov
25985fedcf
Merge branch 'PHP-7.4'
2019-07-15 13:49:36 +02:00
Nikita Popov
193bcf9650
Merge branch 'PHP-7.4'
2019-07-15 12:52:18 +02:00
Nikita Popov
f821256d00
Remove unused is_constructor arguments
2019-07-15 12:36:31 +02:00
Dmitry Stogov
01d0bd126c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
vectorize string-escape with NEON
2019-07-15 11:36:11 +03:00
Nikita Popov
8a10258a53
Merge branch 'PHP-7.4'
2019-07-15 10:33:31 +02:00
Peter Kokot
5284645fc3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove usage of PHP_AIX_LDFLAGS
2019-07-14 23:45:13 +02:00
Peter Kokot
9310ac2ab5
Symbol HAVE_PCRE has been removed
2019-07-14 23:02:52 +02:00
Peter Kokot
f91ffe5915
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove conditional calls of always available macros
2019-07-14 22:24:59 +02:00
Peter Kokot
08c8051977
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unsed zts check for sqlite3
2019-07-14 21:08:19 +02:00
Peter Kokot
5ca149d192
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate PTHREADS template define
2019-07-14 14:46:55 +02:00
Peter Kokot
2ba4fb1263
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove timelib outdated defines
2019-07-14 13:50:43 +02:00
Peter Kokot
567b602bcf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PHP_MYSQL variable
2019-07-14 13:49:18 +02:00
Peter Kokot
856569ce2e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs
2019-07-13 15:38:58 +02:00
Peter Kokot
16e64cb5e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove php_multiple_shlib_versions_ok
2019-07-13 15:06:53 +02:00
Peter Kokot
7b727607d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused recode extension artefacts
2019-07-13 14:53:07 +02:00
Peter Kokot
68c0c812c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove checks for always enabled spl and pcre
2019-07-13 14:49:00 +02:00
Peter Kokot
71bd212d0e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove WARNING_LEVEL fix for QNX
2019-07-13 14:40:17 +02:00
Christoph M. Becker
156cc1d6c5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78283 : no output for explicit environment
2019-07-13 12:03:59 +02:00
Christoph M. Becker
6e630fe79b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78282 : atime and mtime mismatch
2019-07-13 09:45:14 +02:00
Peter Kokot
e0ea444dd3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert all php_error_docref0 to php_error_docref
2019-07-13 02:10:17 +02:00
Peter Kokot
930e38ec5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove tsrm_config_common.h
2019-07-13 01:58:38 +02:00
Christoph M. Becker
5929f6fccb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
No more need to cater to pre-PHP-5.3 or PHP-6 versions
2019-07-12 18:56:09 +02:00
Nikita Popov
a89b959320
Merge branch 'PHP-7.4'
2019-07-12 17:22:58 +02:00
Nikita Popov
2fe2e80b5f
Merge branch 'PHP-7.4'
2019-07-12 16:52:00 +02:00
Nikita Popov
b60c76f1de
Merge branch 'PHP-7.4'
2019-07-12 16:30:54 +02:00
Christoph M. Becker
d68abef804
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS and UPGRADING wrt. ext/recode unbundling
2019-07-12 14:36:10 +02:00
Christoph M. Becker
fbb0bc597f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed ext/recode
2019-07-12 13:58:42 +02:00
Christoph M. Becker
3a0dd2d746
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Swap implode() argument order in the test helper
2019-07-12 13:28:39 +02:00
Nikita Popov
96daf181a6
Merge branch 'PHP-7.4'
2019-07-12 13:18:53 +02:00
Nikita Popov
98495f7f30
Merge branch 'PHP-7.4'
2019-07-12 13:14:38 +02:00
Nikita Popov
0146bab449
Merge branch 'PHP-7.4'
2019-07-12 12:55:21 +02:00
Dmitry Stogov
319e2bc42e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use common code for double math
2019-07-12 11:42:11 +03:00
Christoph M. Becker
a5b095650a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Temporarily skip test"
2019-07-11 23:34:09 +02:00
Dmitry Stogov
ac5bff987b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow GOTO style helpers in HYBRID VM
2019-07-12 00:01:31 +03:00
Dmitry Stogov
3c89a3d716
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate "cold" parts of comparison instructions
2019-07-11 20:45:12 +03:00
Dmitry Stogov
b4ee279bf4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate "cold" parts of binary op instructions
2019-07-11 18:23:48 +03:00
Nikita Popov
6efb354831
Merge branch 'PHP-7.4'
2019-07-11 17:09:23 +02:00
Nikita Popov
61601dfcfd
Merge branch 'PHP-7.4'
2019-07-11 16:20:22 +02:00
Nikita Popov
74bf7bfb88
Merge branch 'PHP-7.4'
2019-07-11 15:49:02 +02:00
Nikita Popov
f464f8edfe
Merge branch 'PHP-7.4'
2019-07-11 14:15:02 +02:00
Christoph M. Becker
1a69de7de0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78212 : Segfault in built-in webserver
2019-07-11 13:11:40 +02:00
Nikita Popov
eabe0145d4
Merge branch 'PHP-7.4'
2019-07-11 13:00:06 +02:00
Dmitry Stogov
11a4e2787f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
neon vectorization for base64
2019-07-11 12:04:51 +03:00
Nikita Popov
e56854a0f7
Merge branch 'PHP-7.4'
2019-07-11 10:30:14 +02:00
Nikita Popov
b290790cc2
Merge branch 'PHP-7.4'
2019-07-11 10:26:59 +02:00
Peter Kokot
1a935e2662
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor undefining PACKAGE_* symbols
2019-07-11 02:02:01 +02:00
Peter Kokot
f99adb4bb5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove TSRM/tsrm_config.w32.h
2019-07-10 21:20:10 +02:00
Nikita Popov
cf7dd00280
Drop support for JIT without SSE
...
Closes GH-4388.
2019-07-10 17:31:51 +02:00
Dmitry Stogov
cf0e15333e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set expectation to reduce hot code fragmentation
2019-07-10 18:29:56 +03:00
Nikita Popov
df84d680bf
Merge branch 'PHP-7.4'
2019-07-10 17:28:52 +02:00
Nikita Popov
d63b91db60
Merge branch 'PHP-7.4'
2019-07-10 15:19:43 +02:00
Nikita Popov
36235cf5d7
Read from original address
...
References are derefed into FCARG1, which is later clobbered by the
undef handling code. Make sure we load from the original address
instead.
2019-07-10 14:13:29 +02:00
Nikita Popov
9b143b074a
Merge branch 'PHP-7.4'
2019-07-10 13:10:12 +02:00
Nikita Popov
1cdc0d9056
Merge branch 'PHP-7.4'
2019-07-10 12:55:52 +02:00
Nikita Popov
26431d1995
Implement array access notice in JIT
2019-07-10 12:20:16 +02:00
Nikita Popov
106f71cc94
Merge branch 'PHP-7.4'
2019-07-10 12:05:24 +02:00
Dmitry Stogov
db02d7ae75
Reduce cost for GC references to strings and resources in JIT
2019-07-10 12:41:19 +03:00
Dmitry Stogov
8dbeb0c6bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce cost for references to strings and resources
2019-07-10 12:29:26 +03:00
Nikita Popov
bbd12b3d30
Merge branch 'PHP-7.4'
2019-07-10 11:11:30 +02:00
Remi Collet
b3438b2670
Merge branch 'PHP-7.4'
...
* PHP-7.4:
improve libargon2/libsodium compatibility
2019-07-10 09:00:54 +02:00
Peter Kokot
cbefc538fa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use e.g. instead of less common f.e. [ci skip]
2019-07-09 17:53:57 +02:00
Sara Golemon
23a90b2847
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Relax argon2 mem_cost down to 64k, bump time_cost to 4
2019-07-09 11:37:08 -04:00
Nikita Popov
5f0c8f5e30
Merge branch 'PHP-7.4'
2019-07-09 16:20:12 +02:00
Dmitry Stogov
10f53f9c80
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid unintended inlining
2019-07-09 14:02:12 +03:00
Nikita Popov
8ba7e33dba
Merge branch 'PHP-7.4'
2019-07-09 11:06:57 +02:00
Christoph M. Becker
0fc7dce743
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade to SQLite 3.28.0
2019-07-09 10:08:42 +02:00
Dmitry Stogov
ee9f03fb4c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicated code for (PRE|POST)_DEC_(OBJ|STATIC_PROP) opcodes
2019-07-09 10:47:15 +03:00
Peter Kokot
4ea6b74813
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Catch up with current procedures
2019-07-08 23:28:33 +02:00
Peter Kokot
39488dcac6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add zend.exception_ignore_args [ci skip]
2019-07-08 19:34:57 +02:00
Peter Kokot
dea475c3e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
Update NEWS [ci skip]
Update NEWS [ci skip]
2019-07-08 18:51:13 +02:00
Dmitry Stogov
349778f38c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed dispatch from inlined hybrid opcode to another opcode
2019-07-08 18:02:22 +03:00
Nikita Popov
1fe478d30c
Merge branch 'PHP-7.4'
2019-07-08 16:54:22 +02:00
Peter Kokot
e278517b66
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Catch up with recent changes [ci skip]
2019-07-08 16:24:35 +02:00
Peter Kokot
e676aef56a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove APACHE symbol
2019-07-08 15:06:54 +02:00
Peter Kokot
61809b19f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor genif.sh
2019-07-08 14:59:40 +02:00
Nikita Popov
f01c7e959f
Merge branch 'PHP-7.4'
2019-07-08 13:36:26 +02:00
Dmitry Stogov
0e5ecc7a8f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Delay EG(exception) check on slow path
2019-07-08 14:13:02 +03:00
Nikita Popov
78068171dd
Merge branch 'PHP-7.4'
2019-07-08 12:53:50 +02:00
Nikita Popov
3ee570ae0d
Remove redundant variable declaration
2019-07-08 12:50:00 +02:00
Peter Kokot
da54b1c20e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove C89 checks for signal.h and strerror
2019-07-08 12:47:35 +02:00
Peter Kokot
fa8a51f140
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update libmagic patch
2019-07-08 12:41:15 +02:00
David Carlier
5e13688142
JIT: Reading php binary symbols list on FreeBSD
...
Closes GH-4363.
2019-07-08 12:39:18 +02:00
Nikita Popov
0904dd3dc2
Remove INPUT_SESSION and INPUT_REQUEST
...
These were never supported and always generated a warning. Remove
them entirely for PHP 8.
2019-07-08 10:50:34 +02:00
Christoph M. Becker
8aa6d5a0ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement FR #77230 : Support custom CFLAGS and LDFLAGS from environment
2019-07-08 10:47:09 +02:00
Christoph M. Becker
8e22d7c785
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix TsHashTable related race conditions
2019-07-08 10:32:39 +02:00
Peter Kokot
4f5c6bc15e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify PHP_CHECK_PDO_INCLUDES calls
2019-07-08 10:26:08 +02:00
Dmitry Stogov
b8dae9981d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed opcode description
2019-07-08 11:21:54 +03:00
Peter Kokot
c752b74665
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some unused variables
2019-07-08 10:20:14 +02:00
Sara Golemon
17bfac6347
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Provide argon2i(d) password hashing from sodium when needed
2019-07-07 21:55:12 -04:00
Stanislav Malyshev
27b6d36f98
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify expression and remove the possibility of div by 0
2019-07-07 16:21:06 -07:00
Peter Kokot
04f9a523eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PHP_DEBUG_MACRO
2019-07-07 12:16:14 +02:00
Peter Kokot
35709b56e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some more Apache 1 left overs
2019-07-07 12:10:59 +02:00
Nikita Popov
e89cbfc1c9
Merge branch 'PHP-7.4'
...
[ci skip]
2019-07-07 11:25:16 +02:00
Nikita Popov
8e948204f9
Disable jit on msan job
...
JIT code is not instrumented and as such incompatible with msan.
I'm not sure why this only started failing in the last build, it
shouldn't have worked before either...
2019-07-06 23:51:26 +02:00
Peter Kokot
0707caf163
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move footer to the end of configure output
2019-07-06 04:55:42 +02:00
Peter Kokot
b36b6c5fdf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PTHREADS_ASSIGN_VARS
2019-07-05 23:30:51 +02:00
Nikita Popov
da8b583ac1
Always generate interrupt check in jit
...
Even if zend_interrupt_function is NULL, we still need to perform
the interrupt check for timeouts (which do not use
zend_interrupt_function).
2019-07-05 20:52:30 +02:00
Christoph M. Becker
705f8abcb7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove superfluous assignment
2019-07-05 15:57:01 +02:00
Dmitry Stogov
bfca9592d0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Eliminate useless checks
2019-07-05 14:25:26 +03:00
Christoph M. Becker
2d926d994f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Temporarily skip test
2019-07-05 12:49:14 +02:00
Nikita Popov
526f2d681b
Merge branch 'PHP-7.4'
2019-07-05 12:07:51 +02:00
Nikita Popov
a92e6d7136
Merge branch 'PHP-7.4'
2019-07-05 12:05:10 +02:00
Nikita Popov
8ae9e1b9a2
Merge branch 'PHP-7.4'
2019-07-05 11:43:26 +02:00
Nikita Popov
57a385db09
Merge branch 'PHP-7.4'
2019-07-05 11:21:43 +02:00
Dmitry Stogov
1f800e2f82
Removed die('skip wurstuoppe');
2019-07-05 12:20:12 +03:00
Dmitry Stogov
1b5b8175af
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace ZEND_ASSIGN_ADD (and others) by ZEND_ASSIGN_OP, ZEND_ASSIGN_DIM_OP, ZEND_ASSGIN_OBJ_OP and ZEND_ASSIGN_STATIC_PROP_OP
2019-07-05 12:16:30 +03:00
Nikita Popov
215e9d069c
Merge branch 'PHP-7.4'
2019-07-05 11:00:54 +02:00
Nikita Popov
f8d8b96e92
Merge branch 'PHP-7.4'
2019-07-05 10:47:01 +02:00
George Wang
dfce767a62
Merge branch 'PHP-7.4'
2019-07-04 12:15:25 -04:00
Nikita Popov
9fbf9e3e13
Merge branch 'PHP-7.4'
2019-07-04 17:13:04 +02:00
Dmitry Stogov
806e38a3a4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve zend_binary_assign_op helpers. Reorder opcode numbers to make ADD-POW and ASSIGN_ADD-ASSIGN_POW opcodes sequencional.
2019-07-04 17:37:52 +03:00
Dmitry Stogov
9161247140
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Introduce and use ZEND_VM_INLINE_HANDLER() to avoid ZEND_RETURN exception
2019-07-04 15:55:33 +03:00
Christoph M. Becker
4ed87f379b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove NEWS entry
2019-07-04 14:51:15 +02:00
Christoph M. Becker
143f32cf25
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in NEWS [skip ci]
2019-07-04 14:45:13 +02:00
Nikita Popov
8c647946ff
Merge branch 'PHP-7.4'
2019-07-04 12:20:40 +02:00
Dmitry Stogov
f5869118a9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Split destructor
2019-07-04 13:08:08 +03:00
Nikita Popov
6473ec30a1
Merge branch 'PHP-7.4'
2019-07-04 11:07:14 +02:00
Nikita Popov
21b0f44429
Merge branch 'PHP-7.4'
2019-07-04 10:32:48 +02:00
Nikita Popov
c581b2f5b0
Fix ZTS flag on master
2019-07-04 09:53:51 +02:00
Dmitry Stogov
c98b6d5bb5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better optimization in RELEASE build. ZEND_ASSERT(s) prevented optimization
2019-07-03 20:24:26 +03:00
Joe Watkins
f1f63c0cec
Merge branch 'PHP-7.4'
...
* PHP-7.4:
improvements to cli server
2019-07-03 16:31:55 +02:00
Nikita Popov
f124bf22e0
Merge branch 'PHP-7.4'
2019-07-03 14:05:31 +02:00
Nikita Popov
057012f241
Merge branch 'PHP-7.4'
2019-07-03 12:48:00 +02:00
Nikita Popov
97b84a3694
Merge branch 'PHP-7.4'
2019-07-03 12:37:17 +02:00
Nikita Popov
f6f0d383b3
Merge branch 'PHP-7.4'
2019-07-03 11:42:04 +02:00
Nikita Popov
8673606631
Merge branch 'PHP-7.4'
2019-07-03 11:27:13 +02:00
Nikita Popov
93f41d2aec
Merge branch 'PHP-7.4'
2019-07-03 11:03:41 +02:00
Nikita Popov
105300afe4
Merge branch 'PHP-7.4'
2019-07-03 11:00:23 +02:00
Nikita Popov
fa1a03f7a2
Merge branch 'PHP-7.4'
2019-07-03 10:22:41 +02:00
Christoph M. Becker
f71268ac67
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78241 : touch() does not handle dates after 2038 in PHP 64-bit
2019-07-03 10:03:59 +02:00
Dmitry Stogov
6188a69b8a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimization of INC/DEC helpers
2019-07-03 10:50:14 +03:00
Joe Watkins
1a50d84e26
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed mysqlnd stats from phpinfo page
2019-07-03 08:23:48 +02:00
Joe Watkins
4fb595d8b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable option checking on CI
2019-07-03 08:16:47 +02:00
Joe Watkins
0baf81514a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove libtool and automake from azure installs
2019-07-03 08:14:19 +02:00
Peter Kokot
d9630aee79
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PHP_CHECK_CONFIGURE_OPTIONS
2019-07-02 22:22:07 +02:00
Peter Kokot
e7c028f00c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some old BeOS artefacts
2019-07-02 22:10:24 +02:00
Peter Kokot
0ae28558bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove check for ApplicationServices/ApplicationServices.h
2019-07-02 22:05:41 +02:00
Nikita Popov
2a9e9cc5b6
Merge branch 'PHP-7.4'
2019-07-02 16:22:42 +02:00
Nikita Popov
5c89b60411
Merge branch 'PHP-7.4'
2019-07-02 16:12:43 +02:00
Christoph M. Becker
3952d3378a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS
2019-07-02 15:09:59 +02:00
Joe Watkins
d41ab64456
Merge branch 'PHP-7.4'
...
* PHP-7.4:
simple ignore arguments in exceptions implementation
2019-07-02 13:19:25 +02:00
Nikita Popov
80fc31c887
Merge branch 'PHP-7.4'
2019-07-02 13:03:45 +02:00
Nikita Popov
9dfa414f60
Merge branch 'PHP-7.4'
...
[ci skip]
2019-07-02 12:32:55 +02:00
Nikita Popov
ad81aae8bf
Merge branch 'PHP-7.4'
2019-07-02 12:28:51 +02:00
Nikita Popov
cef59ad77b
Merge branch 'PHP-7.4'
2019-07-02 12:10:32 +02:00
Nikita Popov
2f7c3971cc
Merge branch 'PHP-7.4'
2019-07-02 11:59:21 +02:00
Nikita Popov
05ac4acc24
Merge branch 'PHP-7.4'
2019-07-02 10:17:25 +02:00
Dmitry Stogov
afe6e00b6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed build without global register variables
2019-07-02 11:03:46 +03:00
Dmitry Stogov
97b685f0c1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate slow code
2019-07-02 01:17:05 +03:00
Dmitry Stogov
ccbdd41e5c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use string destructor instead of general zval_ptr_dtor_nogc()
2019-07-02 01:15:39 +03:00
Dmitry Stogov
686f6b383a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Eliminate exception checks
2019-07-02 01:13:23 +03:00
Christoph M. Becker
fc94e0fc6e
Fix SKIPIF conditions
...
The SKIPIF sections are executed in the directory where run-tests.php
is located; therefore a relative path like `../skipif.inc` won't work
as desired.
2019-07-01 19:47:23 +02:00
Christoph M. Becker
8a0717255c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIFs
2019-07-01 18:14:55 +02:00
Nikita Popov
9ab5c28c8b
Merge branch 'PHP-7.4'
2019-07-01 17:28:01 +02:00
Christoph M. Becker
017e293992
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add missing SKIPIFs
2019-07-01 17:25:31 +02:00
Nikita Popov
4e1a225e3e
Merge branch 'PHP-7.4'
2019-07-01 16:55:39 +02:00
Christoph M. Becker
b8d6d4a2bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix brittle test
2019-07-01 16:45:49 +02:00
Nikita Popov
fe2aca83ce
Merge branch 'PHP-7.4'
2019-07-01 16:14:58 +02:00
Dmitry Stogov
f393502e7f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Micro-optimization
2019-07-01 16:57:55 +03:00
Dmitry Stogov
0b6c294e03
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed GOTO VM
2019-07-01 15:51:36 +03:00
Peter Kokot
b757d49cb5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove TSRM_BASIC_CHECKS
2019-07-01 13:26:17 +02:00
Peter Kokot
fa21fda6ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove not needed checks for functions
2019-07-01 13:21:44 +02:00
Peter Kokot
0d9318a424
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused check for struct cmsghdr
2019-07-01 13:18:08 +02:00
Nikita Popov
22ce77f500
Merge branch 'PHP-7.4'
2019-07-01 12:47:49 +02:00
Nikita Popov
8fc58a1a1d
Merge branch 'PHP-7.4'
2019-07-01 11:14:54 +02:00
Nikita Popov
4a8fe02c7c
Undef opline result on mod/shift error in jit
2019-07-01 10:15:06 +02:00
Nikita Popov
b7ed20662e
Fix out of bounds read in jit_fetch_obj_read
2019-07-01 09:54:21 +02:00
Nikita Popov
e73cc44021
Merge branch 'PHP-7.4'
2019-07-01 09:44:53 +02:00
Peter Kokot
a0cbc9a7b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
2019-07-01 03:10:15 +02:00
Peter Kokot
964558fc5a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
2019-07-01 02:55:12 +02:00
Peter Kokot
b5ab6b39fa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78197 : PCRE2 version check
2019-07-01 02:53:30 +02:00
Peter Kokot
267dbe2d6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs [ci skip]
2019-07-01 01:36:08 +02:00
Peter Kokot
98d0892dd8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync functions checks
2019-06-30 23:59:47 +02:00
Peter Kokot
b576e3f871
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused build specific symbols
2019-06-30 23:55:27 +02:00
Peter Kokot
8569a6740e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix phar tests with hash extension
Fix missing file and remove SKIP section
2019-06-30 23:52:30 +02:00
Peter Kokot
7ad82d47d3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_LIMITS_H check
2019-06-30 23:46:02 +02:00
Peter Kokot
c48c6a021f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_DEV_ARANDOM
2019-06-30 23:40:32 +02:00
Derick Rethans
73734eee6c
Merge branch 'PHP-7.4'
2019-06-30 15:51:04 +01:00
Anatol Belski
0ecfd09c09
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS [ci skip]
Update NEWS [ci skip]
2019-06-29 17:41:52 +02:00
Anatol Belski
e0112eb4e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update libmagic.patch [ci skip]
2019-06-29 17:36:39 +02:00
Anatol Belski
5ea43c38b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set buffer to NULL to prevent double free (Kamil Dudka at redhat)
2019-06-29 17:19:20 +02:00
Anatol Belski
9f9657ff92
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix magic data
2019-06-29 16:53:10 +02:00
Christoph M. Becker
2c49354ac2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak in COM ctor
2019-06-29 14:51:40 +02:00
Anatol Belski
b74d4d2c19
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
Add tests from fix #78183 from PHP-7.2
Fix #78183 : finfo_file shows wrong mime-type for .tga file
2019-06-29 13:31:56 +02:00
Joe Watkins
22fb96ab85
Merge branch 'PHP-7.4'
...
* PHP-7.4:
implement support for workers in cli-server on platforms supporting fork
2019-06-29 05:28:12 +02:00
Joe Watkins
5f25cd6ed7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add ini config details to php-config
2019-06-29 05:26:38 +02:00
Peter Kokot
5a4f7cead4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean up files after the tests are run
2019-06-28 20:19:20 +02:00
Peter Kokot
1f9906ab5b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs [ci skip]
Remove HAVE_ERRNO_H from libgd
2019-06-28 20:14:29 +02:00
Nikita Popov
796dc564e2
Increase timeout of asan job on master
...
This will additionally be testing the JIT and 120 is cutting it
close for that.
2019-06-28 17:47:55 +02:00
Nikita Popov
8f0729cb65
Merge branch 'PHP-7.4'
2019-06-28 17:47:45 +02:00
Nikita Popov
aa2320b274
Merge branch 'PHP-7.4'
2019-06-28 16:39:57 +02:00
Nikita Popov
0588c38a2c
Merge branch 'PHP-7.4'
2019-06-28 16:11:37 +02:00
Nikita Popov
b98c148f78
Merge branch 'PHP-7.4'
2019-06-28 15:05:00 +02:00
Nikita Popov
0a0ca984f0
Merge branch 'PHP-7.4'
2019-06-28 14:48:08 +02:00
Nikita Popov
b4121f4930
Merge branch 'PHP-7.4'
2019-06-28 12:45:26 +02:00
Christoph M. Becker
44b97fd1ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78192 PDO SQLite SegFault when reuse statement after schema has changed
2019-06-28 12:38:17 +02:00
Nikita Popov
e82214b9c1
Merge branch 'PHP-7.4'
2019-06-28 11:10:25 +02:00
Dmitry Stogov
f7f7fec7ef
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce overhead
2019-06-28 12:03:27 +03:00
Joe Watkins
b98cd0719a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
implement tsrm_is_shutdown API
2019-06-28 10:27:39 +02:00
Christoph M. Becker
0504f04591
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use the portable zend_strndup() instead of strndup()
2019-06-28 10:24:15 +02:00
Dmitry Stogov
696b9e25c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed use-after-free
2019-06-28 10:44:13 +03:00
Nikita Popov
aa8d70f309
Merge branch 'PHP-7.4'
2019-06-28 09:19:49 +02:00
Sara Golemon
488709aadb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bugfix #78208 Needs rehash with an unknown algo should always return true.
2019-06-27 19:28:04 -04:00
Peter Kokot
0b81ebdf2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Catch up with some recent changes [ci skip]
2019-06-28 00:32:08 +02:00
Peter Kokot
05bc5169da
Fix typo
2019-06-28 00:26:24 +02:00
Peter Kokot
7f994990ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_STRCOLL check
2019-06-28 00:13:25 +02:00
Peter Kokot
221494f4de
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync HAVE_HASH, HAVE_HASH_EXT, PHAR_HASH_OK symbols
2019-06-27 23:29:11 +02:00
Nikita Popov
e31936205b
Merge branch 'PHP-7.4'
2019-06-27 16:16:57 +02:00
Nikita Popov
5918171f95
Merge branch 'PHP-7.4'
2019-06-27 14:21:49 +02:00
Christoph M. Becker
bfaea35253
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Show actual enchant version if possible
2019-06-27 13:05:43 +02:00
Dmitry Stogov
c45931f69b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate common code abd eliminate useless checks
2019-06-27 13:11:37 +03:00
Dmitry Stogov
31670211e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Inline hot path
2019-06-27 11:28:14 +03:00
Nikita Popov
f4ad175bb0
Merge branch 'PHP-7.4'
2019-06-27 09:48:47 +02:00
Andrey Gromov
84c4a4f17d
Make zend_hash_rehash() a void function
...
It always succeeds.
Closes GH-4304.
2019-06-27 09:48:19 +02:00
Peter Kokot
6bfa6bff0b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean headers checks
2019-06-27 02:45:31 +02:00
Dmitry Stogov
e2effc96b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid double checks on early binding
2019-06-27 02:25:57 +03:00
Peter Kokot
8f1f4c7df6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove warnings for bison and re2c checks
2019-06-27 01:00:33 +02:00
Peter Kokot
ce12ecd40f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix concurrent testing of bug 61964
2019-06-27 00:27:43 +02:00
Peter Kokot
ff0cab8042
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix posix_errno test without PCNTL dep
2019-06-27 00:25:14 +02:00
Peter Kokot
ea0e9b4d86
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused HAVE_DATE and HAVE_SPL symbols
2019-06-26 23:51:46 +02:00
Peter Kokot
8d8333b498
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_STRTOD and strtod check
2019-06-26 23:13:01 +02:00
Peter Kokot
7239925213
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set Computer English language for credits sorting
2019-06-26 22:38:35 +02:00
Christoph M. Becker
febe719b5d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove stream_socket_sendto.phpt
2019-06-26 17:04:33 +02:00
Dmitry Stogov
8dac19278e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Private methods don't have to be duplicated
2019-06-26 13:27:41 +03:00
Nikita Popov
ac749b126f
Merge branch 'PHP-7.4'
2019-06-26 11:43:30 +02:00
Peter Kokot
bbd19a127b
[ci skip] Mention HAVE_HASH_EXT
2019-06-26 03:15:28 +02:00
Dmitry Stogov
db97bbc0c5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reorder conditions to minimize number of checks on fast path
2019-06-26 01:08:43 +03:00
Dmitry Stogov
0c932e0aff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove always true/false conditions, remove dead conde and simplify code.
2019-06-26 00:44:10 +03:00
Dmitry Stogov
5ce26b4895
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace previosly checked conditions by ZEND_ASSERT()
2019-06-25 18:27:30 +03:00
Dmitry Stogov
7dc4dd4d7c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed variance check for abstract constructor during erlay binding
2019-06-25 17:44:49 +03:00
Dmitry Stogov
c6ce159384
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cleanup
2019-06-25 16:53:46 +03:00
Nikita Popov
a1479fbbd9
Merge branch 'PHP-7.4'
2019-06-25 14:30:24 +02:00
Dmitry Stogov
0655598280
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set ZEND_ACC_LINKED flag after early binding (for consistency)
2019-06-25 15:06:19 +03:00
Dmitry Stogov
e4f4be1a05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce overhead of delayed early binding
2019-06-25 14:21:23 +03:00
Christoph M. Becker
d1141ff24b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
2019-06-25 13:07:00 +02:00
Dmitry Stogov
83c2e6787d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent useless hash lookups
Update NEWS for 7.4.0alpha3
Update NEWS for PHP 7.4.0alpha2
2019-06-25 12:42:36 +03:00
Dmitry Stogov
ca22c456ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Keep lowercased parent class name as second argument of DECLARE_CLASS to avoid extra work at run-time
2019-06-25 11:32:03 +03:00
Nikita Popov
d2a1fe8462
Merge branch 'PHP-7.4'
2019-06-25 10:26:20 +02:00
Dmitry Stogov
e18c60cd8d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug 78175 (Preloading must store default values of static variables and properties)
2019-06-24 20:34:05 +03:00
Christoph M. Becker
5120e4a133
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Split test case
2019-06-24 14:08:30 +02:00
Nikita Popov
98d05389a7
Merge branch 'PHP-7.4'
2019-06-22 10:20:12 +02:00
Derick Rethans
5bc7e4e6f4
Merge branch 'PHP-7.4'
2019-06-21 16:52:29 +01:00
Nikita Popov
d82b270fa4
Remove unused zend_verify_arg_type() function
2019-06-21 17:15:02 +02:00
Nikita Popov
e4371ef158
Merge branch 'PHP-7.4'
2019-06-21 17:01:47 +02:00
Christoph M. Becker
611c57eaf7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly shut down font cache mutex
2019-06-21 16:01:28 +02:00
Andrey Hristov
7b552f816b
Merge branch 'PHP-7.3'
2019-06-21 16:34:52 +03:00
Nikita Popov
d8b2b070ec
Merge branch 'PHP-7.4'
2019-06-21 15:08:20 +02:00
Nikita Popov
1834994d0d
Merge branch 'PHP-7.4'
2019-06-21 12:56:48 +02:00
Dmitry Stogov
53bcc2339c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cleanup
2019-06-21 11:46:33 +03:00
Nikita Popov
38909b7526
Merge branch 'PHP-7.4'
2019-06-21 10:25:17 +02:00
Nikita Popov
7a1ca07a60
Don't try to exclude zreg_none
...
zreg_none has no representation in the regset, so this operation
doesn't make sense.
2019-06-21 10:24:58 +02:00
Nikita Popov
291eb19419
Dasm: Perform unaligned stores through unaligned pointers
2019-06-21 09:47:25 +02:00
Dmitry Stogov
1707f6645a
Additional fix for bug #78185 (File cache no longer works)
2019-06-21 10:06:35 +03:00
Christoph M. Becker
7469d572f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support TGA reading
2019-06-20 23:41:23 +02:00
Christoph M. Becker
360b58e43b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78189 : file cache strips last character of uname hash
2019-06-20 18:02:01 +02:00
Nikita Popov
0d31a8e4e1
Merge branch 'PHP-7.4'
2019-06-20 17:24:43 +02:00
Nikita Popov
42f3ed480d
Avoid shift ub for regsets
2019-06-20 17:24:32 +02:00
Christoph M. Becker
400bf9b9b6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-06-20 17:00:49 +02:00
Christoph M. Becker
9147d06f7d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename test file to reflect the appropriate ticket number
2019-06-20 16:55:22 +02:00
Nikita Popov
6aaab9adf7
Merge branch 'PHP-7.4'
2019-06-20 16:24:31 +02:00
Remi Collet
50978128f5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix test for Windows and for parallel run
2019-06-20 11:59:21 +02:00
Remi Collet
714cd7ff3e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
improve test clean section
move NEWS entry
2019-06-20 11:52:54 +02:00
Nikita Popov
a2d0899e74
Merge branch 'PHP-7.4'
2019-06-20 10:35:38 +02:00
Remi Collet
477f4fec6d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add test for #78185
2019-06-20 10:28:46 +02:00
Nikita Popov
681136212f
Merge branch 'PHP-7.4'
2019-06-20 10:16:31 +02:00
Dmitry Stogov
e177791df1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78185 (File cache no longer works)
2019-06-20 09:08:09 +03:00
Nikita Popov
452076de44
Merge branch 'PHP-7.4'
2019-06-19 17:27:29 +02:00
Andrey Hristov
c7e5699c42
Merge branch 'PHP-7.4'
2019-06-19 18:20:42 +03:00
Nikita Popov
6ae9c10534
Merge branch 'PHP-7.4'
2019-06-19 16:36:29 +02:00
Nikita Popov
bba88eb6a1
Merge branch 'PHP-7.4'
2019-06-19 15:36:31 +02:00
Nikita Popov
3645292235
Merge branch 'PHP-7.4'
2019-06-19 15:09:39 +02:00
Joe Watkins
37cd86080f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix setcookie Max-Age to use php_time
2019-06-19 12:43:26 +02:00
Joe Watkins
41a14a6c10
Merge branch 'PHP-7.4'
...
* PHP-7.4:
export php_time
2019-06-19 12:41:19 +02:00
Nikita Popov
bb940d9969
Avoid UB in overflow checks
...
Some of the overflow checks in zend_may_overflow were optimized
away by clang, causing JIT failures on release macos.
2019-06-19 12:02:42 +02:00
Joe Watkins
089e45c91a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
refactor a little more to add some more useful error messages and raise the limits on waiting for slow machines
2019-06-19 11:42:02 +02:00
Joe Watkins
0cf3034af1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Separate check for process creation and ability to accept connections
2019-06-19 11:09:48 +02:00
Christoph M. Becker
c34f7db5bc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Document removal of uint and ulong typedefs
2019-06-19 09:46:24 +02:00
Joe Watkins
8cc26690b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Resolve discrepencies between second value yielded by gettimeofday and time, fixes #69044
2019-06-19 09:01:59 +02:00
Christoph M. Becker
cb57ef5f91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78173 : XML-RPC mutates immutable objects during encoding
2019-06-18 17:10:18 +02:00
Dmitry Stogov
c8d27777d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78175 (Preloading segfaults at preload time and at runtime)
2019-06-18 17:19:19 +03:00
Côme Chilliet
a88bfff59a
Remove ZPP tests from ext/ldap
2019-06-18 16:11:24 +02:00
Dmitry Stogov
22b2d9d088
Fixed JIT failure, on ZTS build without global register vatriables
2019-06-18 13:52:52 +03:00
Joe Watkins
41067a22e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Turn system_id into a true global
2019-06-18 10:27:50 +02:00
Christoph M. Becker
837f384b72
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-06-18 09:35:01 +02:00
Joe Watkins
9bcbd80775
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky socket test
2019-06-18 08:31:32 +02:00
Remi Collet
34508e4a2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
move NEWS entry
2019-06-18 07:51:33 +02:00
Christoph M. Becker
47bb32e056
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement SQLite3 backup API
2019-06-17 23:36:43 +02:00
Nikita Popov
820cc55326
Merge branch 'PHP-7.4'
2019-06-17 17:26:07 +02:00
Christoph M. Becker
7b6aecfe5b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve create_verify_dir() diagnostics
2019-06-17 16:51:13 +02:00
Dmitry Stogov
7a236b6761
Attempt to fix JIT on Mac OSX ZTS build
2019-06-17 17:08:58 +03:00
Nikita Popov
fe02725ac9
Merge branch 'PHP-7.4'
2019-06-17 15:09:22 +02:00
Nikita Popov
227a9c75ec
Add types to a couple of builtin functions
2019-06-17 14:47:20 +02:00
Dmitry Stogov
5dbcbab4cc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove XFAIL mark
2019-06-17 14:56:42 +03:00
Dmitry Stogov
cf50cab7bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid uninitilized field access
2019-06-17 14:54:28 +03:00
Dmitry Stogov
3e0b09a83c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed memory leaks in ext/ffi/tests/100.phpt on Mac OSX
2019-06-17 14:40:48 +03:00
Nikita Popov
80e4a6aaef
Merge branch 'PHP-7.4'
2019-06-17 13:31:11 +02:00
Nikita Popov
ca8f348646
Merge branch 'PHP-7.4'
2019-06-17 13:14:26 +02:00
Nikita Popov
248055d12c
Merge branch 'PHP-7.4'
2019-06-17 13:06:54 +02:00
Nikita Popov
dc18af96f9
Merge branch 'PHP-7.4'
2019-06-17 12:44:42 +02:00
Tyson Andre
38c0f6056b
zend_func_info: Remove null from methods with non-null return type
...
Detected by parsing the strings in zend_func_info.c, looping over them
and checking for inconsistencies with Reflection.
(new ReflectionFunction('str_shuffle')->getReturnType()) would be
a non-null 'string', for example.
- e.g. that change was made in 7393777da9
for php 8.0
Closes GH-4269.
2019-06-17 12:36:30 +02:00
Nikita Popov
6a2a449cd5
Merge branch 'PHP-7.4'
2019-06-17 11:52:49 +02:00
Nikita Popov
2d5b3b8043
Report test failures on macos
...
This was enabled on 7.4 but for some reason disabled on master.
2019-06-17 11:48:46 +02:00
Nikita Popov
c413b1fca6
Remove bogus quieting in AppendIterator::append()
2019-06-17 11:46:23 +02:00
Nikita Popov
4c401914f8
ctor_params of mysqli_fetch_object should use "a"
2019-06-17 11:46:23 +02:00
Nikita Popov
4d90848d68
Don't verify arginfo types for internal functions
...
To avoid duplicate type checks. In debug builds arginfo is still
checked and will generate an assertions if the function doesn't
subsequently throw an exception.
Some test results change due to differences in zpp and arginfo
error messages.
2019-06-17 11:46:28 +02:00
Nikita Popov
be6c083f28
Allow null for weak scalar arg of internal func in arginfo
...
For parity with zpp.
2019-06-17 11:46:23 +02:00
Joe Watkins
7f0a52e07d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bugs in fpm logging #4273 #4007
2019-06-17 07:49:28 +02:00
Joe Watkins
3d759e11a0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use uint64_t for time_sleep_until calculations
2019-06-16 19:20:37 +02:00
Christoph M. Becker
d806d9a643
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent parallel test conflict
2019-06-16 11:56:21 +02:00
Tyson Andre
74589cf676
Make opcache zend_func_info consistent with Reflection for ctype
...
This follows up with php 8.0 adding a real return type
(non-null bool) in 1409a3b153
2019-06-16 11:28:18 +02:00
Tyson Andre
435384127c
Fix a typo in UPGRADING
2019-06-16 11:24:44 +02:00
Joe Watkins
96cfcd407e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
this mtime comparison makes assumptions that cannot always hold true
2019-06-16 08:29:41 +02:00
Joe Watkins
d7cf5d1eee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
gettimeofday cannot be used to reliably implement high precision process synchronization
2019-06-16 07:18:17 +02:00
Anatol Belski
0da6f73322
Set correct default version
2019-06-15 17:42:04 +02:00
Anatol Belski
15dce78fe9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set correct default version
2019-06-15 17:39:44 +02:00
Joe Watkins
e8c6910e5e
PHP-8.0 should run JIT tests, always [ci skip]
2019-06-15 10:08:48 +02:00
Joe Watkins
a594e48af2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PHP-7.4 branch should not run JIT tests, ever [ci skip]
2019-06-15 10:07:15 +02:00
Joe Watkins
549df61248
Merge branch 'PHP-7.4'
...
* PHP-7.4:
This test is flaky, and some of it doesn't make sense.
2019-06-15 10:01:22 +02:00
Joe Watkins
99dfc5e640
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code in sockets extension [ci skip]
2019-06-15 08:39:50 +02:00
Joe Watkins
7231ee9f55
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky socket tests
2019-06-15 08:09:17 +02:00
Nikita Popov
f1d5a83607
Merge branch 'PHP-7.4'
2019-06-14 17:09:21 +02:00
Nikita Popov
98f81ace40
Merge branch 'PHP-7.4'
2019-06-14 16:56:42 +02:00
Nikita Popov
6ca054551d
Merge branch 'PHP-7.4'
2019-06-14 16:16:26 +02:00
Nikita Popov
bd73332f50
Merge branch 'PHP-7.4'
2019-06-14 15:38:27 +02:00
Joe Watkins
d7f3ef3396
Merge branch 'PHP-7.4'
...
* PHP-7.4:
disable this test temporarily
2019-06-14 14:22:41 +02:00
Nikita Popov
88a71ed5f3
Merge branch 'PHP-7.4'
2019-06-14 13:12:08 +02:00
Joe Watkins
cb0921b34f
enable JIT only in master for macosx
2019-06-14 12:59:05 +02:00
Joe Watkins
956db0cdc2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix mac tests on azure
2019-06-14 12:58:13 +02:00
Nikita Popov
3e8b456ada
Merge branch 'PHP-7.4'
2019-06-14 12:46:56 +02:00
Dmitry Stogov
26009b4c36
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Backport 96a12578c1
2019-06-14 13:29:50 +03:00
Dmitry Stogov
9a20e3f500
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Backport 91a6cdbff5
2019-06-14 13:26:26 +03:00
Dmitry Stogov
29902e0e46
Merge branch 'PHP-7.4'
...
* PHP-7.4:
More edge case fixes that may cause bug #78106
2019-06-14 13:10:39 +03:00
Dmitry Stogov
ca486893ba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Attempt to fix edge conditions that may cause bug #78106
2019-06-14 12:48:00 +03:00
Nikita Popov
7e066a4b3b
Merge branch 'PHP-7.4'
2019-06-14 11:37:41 +02:00
Nikita Popov
ca2a6f75bf
Merge branch 'PHP-7.4'
2019-06-14 11:14:08 +02:00
Nikita Popov
23dc29c8e8
Merge branch 'PHP-7.4'
2019-06-14 09:30:22 +02:00
Joe Watkins
0a5896291b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
disable phpdbg on i386 builds [ci skip]
2019-06-14 08:30:46 +02:00
Dmitry Stogov
5883dbcb18
Fixed incorect register allocation in ZTS build
2019-06-14 00:29:22 +03:00
Christoph M. Becker
b994fd81cb
Throw TypeError instead of warning in case of invalid path
...
For consistency with imagegd(), imagegd2() and imagexbm(), which throw
a TypeError if a path containing NUL bytes is given, we throw a
TypeError for the other image writer functions as well.
2019-06-13 22:37:50 +02:00
Côme Chilliet
890e846d85
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Some more string conversion handling, fixing bug #77958
Avoid converting zval when not needed
2019-06-13 22:15:41 +02:00
Nikita Popov
03b299574b
Merge branch 'PHP-7.4'
2019-06-13 16:53:25 +02:00
Christoph M. Becker
2018615c2a
Remove superfluous CLEAN sections
...
These actually should have been removed with commit be73ae3[1].
[1] <https://github.com/php/php-src/commit/be73ae31324f7f3294a9467c0646dba4324c78ef >
2019-06-13 14:33:41 +02:00
Nikita Popov
f36282c521
Merge branch 'PHP-7.4'
2019-06-13 14:22:48 +02:00
Christoph M. Becker
692673f6a4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add BMP support to PHP info
2019-06-13 13:07:30 +02:00
Nikita Popov
026023bd71
Merge branch 'PHP-7.4'
2019-06-13 12:54:17 +02:00
Nikita Popov
b2b9c4785f
Merge branch 'PHP-7.4'
2019-06-13 12:41:14 +02:00
Nikita Popov
3b27689d46
Fix helper call on 32-bit
...
This is using the fast-call calling convention. Use FCARG1a and
same code for 32-bit and 64-bit.
2019-06-13 12:11:23 +02:00
Nikita Popov
792e38d863
Fix bug #78154 with JIT
2019-06-13 11:53:31 +02:00
Nikita Popov
719a19d825
Merge branch 'PHP-7.4'
2019-06-13 10:59:18 +02:00
Nikita Popov
77e7acfa59
Reenable -Werror for macos build
2019-06-13 10:34:49 +02:00
Nikita Popov
51d82da6b0
Suppress -Wtautological-compare in dasc file
2019-06-13 09:59:42 +02:00
Nikita Popov
39034dbc67
Determine thread ID on macos
...
Also initialize the variable to 0 -- I don't think we really care
if this is not determine on some platform, but it should at least
not be uninitialized.
2019-06-13 09:59:42 +02:00
Nikita Popov
af10245034
Merge branch 'PHP-7.4'
2019-06-13 09:38:19 +02:00
Joe Watkins
d7bb0d5840
Merge branch 'PHP-7.4'
...
* PHP-7.4:
test for bug #78151
2019-06-12 22:39:43 +02:00
Joe Watkins
90ad179044
temporarily disable werror on mac in master because of build failures in JIT
2019-06-12 21:54:22 +02:00
Joe Watkins
f93cd21b52
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "micro-optimization"
This micro optimization caused several bugs in at least Xdebug, while
i_init_func_execute_data is not exported, APIs that are exported call it
this makes their use awkward for no real gain.
2019-06-12 20:21:59 +02:00
twosee
61f78de486
Constify some char* arguments or return values of ZEND_API
...
Closes GH-4247.
2019-06-12 16:49:32 +02:00
Nikita Popov
ff8002fc7c
Mark label as potentially unused
2019-06-12 16:47:48 +02:00
twosee
63171d88f2
Add do...while(0) for RETURN_* and ZVAL_* APIs
...
Closes GH-4255.
2019-06-12 16:17:16 +02:00
Nikita Popov
cf527e93b1
Merge branch 'PHP-7.4'
2019-06-12 16:16:39 +02:00
Nikita Popov
eabb8a6324
Skip syntax errors in skipif conditions
2019-06-12 15:56:38 +02:00
Nikita Popov
b277548ed5
Fix two 32-bit tests for zpp changes
2019-06-12 15:47:42 +02:00
Nikita Popov
859e3f36f9
Merge branch 'PHP-7.4'
2019-06-12 15:40:23 +02:00
Nikita Popov
5ae158a004
Merge branch 'PHP-7.4'
2019-06-12 15:28:41 +02:00
Joe Watkins
d2a1e84610
Merge branch 'PHP-7.4'
...
* PHP-7.4:
we are not running database tests on macos, there is no need to install mysql or start pg
2019-06-12 15:10:28 +02:00
Nikita Popov
171938bc6a
Merge branch 'PHP-7.4'
2019-06-12 15:04:16 +02:00
Nikita Popov
89df091529
Merge branch 'PHP-7.4'
2019-06-12 13:50:48 +02:00
Derick Rethans
650e499839
Merge branch 'PHP-7.4'
2019-06-12 12:42:06 +01:00
Nikita Popov
eea206a06c
Merge branch 'PHP-7.4'
2019-06-12 13:18:04 +02:00
Christoph M. Becker
fc7b3cc7ca
Fix nullbyte tests
...
As of PHP 8.0.0, failing ZPP throws instead of issuing warnings, to
which we have to cater to.
2019-06-12 12:48:03 +02:00
Christoph M. Becker
be73ae3132
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify GD null byte injection tests
2019-06-12 12:06:24 +02:00
Nikita Popov
477d1e02ae
Merge branch 'PHP-7.4'
2019-06-12 11:54:21 +02:00
Derick Rethans
966e629f91
Merge branch 'PHP-7.4'
2019-06-12 08:58:19 +01:00
Joe Watkins
3926fa44a6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky zip tests, order is OS dependent
2019-06-12 09:48:09 +02:00
Remi Collet
19d8e054b1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add comment about pg_config/pkgconfig
2019-06-12 09:39:24 +02:00
Nikita Popov
9fa009c86d
Merge branch 'PHP-7.4'
2019-06-12 09:29:06 +02:00
Joe Watkins
6df77cafb9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky sockets test - form of response is OS dependent
2019-06-12 08:48:18 +02:00
Joe Watkins
2a11d88bc5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky test on OSX
2019-06-12 08:33:19 +02:00
Joe Watkins
1e33a8ced4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "ext/pgsql: Use PKG_CHECK_MODULES to detect the pq library"
2019-06-12 08:01:03 +02:00
Joe Watkins
74a82ca91c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky gd tests
2019-06-12 07:58:56 +02:00
Joe Watkins
12f1ab02eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
disable phpdbg on macosx, it's not well tested there and is skewing results [ci skip]
2019-06-12 06:59:10 +02:00
Joe Watkins
b8269210d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ext/standard: Use PKG_CHECK_MODULES to detect the Argon2 library
2019-06-12 06:55:14 +02:00
Nikita Popov
466666c616
Merge branch 'PHP-7.4'
2019-06-11 17:12:33 +02:00
Nikita Popov
d570620917
Merge branch 'PHP-7.4'
2019-06-11 16:21:57 +02:00
Nikita Popov
0715aeeef2
Merge branch 'PHP-7.4'
2019-06-11 15:49:36 +02:00
Nikita Popov
180b29a493
Merge branch 'PHP-7.4'
2019-06-11 15:41:13 +02:00
Joe Watkins
5fd027e35c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
This reverts 0e5d4ea555 to fix the build on MacOSX
2019-06-11 15:15:31 +02:00
Christoph M. Becker
2973cb2b1d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Next is 7.3.8
2019-06-11 13:32:42 +02:00
Nikita Popov
e4fae9c061
Merge branch 'PHP-7.4'
2019-06-11 13:16:38 +02:00
Joe Watkins
8f93beb06e
use XFAILIF rather than XFAIL to avoid warnings [ci skip]
2019-06-11 12:55:38 +02:00
Nikita Popov
036b0a1d4d
Merge branch 'PHP-7.4'
2019-06-11 12:30:11 +02:00
Remi Collet
3cca69cf39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next is 7.2.21
2019-06-11 12:19:55 +02:00
Joe Watkins
f7342e298b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
drop docker until tested locally
2019-06-11 11:09:24 +02:00
Joe Watkins
f6175955a2
Merge branch 'master' of git://github.com/php/php-src
2019-06-11 10:43:26 +02:00
Joe Watkins
3364f5f826
Merge branch 'PHP-7.4'
...
* PHP-7.4:
checkout depth of one doesn't always work with batched builds, it seems
2019-06-11 10:42:54 +02:00
Nikita Popov
7d98dd9c1c
Merge branch 'PHP-7.4'
2019-06-11 10:29:20 +02:00
Joe Watkins
db86375c3e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
i386 build
2019-06-11 10:25:39 +02:00
Nikita Popov
14692df82b
Remove ldap zpp tests
...
Missed these in the zpp test purge -- they've been failing on master
for a while, but nobody compiles with ldap.
2019-06-11 10:09:40 +02:00
Tyson Andre
cdc82f19d8
Fix php 8.0's opcache flags for pathinfo()
...
See https://php.net/pathinfo
This fixes a bug introduced in the cleanup for commit
0d79c70cf3
`pathinfo($str, PATHINFO_EXTENSION)` will always return a string
(if there is no extension, the function returns the empty string)
2019-06-11 09:09:50 +02:00
Joe Watkins
678e3eb0b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in opcache function flag info (mage->image)
2019-06-11 09:08:31 +02:00
Tyson Andre
cbaf37ff75
Delete opcache flags for php 8.0's removed mbereg*() aliases
...
See UPGRADING for Mbstring.
All of these are aliases of corresponding `mb_*`
functions that existed in php 7 but were removed in php 8.
Other functions such as gzgetss were already removed.
2019-06-11 09:07:42 +02:00
Joe Watkins
6c195fb846
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean up opcache func flags for set_socket_blocking
2019-06-11 09:06:48 +02:00
Joe Watkins
0542eb5bd5
Rest of c3e78efecf
2019-06-11 09:05:07 +02:00
Joe Watkins
c3e78efecf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix a typo in opcache func info for "get_parrent_class"
2019-06-11 09:00:37 +02:00
Joe Watkins
d8f712c302
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ext/pgsql: Use PKG_CHECK_MODULES to detect the pq library
2019-06-11 08:54:00 +02:00
Christoph M. Becker
b30d54ce05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77937 : preg_match failed
2019-06-11 08:45:32 +02:00
Dmitry Stogov
2b5a3afead
Merge branch 'PHP-7.4'
...
* PHP-7.4:
micro-optimization
2019-06-10 16:43:36 +03:00
Joe Watkins
7361701351
Merge branch 'PHP-7.4'
...
* PHP-7.4:
watchpoints have flaws in implementation
2019-06-10 14:23:55 +02:00
Joe Watkins
1b9ffcb21b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
BIND_LEXICAL has a meaningless line number
2019-06-10 14:19:58 +02:00
Dmitry Stogov
09a24d0b7c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed possible misalignment in 32-bit build.
2019-06-10 12:53:34 +03:00
Joe Watkins
f5e79e0b40
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky ipv4 loopback test
2019-06-10 10:35:57 +02:00
Peter Kokot
76323fefac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extend wildcard files section in EditorConfig [ci skip]
Simplify LiteSpeed SAPI module version
Use PHP_VERSION for zend modules
2019-06-09 22:55:43 +02:00
Joe Watkins
c007b5bfba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
azure macos
2019-06-09 22:23:45 +02:00
Joe Watkins
12bba40c1b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
azure image update [not skipping on purpose to test new configuration]
2019-06-09 13:40:34 +02:00
Joe Watkins
a583241704
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78132 wrong line number on ZEND_BIND_STATIC for lexical vars
2019-06-08 21:48:00 +02:00
Dmitry Stogov
18e4b4bd44
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Restored NEWS entry
2019-06-07 12:39:40 +03:00
Nikita Popov
9faf10bbe9
Merge branch 'PHP-7.4'
2019-06-07 10:58:06 +02:00
Dmitry Stogov
d7aa152d3f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77135 (Extract with EXTR_SKIP should skip $this)
2019-06-07 11:50:30 +03:00
Nikita Popov
016687184e
Merge branch 'PHP-7.4'
2019-06-07 09:54:05 +02:00
Nikita Popov
98de4207d8
Merge branch 'PHP-7.4'
2019-06-07 09:49:22 +02:00
Nikita Popov
590ecaa2ff
Merge branch 'PHP-7.4'
2019-06-07 09:35:41 +02:00
Peter Kokot
b7afd7b375
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Catch up with 642b8d00e0
2019-06-07 01:25:20 +02:00
Christoph M. Becker
3b77f269e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use zero port in socket_(export|import)_stream-4-win.phpt
2019-06-06 16:19:37 +02:00
Christoph M. Becker
bba3ffc086
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #78094 : File Search Problem Excessive Time
2019-06-06 15:56:13 +02:00
Christoph M. Becker
1fcfb636f3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test regarding Unix Domain Sockets on Windows
2019-06-06 15:09:57 +02:00
Nikita Popov
00d549d73d
Merge branch 'PHP-7.4'
2019-06-06 14:56:58 +02:00
Dmitry Stogov
63deb0d569
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use ZEND_ASSUME() to perform the following check only on "slow" path.
2019-06-06 14:23:02 +03:00
Dmitry Stogov
dbd1ecd09f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support for exceptions thrown during "Array to string conversion" error processing
Reduce over-specialization for quite seldom instructions
2019-06-06 14:10:23 +03:00
Nikita Popov
3820296c42
Merge branch 'PHP-7.4'
2019-06-06 11:48:54 +02:00
Nikita Popov
8b2741c1c3
Fix accidentially dropped type
...
I only meant to drop the MAY_BE_FALSE here, not the MAY_BE_ARRAY...
2019-06-06 10:07:59 +02:00
Christoph M. Becker
ac8c4a4853
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78114 : segfault when calling sodium_* functions from eval
2019-06-06 10:01:44 +02:00
Nikita Popov
252216b2de
Remove possible false return value from get_object_vars()
...
I'm not sure this one ever happens in practice (and we might want
to forbid NULL return from get_properties), but if it does, return
an empty array instead of false.
2019-06-06 09:49:25 +02:00
Dmitry Stogov
a8ac6e6604
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Update release-process.md
2019-06-06 02:24:00 +03:00
Dmitry Stogov
e029cc4dd4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cheaper checks for exceptions thrown from __toString()
2019-06-06 02:23:17 +03:00
Sara Golemon
642b8d00e0
Update release-process.md
2019-06-05 19:05:38 -04:00
Dmitry Stogov
b4d21310cb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed reference-counting
2019-06-06 01:40:59 +03:00
Joe Watkins
d6f93ca753
fix test
2019-06-05 20:23:31 +02:00
Joe Watkins
69f6458849
Revert "this test is flaky on azure, and can't see why from current output"
...
This reverts commit 6f9a06cb74 .
2019-06-05 20:22:44 +02:00
Joe Watkins
120d383020
Merge branch 'PHP-7.4'
...
* PHP-7.4:
junit testcase classname is used as filename on azure
2019-06-05 19:28:41 +02:00
Joe Watkins
9e49a545aa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
this test is flaky on azure, and can't see why from current output so refactored, and restored an accidentally removed check (resource)
2019-06-05 19:26:33 +02:00
Dmitry Stogov
5f3ee3afe7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent generation of specialized ZEND_ASSIGN_OP_..._STATIC_PROP handlers, that call unspecialized helper, anyway.
2019-06-05 17:38:36 +03:00
Joe Watkins
f47bd9f17a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix flaky posix test
2019-06-05 16:36:41 +02:00
Nikita Popov
cc286e5bd5
Merge branch 'PHP-7.4'
2019-06-05 15:34:56 +02:00
Nikita Popov
d3ed9d8192
Make sure array_splice() always returns an array
...
Return an array even if the return value isn't used. This allows us
to add the arginfo return type.
2019-06-05 14:56:32 +02:00
Nikita Popov
7686b0b889
Merge branch 'PHP-7.4'
2019-06-05 14:53:50 +02:00
Nikita Popov
03a9c2df7b
Merge branch 'PHP-7.4'
2019-06-05 11:58:20 +02:00
Remi Collet
cd687a4953
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ignore first gets time which is usually a few ms only
2019-06-05 11:50:20 +02:00
Nikita Popov
21947e37a2
Merge branch 'PHP-7.4'
2019-06-05 11:30:20 +02:00
Remi Collet
6a0a091333
Merge branch 'PHP-7.4'
...
* PHP-7.4:
keep DIR option to --with-unixODBC for old versions without libodbc.pc
2019-06-05 10:56:25 +02:00
Nikita Popov
401e5ebf24
Merge branch 'PHP-7.4'
2019-06-05 10:06:04 +02:00
Gabriel Caruso
192170a39a
Add return type to some array_* functions
2019-06-05 00:13:52 -03:00
Joe Watkins
2cfb525096
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add azure pipelines badge to readme [ci skip]
2019-06-04 17:12:10 +02:00
Nikita Popov
6f31f03fd7
Merge branch 'PHP-7.4'
2019-06-04 16:28:14 +02:00
Nikita Popov
623eedbbd5
Merge branch 'PHP-7.4'
2019-06-04 16:14:46 +02:00
Nikita Popov
f721f2fa12
Merge branch 'PHP-7.4'
2019-06-04 15:09:01 +02:00
Christoph M. Becker
1655b28d91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PHP 7.4 is built with Visual Studio 2019 on Windows
2019-06-04 14:41:56 +02:00
Nikita Popov
b1bdae7621
Merge branch 'PHP-7.4'
2019-06-04 12:25:16 +02:00
Nikita Popov
0b0333be83
Merge branch 'PHP-7.4'
2019-06-04 10:18:57 +02:00
Nikita Popov
eb8451e6a2
Merge branch 'PHP-7.4'
2019-06-04 10:10:56 +02:00
Joe Watkins
56e3d8deae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
should be or
2019-06-04 08:23:50 +02:00
Joe Watkins
0cd314ebc1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
always run
2019-06-04 08:13:03 +02:00
Joe Watkins
a7bfaab487
Merge branch 'PHP-7.4'
...
* PHP-7.4:
run/publish test on success and failure
2019-06-04 08:11:15 +02:00
Joe Watkins
43a6b23795
Merge branch 'PHP-7.4'
...
* PHP-7.4:
always run/publish tests, even when failing
2019-06-04 08:07:01 +02:00
Joe Watkins
79e76d7bd7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
always run/publish tests
2019-06-04 07:51:06 +02:00
Remi Collet
2e28b2fc51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
this was in 7.3.5, not 7.3.6
2019-06-04 07:19:59 +02:00
Joe Watkins
7857cb6dc0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
correct zts flags for 7.4
2019-06-04 05:04:51 +02:00
Joe Watkins
a962803078
Merge branch 'PHP-7.4'
...
* PHP-7.4:
get the name of the branch right
2019-06-03 22:47:21 +02:00
Joe Watkins
6a551b986f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Set up CI with Azure Pipelines
2019-06-03 22:28:02 +02:00
Nikita Popov
7013e8be85
Merge branch 'PHP-7.4'
2019-06-03 18:59:21 +02:00
Nikita Popov
6b57898057
Merge branch 'PHP-7.4'
2019-06-03 15:15:35 +02:00
Nikita Popov
a61084f48b
Merge branch 'PHP-7.4'
2019-06-03 14:28:19 +02:00
Nikita Popov
001d434449
Finish func_info updates for ext/standard
2019-06-03 11:26:25 +02:00
Nikita Popov
fd911a7124
Expect string argument in hexdec, octdec, bindec
...
Instead of accepting zval and converting to string. Also rewrite the
functions to make it obvious that they cannot return false.
2019-06-03 11:26:25 +02:00
Joe Watkins
ef41eaa5c6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
remove reverted commit from changelog
2019-06-03 11:25:45 +02:00
Joe Watkins
29722c7a0d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Fix bug #62397 - disable_functions does not work with eval."
2019-06-03 11:20:23 +02:00
Christoph M. Becker
d5280438d5
Update ZPP docs
...
The `L` specifier is no longer supported, see
<http://git.php.net/?p=php-src.git;a=commit;h=8a0965e3d694037837a8f70f280e7d14dd7778eb >.
2019-06-03 10:37:28 +02:00
Christoph M. Becker
1a5fde5894
Fix typo
2019-06-03 10:34:32 +02:00
Nikita Popov
321fe88935
Add Z_PARAM_NUMBER and use it for some functions
2019-06-03 10:14:05 +02:00
Nikita Popov
8a0965e3d6
Remove zpp L specifier
...
We don't use this internally anymore, and external usages should
be encouraged to move towards 'l'.
2019-06-03 09:39:17 +02:00
Nikita Popov
b1e52cab62
Merge branch 'PHP-7.4'
2019-06-03 09:21:13 +02:00
Nikita Popov
1df8175b61
Convert fetch_resource warnings into TypeErrors
...
More type checks that are not part of zpp and should generate a
TypeError in PHP 8.
2019-06-03 09:17:12 +02:00
Jakub Zelenka
29d79dc2e5
Merge branch 'PHP-7.4'
2019-06-02 19:15:00 +01:00
Anatol Belski
09ac6eb36d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't involve output check in the test
2019-06-01 23:33:00 +02:00
Gabriel Caruso
7393777da9
Add return type for string functions
2019-06-01 11:52:06 -03:00
Gabriel Caruso
1409a3b153
Add boolean return type for ctype extension functions
2019-06-01 11:52:06 -03:00
Gabriel Caruso
f3f159a779
Add double return type for math functions
2019-06-01 11:52:06 -03:00
Gabriel Caruso
b27366f29d
Add return type for bcmath extension functions
...
Except for bcpowmod, as it returns string|false
2019-06-01 11:50:01 -03:00
Anatol Belski
661c22bb02
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix expect section
2019-06-01 14:51:46 +02:00
Anatol Belski
f0cbcfd62d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update SDK version for AppVeyor
2019-06-01 13:45:53 +02:00
Christoph M. Becker
e720fb7565
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix ZTS issue regarding new Windows CTRL handling API
2019-06-01 09:36:25 +02:00
Joe Watkins
2ab1c03186
Merge branch 'PHP-7.4'
...
* PHP-7.4:
skip where no groups available
2019-06-01 07:36:52 +02:00
Joe Watkins
39646afacb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
only clear when showing in parallel runner
2019-06-01 06:13:43 +02:00
Anatol Belski
35ff798b34
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Change ZPP only if compiled with ICU >= 64
Update tests for ICU 64
2019-06-01 02:28:15 +02:00
Anatol Belski
a85deaeff9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix var name
2019-05-31 20:51:18 +02:00
Christoph M. Becker
c89b788a8a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
SimpleXMLElement and ResourceBundle implement Countable
2019-05-31 19:01:41 +02:00
Nikita Popov
bb3421b554
Merge branch 'PHP-7.4'
2019-05-31 17:00:31 +02:00
Nikita Popov
f20b2c71e5
Merge branch 'PHP-7.4'
2019-05-31 15:40:04 +02:00
Nikita Popov
9585ab3614
Merge branch 'PHP-7.4'
2019-05-31 14:04:27 +02:00
Nikita Popov
775e86344f
Merge branch 'PHP-7.4'
2019-05-31 12:56:51 +02:00
Nikita Popov
b3b0032ced
Merge branch 'PHP-7.4'
2019-05-31 12:38:28 +02:00
Nikita Popov
673c70a4ba
A few more func info updates
2019-05-31 11:24:47 +02:00
Dmitry Stogov
b4a3b49eab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better hot/cold code splitting
2019-05-31 12:22:08 +03:00
Nikita Popov
0f337e901b
Merge branch 'PHP-7.4'
2019-05-31 11:11:07 +02:00
Nikita Popov
0ba34824f5
Use TypeError instead of warning in implode()
...
These are again manual argument type checks.
2019-05-31 11:04:13 +02:00
Nikita Popov
8230d27c98
Merge branch 'PHP-7.4'
2019-05-31 10:54:58 +02:00
Nikita Popov
4e391ee3a3
Convert some warnings to TypeErrors in array functions
...
This is manual type and argument number checking code that was not
covered by the zpp move to TypeErrors.
2019-05-31 10:52:06 +02:00
Nikita Popov
4fff40e0d2
Merge branch 'PHP-7.4'
2019-05-31 09:18:09 +02:00
Dmitry Stogov
f43e483ffb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed compilation warning
2019-05-31 01:00:12 +03:00
Dmitry Stogov
d7710ef517
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't specialize "cold" handlers
2019-05-31 00:32:18 +03:00
Dmitry Stogov
8491800eaf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed useless specialization. Specialized handlers called not specialized helpers.
2019-05-31 00:16:20 +03:00
Dmitry Stogov
10cf2c07f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce register pressure by reloading values on CPUs with few general purpose registers
2019-05-31 00:15:18 +03:00
Craig Duncan
facfbf3c9c
Update the DatePeriod read/write handlers
2019-05-30 19:16:31 +01:00
Craig Duncan
bc87424835
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add a test for bug #65672
Ensure the internal properties cannot be overwritten
2019-05-30 19:15:58 +01:00
Dmitry Stogov
0a6a350371
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable "bad" optimisations only for emulation loop
2019-05-30 20:43:17 +03:00
Gabriel Caruso
edd7fb2a16
Add boolean return type for is_* functions
2019-05-30 13:55:36 -03:00
Anatol Belski
1f18a29514
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update libmagic.patch
2019-05-30 14:09:48 +02:00
Anatol Belski
dc72927c22
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update year
2019-05-30 14:03:28 +02:00
Anatol Belski
4b0b703cbe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
2019-05-30 14:00:14 +02:00
Anatol Belski
bd0834434f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for bug #78075 , json detection
2019-05-30 13:33:02 +02:00
Joe Watkins
6642d2d46f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
have parallel test runner respect NO_INTERACTION
2019-05-30 07:46:50 +02:00
Anatol Belski
a6f50eb317
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Partially reapply ba40f505e5
2019-05-30 02:48:37 +02:00
Anatol Belski
055ed113f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix datatype
2019-05-30 02:35:28 +02:00
Anatol Belski
8f85961326
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Ported limagic 5.37
2019-05-30 02:23:20 +02:00
Nikita Popov
4241258d74
Fix FPM tests for PHP 8
2019-05-29 17:31:10 +02:00
Nikita Popov
45a0656e95
Remove get() object handler
...
Now that set() is gone, there is little point in keeping get(), as
it is essentially just a different way of writing cast_object()
now.
Closes GH-4202.
2019-05-29 17:15:19 +02:00
Nikita Popov
693955c5c5
Merge branch 'PHP-7.4'
2019-05-29 17:07:52 +02:00
Nikita Popov
07fae1fd6e
escapeshellarg/escapeshellcmd: Throw TypeError instead of E_ERROR
2019-05-29 16:57:53 +02:00
Nikita Popov
0d239523a7
Merge branch 'PHP-7.4'
2019-05-29 16:48:37 +02:00
Nikita Popov
a1a8d14485
Update more func info information for ext/standard
2019-05-29 15:30:06 +02:00
Nikita Popov
e94a71b7f1
Enable JIT in Travis build
...
All tests should pass now.
2019-05-29 14:06:28 +02:00
Dmitry Stogov
207d928da8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zend_assign_to_variable() optimization
2019-05-29 13:59:01 +03:00
Nikita Popov
c7a67c6dce
Disable JIT for ext/ffi/tests/200.phpt
...
JIT assumes that the zend_write callback will not be changed at
runtime, which I think is reasonable, so don't run this test
under JIT.
2019-05-29 12:11:32 +02:00
Nikita Popov
b7a6430a52
Don't JIT functions with many blocks
...
Avoids a stack overflow in Zend/tests/runtime_compile_time_binary_operands.php
that happens in recursive RPO calculation. We could make that code
non-recursive, but I don't think it makes sense to JIT this kind of
function in the first place.
2019-05-29 11:49:44 +02:00
Dmitry Stogov
6d89553c48
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Mark "cold" functions
2019-05-29 11:50:27 +03:00
Derick Rethans
1aa8d0e680
Merge branch 'PHP-7.4'
2019-05-29 09:35:18 +01:00
Nikita Popov
31a516cf96
Remove set() object handler
2019-05-29 10:00:06 +02:00
Nikita Popov
cf610347a7
Merge branch 'PHP-7.4'
2019-05-29 09:52:43 +02:00
Dmitry Stogov
7c39ff8ef5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zend_do_fcall_overloaded() doesn't have to be exported
2019-05-29 10:35:20 +03:00
Christoph M. Becker
373d032e22
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS for 7.3.6
2019-05-29 09:28:03 +02:00
Christoph M. Becker
66b0ba4ce0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused variable
2019-05-29 09:10:28 +02:00
Remi Collet
56b4dd5af4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add NEWS entries for sec fix
2019-05-29 08:54:13 +02:00
Remi Collet
5a9c2934cb
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src: (79 commits)
disabled functions must not have return type
Fix conditional compilation
These macros should not expect any argument
Avoid cold code duplication
Restore the execute bit for run-tests.php
Replace ZVAL_COPY() and ZVAL_COPY_VALUE() for IS_OBJECT by cheaper macros
Respect optimization_level when running JIT inference
Fix type inference of SEND_UNPACK with empty array
SCCP: Fix handling of ASSIGN_OBJ_REF
Avoid usage of internal get/set object handlers. They are going to be removed in PHP-8. Scalar FFI values now should be accessed through special "cdata" property.
SCCP: Don't perform partial object propagation for typed props
JIT: Fix SWITCH_LONG/STRING codegen with exact type
Revert accidental changes
hebrev/hebrevc: Don't return false for empty string
Update MAY_BE_NULL info for more ext/standard functions
Avoid double copying
Update MAY_BE_NULL for parts of ext/standard
Update MAY_BE_NULL func_info for Zend functions
Fixed register allocation
Remove FUNC_MAY_WARN
...
2019-05-29 08:41:50 +02:00
Joe Watkins
9f94566ff8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
disabled functions must not have return type
Restore the execute bit for run-tests.php
2019-05-29 08:32:06 +02:00
Anatol Belski
37d01ff81a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix conditional compilation
These macros should not expect any argument
2019-05-29 02:54:15 +02:00
Dmitry Stogov
c952cc9faa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid cold code duplication
2019-05-29 01:43:47 +03:00
Dmitry Stogov
b2cdde0826
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace ZVAL_COPY() and ZVAL_COPY_VALUE() for IS_OBJECT by cheaper macros
2019-05-28 20:19:15 +03:00
Nikita Popov
4d1d5babde
Respect optimization_level when running JIT inference
...
Don't enable unsafe type inference by default -- we'll segfault on
some FFI tests.
2019-05-28 17:29:28 +02:00
Nikita Popov
e1c903230e
Merge branch 'PHP-7.4'
2019-05-28 16:41:30 +02:00
Nikita Popov
0d744f78e6
Merge branch 'PHP-7.4'
2019-05-28 16:15:54 +02:00
Dmitry Stogov
51ddc59d9f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid usage of internal get/set object handlers. They are going to be removed in PHP-8. Scalar FFI values now should be accessed through special "cdata" property.
2019-05-28 17:14:28 +03:00
Nikita Popov
8b3a71f904
Merge branch 'PHP-7.4'
2019-05-28 15:46:15 +02:00
Nikita Popov
0bd1fc225d
JIT: Fix SWITCH_LONG/STRING codegen with exact type
...
We were not loading the operand if the type was known exactly.
2019-05-28 15:25:19 +02:00
Nikita Popov
7791784bc9
Revert accidental changes
...
These MAY_BE_FALSE should not have been dropped...
2019-05-28 13:14:58 +02:00
Nikita Popov
4da316d189
hebrev/hebrevc: Don't return false for empty string
...
There is nothing special about the empty string in this context,
we should pass it through unchanged.
2019-05-28 13:12:38 +02:00
Nikita Popov
0d79c70cf3
Update MAY_BE_NULL info for more ext/standard functions
2019-05-28 13:12:38 +02:00
Dmitry Stogov
c64fe84f8b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid double copying
2019-05-28 13:35:29 +03:00
Nikita Popov
d95c15e371
Update MAY_BE_NULL for parts of ext/standard
...
Also update proto comments to be more accurate.
2019-05-28 12:11:32 +02:00
Nikita Popov
1493c73582
Update MAY_BE_NULL func_info for Zend functions
...
These cannot return NULL anymore in PHP 8.
2019-05-28 11:43:23 +02:00
Dmitry Stogov
38c75f8fd3
Fixed register allocation
2019-05-28 12:39:13 +03:00
Nikita Popov
8126658444
Remove FUNC_MAY_WARN
...
We are no longer constructing the local symbol table when calling
error handlers since 2f1f34952e ,
which was the original motivation for having this information and
was used in an earlier version of the JIT.
2019-05-28 11:23:02 +02:00
Nikita Popov
0b66563eee
Merge branch 'PHP-7.4'
2019-05-28 11:15:37 +02:00
Nikita Popov
521a919caf
Add return type information to some ext/standard functions
...
Just the first few functions in basic_functions.c to get started.
If anyone is interested in continuing this, PRs to add type info
will be accepted against master, with the following caveats:
* Return types only, we are not ready to add argument types yet.
* Only for functions. For methods the addition of return types is
BC breaking and needs to be carefully considered.
* Only in cases where we can actually express the return type, we
don't have int|false and similar.
2019-05-28 11:01:10 +02:00
Nikita Popov
bd4c9bce68
zend_func_info: Remove unnecessary type callbacks
...
In PHP 8 these functions will throw on invalid arguments, so there
is no need to distinguish the error cases.
2019-05-28 10:42:12 +02:00
Dmitry Stogov
6a8b5599df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Put phpinfo() related code into cold code segment
2019-05-28 11:04:47 +03:00
Joe Watkins
b675892ef9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version after release
2019-05-28 09:55:18 +02:00
Stanislav Malyshev
0403152897
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77967 - Bypassing open_basedir restrictions via file uris
2019-05-27 21:36:15 -07:00
Stanislav Malyshev
d99de36e53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77988 - heap-buffer-overflow on php_jpg_get16
2019-05-27 17:28:34 -07:00
Stanislav Malyshev
ae436a2627
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix function name
2019-05-27 17:21:32 -07:00
Stanislav Malyshev
12d68d0272
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix bug #78069 - Out-of-bounds read in iconv.c:_php_iconv_mime_decode() due to integer overflow
Fix #77973 : Uninitialized read in gdImageCreateFromXbm
2019-05-27 16:49:37 -07:00
Christoph M. Becker
8a11f3b166
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent parallel test conflicts
2019-05-27 18:43:18 +02:00
Nikita Popov
cf599e56ad
Merge branch 'PHP-7.4'
2019-05-27 17:44:55 +02:00
Nikita Popov
a1284b4241
Remove special handling of zero-arg funcs in func_info
...
In PHP 8 we always throw on zpp failure, so we can always return the
type for the valid argument case only. We'll want to also adjust the
return type listings based on that (and drop MAY_BE_NULL/MAY_BE_FALSE
where possible).
2019-05-27 17:16:56 +02:00
Nikita Popov
45c663a9d3
Merge branch 'PHP-7.4'
2019-05-27 17:13:00 +02:00
Nikita Popov
a08d068fce
Merge branch 'PHP-7.4'
2019-05-27 16:15:08 +02:00
Nikita Popov
9d4c35e250
Merge branch 'PHP-7.4'
2019-05-27 16:14:25 +02:00
Dmitry Stogov
12fd1d4aae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable pcre valgrind support only in DEBUG build (it affects performance)
2019-05-27 16:20:30 +03:00
Nikita Popov
f38e163bb2
Merge branch 'PHP-7.4'
2019-05-27 15:16:57 +02:00
Dmitry Stogov
b22cd2284d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Align .text segment for better huge pages usage
2019-05-27 13:38:07 +03:00
Christoph M. Becker
2e91a90f0b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make more tests run on Windows
2019-05-27 10:52:25 +02:00
Nikita Popov
13f675b858
Merge branch 'PHP-7.4'
2019-05-27 09:38:33 +02:00
Jakub Zelenka
6166e2578e
Merge branch 'PHP-7.4'
2019-05-26 18:51:39 +01:00
Anatol Belski
15cdc6d709
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade bundled PCRE2 to 10.33
2019-05-25 11:42:14 +02:00
Joe Watkins
f8d53099c9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use PKG_CHECK_MODULES to detect valgrind, and share build config with pcre
2019-05-25 09:04:37 +02:00
Joe Watkins
daa9172c10
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Define minimum required libffi version
2019-05-25 08:12:43 +02:00
Nikita Popov
038db18496
Merge branch 'PHP-7.4'
2019-05-24 11:02:03 +02:00
Christoph M. Becker
e3d5aa42ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
list net/interfaces, trying to get the error on windows when possible
2019-05-24 10:23:12 +02:00
Nikita Popov
299cf7e78a
Split up "parent" test cases
...
As the warnings are fatal errors in PHP 8, we can't test all of this
in a single file anymore.
2019-05-24 09:37:39 +02:00
Nikita Popov
e06ec226bc
Merge branch 'PHP-7.4'
2019-05-24 09:33:58 +02:00
Nikita Popov
378aeb8685
Merge branch 'PHP-7.4'
2019-05-23 13:41:26 +02:00
Christoph M. Becker
531005d5e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent further potential test conflicts
2019-05-23 13:14:38 +02:00
Joe Watkins
92ab868332
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix notice in run-tests
2019-05-23 13:09:33 +02:00
Christoph M. Becker
5aa91d5732
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent potential test conflict
2019-05-23 11:41:18 +02:00
Nikita Popov
22797c0e00
Merge branch 'PHP-7.4'
2019-05-23 11:13:22 +02:00
Joe Watkins
927a29b0ed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
run-tests improvements: Add XLEAK section, this is made necessary by the support for valgrind tools other than memcheck. XLEAK is to a leaking test what XFAIL is to a failing test. Tidy up summary a little to exclude Expected Fail and Expected Leak when there are no expected fail/leaks
2019-05-23 10:59:03 +02:00
Nikita Popov
c3ee12e786
Merge branch 'PHP-7.4'
2019-05-23 10:41:27 +02:00
Dmitry Stogov
b63cb67421
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed double mutex unlock
2019-05-23 11:21:15 +03:00
Nikita Popov
200f5b407e
Merge branch 'PHP-7.4'
2019-05-23 10:01:46 +02:00
Dmitry Stogov
89a7e94f05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed race condition in opcache restart
2019-05-23 00:21:26 +03:00
Dmitry Stogov
26c348b3a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed dump of constant flags
2019-05-22 23:02:18 +03:00
Joe Watkins
824290f19b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add support for valgrind tools to run-tests.php
2019-05-22 20:20:36 +02:00
Nikita Popov
19295e8d5c
Merge branch 'PHP-7.4'
2019-05-22 12:45:33 +02:00
Christoph M. Becker
5193e5c405
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case for cURL 7.65.0
2019-05-22 12:03:10 +02:00
Nikita Popov
224353a18f
Merge branch 'PHP-7.4'
2019-05-22 11:45:31 +02:00
Dmitry Stogov
3a76ef3d5d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
.text segment may be not the first one
2019-05-22 12:21:07 +03:00
Nikita Popov
c06f07f55b
Merge branch 'PHP-7.4'
2019-05-22 09:35:49 +02:00
Nikita Popov
f17931a8bb
Merge branch 'PHP-7.4'
2019-05-22 09:06:23 +02:00
Rasmus Lerdorf
3345d71109
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix precedence issue causing sub-second timeouts to be 0 in curl_multi_select
2019-05-21 14:47:28 -07:00
Nikita Popov
69517d037b
Merge branch 'PHP-7.4'
2019-05-21 17:35:33 +02:00
Nikita Popov
dda0ae3e59
Merge branch 'PHP-7.4'
2019-05-21 17:18:01 +02:00
Nikita Popov
4c5f83f644
Merge branch 'PHP-7.4'
2019-05-21 17:04:17 +02:00
Remi Collet
48d4573226
Merge branch 'PHP-7.4'
...
* PHP-7.4:
sodium: fix shared build
enchant: fix shared build
2019-05-21 16:15:08 +02:00
Christoph M. Becker
68e6c1542e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix ASLR related invalid opline handler issues
2019-05-21 14:34:55 +02:00
Remi Collet
7dec7a154f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix typo breaking shared build
2019-05-21 14:26:08 +02:00
Christoph M. Becker
5e0bcd24f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent test case failure
2019-05-21 11:19:35 +02:00
Nikita Popov
817278250f
Merge branch 'PHP-7.4'
2019-05-21 10:05:12 +02:00
Christoph M. Becker
77f02cda53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
use {TMP} placeholder in phpt tests
2019-05-21 09:03:51 +02:00
Dmitry Stogov
83b12d5b57
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent race condition in opcache_reset()
2019-05-21 00:08:22 +03:00
Dmitry Stogov
1e10c06f20
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78014 (Preloaded classes may depend on non-preloaded classes due to unresolved consts)
2019-05-20 18:16:01 +03:00
Christoph M. Becker
ad0e58abf4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test wrt. opcache.error_log
2019-05-20 11:11:39 +02:00
Joe Watkins
3518c4dfe9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "Rename *.l files to *.re"
2019-05-20 06:07:03 +02:00
Gabriel Caruso
53d1a42c32
Fix test related to 714d9fc358
...
The string value in the test array was removed, as the `chr` function
only accepts an integer
2019-05-19 08:47:53 -03:00
Gabriel Caruso
0cc63b9d2d
Fix tests related to 714d9fc358
...
Some changes did not get into master during merge conflits.
2019-05-19 07:25:56 -03:00
Peter Kokot
7e22347d0f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Migrate Coding standards docs to Markdown
Move CODING_STANDARDS to CODING_STANDARDS.md
2019-05-18 21:42:45 +02:00
Gabriel Caruso
a437f065b8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make chr ZPP failure message consistent with ext/standard
2019-05-18 16:17:06 -03:00
Peter Kokot
b91cf9bb8c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Join Zend engine docs-alike files to readme
2019-05-18 20:39:30 +02:00
Peter Kokot
4d07bba919
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enhance makedist script
2019-05-18 02:07:04 +02:00
Peter Kokot
0a7d71b593
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename *.l files to *.re
2019-05-17 23:54:12 +02:00
Peter Kokot
31faa4df73
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move copyright/license headers to CONTRIBUTING.md
2019-05-17 23:45:26 +02:00
Peter Kokot
739cb44bae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add enchant pkg-config notice in UPGRADING
Use PKG_CHECK_MODULES to detect the Enchant library
2019-05-17 19:39:31 +02:00
Peter Kokot
fee9e43892
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use *.data for tests data files
2019-05-17 19:05:16 +02:00
Christoph M. Becker
4b7c2de141
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78025 : segfault when accessing properties of DOMDocumentType
2019-05-17 13:33:23 +02:00
Peter Kokot
54e7acddf9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use *.data for fixture files
2019-05-17 04:00:04 +02:00
Peter Kokot
6ca8e06f82
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update UPGRADING about LiteSpeed
Rename configure --with-litespeed to --enable-litespeed
2019-05-17 03:18:13 +02:00
Bob Weinand
af12aa8124
Merge branch 'concatenation_precedence'
2019-05-16 18:39:48 +02:00
Bob Weinand
1ffa4d25aa
Merge branch 'PHP-7.4'
2019-05-16 18:37:05 +02:00
Peter Kokot
8aae33de38
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename *.tif to *.tiff for consistency
2019-05-16 07:43:52 +02:00
Nikita Popov
6b15163369
Merge branch 'PHP-7.4'
2019-05-15 14:36:53 +02:00
Nikita Popov
5063a7085c
Merge branch 'PHP-7.4'
2019-05-15 12:49:50 +02:00
Christoph M. Becker
63761822bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS regarding re-tagging 7.3.6RC1
2019-05-15 11:33:15 +02:00
Dmitry Stogov
139da4b271
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed ability to compile PHP without EX(run_time_cache). ZEND_EX_USE_RUN_TIME_CACHE was always defined.
2019-05-15 11:07:51 +03:00
Sara Golemon
a522fae382
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump for 7.2.20
2019-05-14 20:24:01 -04:00
Peter Kokot
a1de3e8ae0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs
Fix bug #62397 - disable_functions does not work with eval.
2019-05-15 00:00:14 +02:00
Peter Kokot
e04c41f882
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename *.dat to *.data for common file type
2019-05-14 23:33:31 +02:00
Peter Kokot
4251600203
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enhance the tokenizer data generator script
2019-05-14 21:51:51 +02:00
Nikita Popov
f009d6e7c3
Merge branch 'PHP-7.4'
2019-05-14 15:04:39 +02:00
Nikita Popov
20e983d9ce
Merge branch 'PHP-7.4'
2019-05-14 14:59:36 +02:00
Dmitry Stogov
4d8e0d493a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Moved NEWS entry
Fixed possible crashes, because of inconsistent PCRE cache and opcache SHM reset
2019-05-14 15:09:30 +03:00
Christoph M. Becker
f0eb642cb0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent further potential test conflicts
2019-05-14 13:20:38 +02:00
Christoph M. Becker
5b7575ebe2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prepare 7.3.7-dev
2019-05-14 11:46:06 +02:00
Christoph M. Becker
4a73a27636
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test case
2019-05-14 10:26:25 +02:00
Christoph M. Becker
9922000dd1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent test conflicts
2019-05-14 10:12:11 +02:00
Peter Kokot
7bdb4c82a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelog
Use pkg-config for sqlite3 and pdo_sqlite
2019-05-14 03:20:11 +02:00
Peter Kokot
231d132f25
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add extensions naming conventions to ext_skel.php
2019-05-14 03:05:01 +02:00
Peter Kokot
f5194540f1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert CRLF to LF
2019-05-14 02:59:16 +02:00
Dmitry Stogov
d58cc9c9e5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed test on platforms that don't support fastcall calling convention
2019-05-14 00:22:21 +03:00
Peter Kokot
f47ddb56c7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove example file for pgsql extension
2019-05-13 22:15:52 +02:00
Jakub Zelenka
e75aa7ed21
Merge branch 'PHP-7.4'
2019-05-13 18:52:17 +01:00
Nikita Popov
f106f57164
Merge branch 'PHP-7.4'
2019-05-13 14:43:10 +02:00
Dmitry Stogov
6b691cd44e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check for supported libffi ABI
2019-05-13 15:16:28 +03:00
Christoph M. Becker
6d9ca44851
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #78003 : strip_tags output change since PHP 7.3
2019-05-13 13:11:40 +02:00
Dmitry Stogov
fd4e2e77dc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ARM64 may be big endian
2019-05-13 13:34:07 +03:00
Dmitry Stogov
8f4f5fc040
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Load 8 bytes at a time in hash_func. (Sebastian Pop)
2019-05-13 12:36:49 +03:00
Nikita Popov
451eb4464a
Merge branch 'PHP-7.4'
2019-05-13 11:06:44 +02:00
Nikita Popov
12b03a8750
Merge branch 'PHP-7.4'
2019-05-13 10:52:00 +02:00
Christoph M. Becker
248a8987ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Deprecate and ignore $version parameter of curl_version()
2019-05-13 08:54:22 +02:00
Peter Kokot
64923adccf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert CRLF to LF
2019-05-13 03:54:10 +02:00
Peter Kokot
406437eadb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove outdated fastcgi info in favor of the manual
2019-05-13 02:58:52 +02:00
Peter Kokot
229c7ad6e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Refactor libgd docs
2019-05-12 23:55:18 +02:00
Peter Kokot
5827aca5f1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Migrate intl error conventions docs to Markdown
2019-05-12 23:24:08 +02:00
Peter Kokot
045e247ea2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Migrate oci8 README to Markdown
2019-05-12 22:09:20 +02:00
Peter Kokot
87cfcb0b7c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Migrate tests READMEs to Markdown
2019-05-12 22:03:35 +02:00
Peter Kokot
86825a43e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Migrate libxmlrpc README to Markdown
2019-05-12 21:08:38 +02:00
Peter Kokot
2cf90bb2f0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Normalize comments in *nix build system m4 files
2019-05-12 18:51:50 +02:00
Peter Kokot
3005d6c21d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos in upgrade notes
2019-05-12 17:37:04 +02:00
Christoph M. Becker
3d7f2fcdff
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent race conditions
2019-05-12 17:17:52 +02:00
Peter Kokot
ca22b24711
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused variable
2019-05-12 03:24:43 +02:00
Peter Kokot
b60173af0b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate variables
2019-05-12 03:06:19 +02:00
Peter Kokot
4dedf28380
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use PKG_CHECK_MODULES to detect the iODBC library
2019-05-12 01:37:00 +02:00
Peter Kokot
628806c382
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use PKG_CHECK_MODULES to detect the systemd library
2019-05-12 00:19:20 +02:00
Jakub Zelenka
4b2239b52b
Merge branch 'PHP-7.4'
2019-05-11 20:10:43 +01:00
Peter Kokot
d40a3f4c28
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Using PDO instead because of consistency
2019-05-11 21:06:22 +02:00
Peter Kokot
f1d9605970
Merge branch 'PHP-7.4'
...
* PHP-7.4:
list interfaces/adding just "binary" state status.
2019-05-11 20:29:36 +02:00
Peter Kokot
64b98c0e33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead DEBUG_CFLAGS setting
2019-05-11 19:53:20 +02:00
Peter Kokot
3e86050726
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused symbol definition
Remove redundant memory.h file
2019-05-11 19:48:13 +02:00
Peter Kokot
f45a3a7847
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify ext/mbstring/libmbfl/config.h creation
2019-05-11 19:45:00 +02:00
Peter Kokot
5ba4e55324
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Integrate libmbfl docs to README.md and LICENSE
2019-05-11 18:35:38 +02:00
Peter Kokot
5b4514dee8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert CRLF to LF in *.wsdl files
2019-05-11 17:17:40 +02:00
Peter Kokot
4b595655eb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix comment to match the future zts configuration option
2019-05-11 15:03:27 +02:00
Peter Kokot
d3924071c3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove ffi README in favour of docs
2019-05-11 14:51:40 +02:00
Christoph M. Becker
ac0e0c9a90
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent race condition
2019-05-11 09:53:07 +02:00
Peter Kokot
9604e2f28f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename *.jpeg files to *.jpg
2019-05-11 03:28:11 +02:00
Peter Kokot
3539a902dc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump config.guess and config.sub
2019-05-11 00:25:31 +02:00
Peter Kokot
a3c88135d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused variables
2019-05-10 22:58:29 +02:00
Christoph M. Becker
a8a391a2f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
NEWS and UPGRADING for the scatter filter
2019-05-10 18:46:50 +02:00
Kalle Sommer Nielsen
7c92eb734f
Merge branch 'master' of git.php.net:/php-src
2019-05-10 02:38:38 +03:00
Kalle Sommer Nielsen
569e338104
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implemented the gdScatter filter I wrote almost 10 years ago
2019-05-10 02:24:01 +03:00
Peter Kokot
08e7e6ffe6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused variable
2019-05-10 01:05:24 +02:00
Peter Kokot
1e0a4ac10e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code from configure.ac
2019-05-10 00:44:51 +02:00
Peter Kokot
c90ea769fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable checking for library in ext skeleton
2019-05-10 00:21:39 +02:00
Peter Kokot
071acf7b84
Disable checking for library in the ext skeleton
2019-05-10 00:17:54 +02:00
George Wang
487ffb45d2
Merge branch 'PHP-7.4'
2019-05-09 18:16:09 -04:00
Peter Kokot
34bc920382
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused functions
2019-05-09 19:07:39 +02:00
Christoph M. Becker
bcefc345bd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix erroneous assertions
2019-05-09 16:57:23 +02:00
Nikita Popov
167d4bdb62
Merge branch 'PHP-7.4'
2019-05-09 16:05:58 +02:00
Nikita Popov
b8c2b43778
Merge branch 'PHP-7.4'
2019-05-09 14:35:25 +02:00
Nikita Popov
9f87831470
Merge branch 'PHP-7.4'
2019-05-09 12:36:33 +02:00
Christoph M. Becker
206a3e96a6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix log_verbosity_bug.phpt
2019-05-09 12:16:48 +02:00
Nikita Popov
969f238808
Merge branch 'PHP-7.4'
2019-05-09 12:03:29 +02:00
Peter Kokot
a7bd736c2c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused functions
2019-05-08 22:02:49 +02:00
Peter Kokot
cae7f4add1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove redundant example/test libsodium.php file
2019-05-08 22:00:30 +02:00
Peter Kokot
7554d85eac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused example/test fileinfo.php script
2019-05-08 21:59:02 +02:00
Peter Kokot
ab60bf6dc3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove example PHP script from FFI
2019-05-08 21:56:10 +02:00
Peter Kokot
02fe866086
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove vcsclean script
2019-05-08 21:51:35 +02:00
Christoph M. Becker
0dbb0445aa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add {TMP} placeholder for PHPT INI sections
2019-05-08 19:26:30 +02:00
Nikita Popov
be31a9468d
Merge branch 'PHP-7.4'
2019-05-08 17:06:34 +02:00
Dmitry Stogov
370f4e4c6f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve PHP hash function. See Daniel Lemire's blog post https://lemire.me/blog/2016/07/21/accelerating-php-hashing-by-unoptimizing-it/
2019-05-08 16:48:42 +03:00
Nikita Popov
230d3089b3
Merge branch 'PHP-7.4'
2019-05-08 15:44:29 +02:00
Nikita Popov
6ada4db002
Merge branch 'PHP-7.4'
2019-05-08 12:13:11 +02:00
Nikita Popov
11655d0974
Merge branch 'PHP-7.4'
2019-05-08 11:51:50 +02:00
Nikita Popov
97cce70e55
Merge branch 'PHP-7.4'
2019-05-08 11:38:10 +02:00
Christoph M. Becker
7647f5401c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Deprecate CURLPIPE_HTTP1
2019-05-07 17:05:51 +02:00
Nikita Popov
fc1e6b3923
Merge branch 'PHP-7.4'
2019-05-07 16:22:17 +02:00
Nikita Popov
9702e2332f
Merge branch 'PHP-7.4'
2019-05-07 15:44:39 +02:00
Dmitry Stogov
40b2ffe201
Merge branch 'PHP-7.4'
...
* PHP-7.4:
speed up increment and decrement operators with overflow detection
2019-05-07 15:42:25 +03:00
Dmitry Stogov
b27f97d858
Merge branch 'PHP-7.4'
...
* PHP-7.4:
speed up add and sub operators with overflow detection
2019-05-07 15:38:27 +03:00
Nikita Popov
2a2f6a9e74
Merge branch 'PHP-7.4'
2019-05-07 14:30:20 +02:00
Nikita Popov
3619cc78a8
Merge branch 'PHP-7.4'
2019-05-07 14:07:30 +02:00
Nikita Popov
fd2db11929
Always generate fatal error for LSP failures
...
RFC: https://wiki.php.net/rfc/lsp_errors
2019-05-07 13:45:28 +02:00
Nikita Popov
49c4ab3c39
Merge branch 'PHP-7.4'
2019-05-07 10:41:31 +02:00
Peter Kokot
91a91c6c8b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Convert CRLF line endings to LF
Convert CRLF line endings to LF
2019-05-07 04:40:23 +02:00
Peter Kokot
e0aea5539b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove empty section
2019-05-07 04:26:09 +02:00
Peter Kokot
206476f7df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Add password registry RFC to changelog
2019-05-07 02:23:07 +02:00
Peter Kokot
9f26162ae4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Rename libbcmath license file to LICENSE
2019-05-07 01:10:05 +02:00
Peter Kokot
5d829dd0ce
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Move OpenLDAP license to redistributable info file
2019-05-06 23:04:19 +02:00
Dmitry Stogov
66a1d821d3
Improved code for unordered comparison
2019-05-06 16:07:48 +03:00
Dmitry Stogov
17a43fe2a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix double incremenation in ffi
2019-05-06 09:45:23 +03:00
Peter Kokot
49a0792d64
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename uppercase JPG file to lowercase jpg
2019-05-06 05:21:00 +02:00
Peter Kokot
4409368467
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Move wddx to dedicated section
2019-05-06 00:58:28 +02:00
Peter Kokot
c9fa674d51
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove phpextdist
2019-05-06 00:15:43 +02:00
Peter Kokot
f4b4a47e7f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate test file
2019-05-06 00:11:59 +02:00
Peter Kokot
46bcabeb05
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate getimagesize_variation_003 test
2019-05-05 23:55:23 +02:00
Jakub Zelenka
187872503a
Merge branch 'PHP-7.4'
2019-05-05 21:06:58 +01:00
Christoph M. Becker
848ce03347
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly initialize variable
2019-05-05 17:50:15 +02:00
Christoph M. Becker
af8dc55601
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
2019-05-05 15:41:05 +02:00
Christoph M. Becker
679d0402ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Re-add common PDO tests to Firebird test suite
2019-05-04 14:25:06 +02:00
Christoph M. Becker
14d48a58a1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak exhibited by bug_aaa.phpt
2019-05-04 14:20:59 +02:00
Peter Kokot
4e88112adb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix undefined variable, and remove unused test-pdo
2019-05-03 18:14:53 +02:00
Peter Kokot
371fe42680
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update `NEWS` with changes made at #4093
2019-05-03 17:34:22 +02:00
Christoph M. Becker
90c6a6a939
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix comment
2019-05-03 16:51:14 +02:00
Christoph M. Becker
c53236464e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
2019-05-03 16:49:27 +02:00
Kalle Sommer Nielsen
c265652879
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Include the request method in CLI server logs
2019-05-02 23:32:43 +03:00
Kalle Sommer Nielsen
a178627fa5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove test-pcntl script
2019-05-02 23:26:03 +03:00
Kalle Sommer Nielsen
6b43f56094
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PDO_Firebird test update, round 2
2019-05-02 23:20:20 +03:00
Kalle Sommer Nielsen
18fbdc74fb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rewrite PDO_Firebird tests to not depend on ext/interbase
2019-05-02 21:48:41 +03:00
Nikita Popov
f89adfe72c
Merge branch 'PHP-7.4'
2019-05-02 15:13:30 +02:00
Nikita Popov
79f41944ba
Merge branch 'PHP-7.4'
2019-05-02 15:07:04 +02:00
Christoph M. Becker
fe9165449d
Don't try to disable the already removed ext/interbase
...
Otherwise we break the build.
2019-05-01 23:56:48 +02:00
Kalle Sommer Nielsen
4218466111
Okay, too quick to merge, these are only relevant to 7.4
2019-05-01 23:48:05 +03:00
Kalle Sommer Nielsen
c71e35ea91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove some more interbase leftovers
Fix typo
NEWS for ext/interbase unbundling
2019-05-01 23:45:24 +03:00
Kalle Sommer Nielsen
26c96f9e8d
Remove this leftover
2019-05-01 23:30:25 +03:00
Kalle Sommer Nielsen
c280b0ac4c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move ext/interbase to pecl/database/interbase
2019-05-01 23:28:25 +03:00
Dmitry Stogov
fc42ac2d78
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use ZEND_HASH_FOREACH with direct callback, instead of callbacks
2019-04-30 14:50:38 +03:00
Christoph M. Becker
d2c86e60e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS wrt. sec fixes
2019-04-30 09:37:22 +02:00
Christoph M. Becker
bb3f261839
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix typo
2019-04-30 09:18:48 +02:00
Stanislav Malyshev
bc8822361a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77950 - Heap-buffer-overflow in _estrndup via exif_process_IFD_TAG
2019-04-30 00:06:15 -07:00
Stanislav Malyshev
97c728116c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77821 : Potential heap corruption in TSendMail()
2019-04-29 22:10:21 -07:00
Dmitry Stogov
3d2a6d9bed
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Also, use ZEND_ACC_PRELOADED for classes
2019-04-30 02:22:58 +03:00
Dmitry Stogov
faf24142f3
Fixed JIT for preloaded functions and classes
2019-04-30 00:23:57 +03:00
Peter Kokot
465c82b1af
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove TSRM configuration header
2019-04-29 22:35:24 +02:00
Christoph M. Becker
b6afae851c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77943 : imageantialias($image, false); does not work
2019-04-29 17:24:48 +02:00
Christoph M. Becker
43da42c3e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add tests for bug77943
2019-04-29 16:30:22 +02:00
Christoph M. Becker
f70a89318e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77943 : imageantialias($image, false); does not work
2019-04-29 16:19:21 +02:00
Nikita Popov
0d8eb57980
Merge branch 'PHP-7.4'
2019-04-29 14:18:07 +02:00
Nikita Popov
e175c4d865
Merge branch 'PHP-7.4'
2019-04-29 13:54:04 +02:00
Christoph M. Becker
b51b8a94f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly initialize out parameter
2019-04-29 12:18:11 +02:00
Markus Staab
1db95f8e46
fixed typo
2019-04-29 11:07:22 +02:00
Nikita Popov
6e1d899d3d
Merge branch 'PHP-7.4'
2019-04-29 10:23:46 +02:00
Christoph M. Becker
d09d3e28df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Extend CURLFile to support streams
2019-04-29 10:21:44 +02:00
Nikita Popov
cdb7ebd972
Merge branch 'PHP-7.4'
2019-04-29 09:58:56 +02:00
Christoph M. Becker
9bb6e0bffc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests
2019-04-29 09:07:45 +02:00
Peter Kokot
c828297c71
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify checking of *nix build tools
2019-04-29 01:35:49 +02:00
Peter Kokot
cabd8c12d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused TSRM/readdir.h header
2019-04-29 00:55:59 +02:00
Christoph M. Becker
ba90675f82
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make MySQLPDOTest::extractVersion() more liberal
2019-04-28 23:51:15 +02:00
Peter Kokot
17c276a1db
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enhance the buildconf force option
2019-04-28 21:19:30 +02:00
Peter Kokot
9e682ec0be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Automatically remove aclocal.m4 if present
2019-04-28 21:05:58 +02:00
Jakub Zelenka
5b7acc64eb
Merge branch 'PHP-7.4'
2019-04-28 18:51:36 +01:00
Peter Kokot
8f71468ea0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove outdated and redundant Apache README
2019-04-28 02:30:20 +02:00
Peter Kokot
aa1e3af43f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Update NEWS
Fix #77024 : SplFileObject::__toString() may return array
2019-04-28 00:51:53 +02:00
Peter Kokot
39caedac3e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Little detection change proposal.
2019-04-27 21:18:47 +02:00
Christoph M. Becker
033b8d6b40
Merge branch 'PHP-7.4'
...
* PHP-7.4:
PHP, meet MySQL
2019-04-27 19:22:56 +02:00
Christoph M. Becker
9396535033
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77944 : Wrong meta pdo_type for bigint on LLP64
2019-04-27 18:48:39 +02:00
Nikita Popov
8047cf9ba4
Merge branch 'PHP-7.4'
2019-04-26 15:05:56 +02:00
Nikita Popov
4c485586b4
Merge branch 'PHP-7.4'
2019-04-26 09:57:52 +02:00
Christoph M. Becker
0e2ff0dd94
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix VirtualProtect() related Phar issues
2019-04-26 09:09:35 +02:00
Christoph M. Becker
6bfb59b51c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77940 : test using outdated mon_thousands_sep for Swedish
2019-04-25 23:29:42 +02:00
Christoph M. Becker
7db0fa023b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77940 : test using outdated mon_thousands_sep for Swedish
2019-04-25 19:41:01 +02:00
Christoph M. Becker
a777322f16
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77940 : test using outdated mon_thousands_sep for Swedish
2019-04-25 09:00:02 +02:00
Christoph M. Becker
297be5adc0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77938 : socket_get_option error
2019-04-25 00:08:05 +02:00
Dmitry Stogov
395dd416aa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use better macros
2019-04-24 22:28:05 +03:00
Dmitry Stogov
a6e0df9a92
Merge branch 'PHP-7.4'
...
* PHP-7.4:
settype() optimization
2019-04-24 22:24:05 +03:00
Christoph M. Becker
7502df133c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove html_errors from INI Quick Reference as INI values are identical to Engine values
2019-04-24 19:22:11 +02:00
Dmitry Stogov
fa0968a211
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use ZEND_TRY_ASSIGN_REF_... macros for arguments passed to internal function by reference
2019-04-24 18:28:40 +03:00
Dmitry Stogov
2e4686b566
Use ZEND_TRY_ASSIGN_REF_... macros for arguments passed to internal function by reference
2019-04-24 18:16:47 +03:00
Dmitry Stogov
34db07567d
Use ZEND_TRA_ASSIGN_REF_... macros for by reference arguments of internal functions.
2019-04-24 16:14:48 +03:00
David Carlier
3a2cc1614a
JIT profiling other BSD build fixes
2019-04-24 14:52:50 +02:00
Remi Collet
bb9d0ad0e5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
news entry for litespeed
2019-04-24 09:46:36 +02:00
Dmitry Stogov
dd7cbadc02
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimize constant SWITCH_LONG and SWITCH_STRING
2019-04-24 00:09:12 +03:00
Dmitry Stogov
26353a2640
Fixed test (Warning -> Exception)
2019-04-23 22:44:30 +03:00
Dmitry Stogov
16e0fe0baa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't eliminate BIND_STATIC if it may cause undefined constant warning
2019-04-23 22:40:11 +03:00
Peter Kokot
d2e6c1aff1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move Autoconf Archive macros to a common m4 dir
2019-04-23 20:38:57 +02:00
Peter Kokot
028ffddf69
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move acinclude.m4 to build/php.m4
2019-04-23 20:32:03 +02:00
Peter Kokot
fe54a66720
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify libxmlrpc bundling and building
2019-04-23 20:18:38 +02:00
Dmitry Stogov
4c25fc5479
Implemented JIT for SWITCH_LONG/SWITCH_STRING
2019-04-23 17:40:10 +03:00
Nikita Popov
3a8304c35a
Merge branch 'PHP-7.4'
2019-04-23 13:15:09 +02:00
Nikita Popov
7208826fde
Merge branch 'PHP-7.4'
2019-04-23 12:44:26 +02:00
Nikita Popov
15c0135d5b
Merge branch 'PHP-7.4'
2019-04-23 11:40:56 +02:00
Peter Kokot
fea3b011bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove php.gif from the project root directory
2019-04-23 08:59:55 +02:00
Peter Kokot
bedfb33dfb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove CLI sapi README
2019-04-23 08:52:30 +02:00
Peter Kokot
e95a372f82
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove sinclude from tsrm.m4
2019-04-23 08:28:53 +02:00
Dmitry Stogov
35b7dd11fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused BIND_STATIC insructions
2019-04-23 02:21:45 +03:00
Dmitry Stogov
74153193c6
Use _zend_hash_find_known_hash() for IS_CONST operand
2019-04-22 21:07:05 +03:00
Dmitry Stogov
499b25c303
Fixed JIT for DEFINED opcode
2019-04-22 20:19:34 +03:00
Christoph M. Becker
6405607459
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Merge link.c and link_win32.c
2019-04-22 13:54:23 +02:00
Dmitry Stogov
4d7df449d0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add gcc global register for aarch64
2019-04-22 14:29:58 +03:00
Christoph M. Becker
b8e0f506b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix parameter order
2019-04-22 12:39:12 +02:00
Nikita Popov
e311f2a320
Fix flag value clash affecting defined() function
2019-04-22 12:01:04 +02:00
Dmitry Stogov
4846413289
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed wrong opline
2019-04-22 11:06:27 +03:00
George Wang
39a249d12a
Merge branch 'PHP-7.4'
2019-04-21 16:00:07 -04:00
Peter Kokot
7eb8913e04
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor Zend/acinclude.m4 local macro
2019-04-21 15:53:44 +02:00
Peter Kokot
cbca8a8df4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Fix CS in Markdown files
2019-04-21 15:39:22 +02:00
Peter Kokot
4767c412b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Updated visual text elements using markdown
2019-04-21 11:06:57 +02:00
Peter Kokot
04890aa399
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Fix logo location
2019-04-21 03:16:17 +02:00
Peter Kokot
04c13d4857
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Fix typo
2019-04-20 22:55:42 +02:00
Peter Kokot
d35234fe91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor docs files for bcmath library
Move ucgendata README to generator file header
2019-04-20 22:41:31 +02:00
Peter Kokot
0ccb909363
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove zend.ico
2019-04-20 22:24:01 +02:00
Peter Kokot
9872b6369f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test for imagecolorclosesthwb
2019-04-20 19:32:02 +02:00
Peter Kokot
01cdae054b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for date timestamp
2019-04-20 19:21:22 +02:00
Peter Kokot
2cf6187b77
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelog
Update changelog
Fix #77921 : static.php.net doesn't work anymore
2019-04-20 19:13:35 +02:00
Peter Kokot
3478dc5e28
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update changelogs
Remove PHP_SETUP_KERBEROS m4 macro
2019-04-20 16:16:25 +02:00
Peter Kokot
b1d8714fb2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77011
2019-04-20 15:22:23 +02:00
Peter Kokot
cf84bbf606
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use PKG_CHECK_MODULES to detect the kerberos libraries
2019-04-20 15:18:14 +02:00
Peter Kokot
e869e2c807
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update Git repository for Windows build tool kit
2019-04-19 21:11:39 +02:00
Gabriel Caruso
f13ad7836c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in comments
2019-04-19 13:12:21 -03:00
Kalle Sommer Nielsen
59f4490689
Remove HAVE_PCRE, as ext/pcre is always available
2019-04-19 15:18:31 +03:00
Dmitry Stogov
e04fbdab2f
Keep EX(opline) in consistency when call engine and helper functions
2019-04-18 22:19:57 +03:00
Christoph M. Becker
5e482c72f9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use php-sdk-2.2.0beta5 on AppVeyor
2019-04-18 16:52:31 +02:00
Nikita Popov
648cc80987
Merge branch 'PHP-7.4'
2019-04-18 15:40:39 +02:00
Nikita Popov
32e5f8da4e
Merge branch 'PHP-7.4'
2019-04-18 13:50:28 +02:00
Dmitry Stogov
59d1360caa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check assert only when RC_DEBUG is enabled
2019-04-18 14:27:18 +03:00
Nikita Popov
d9ec9a919c
Merge branch 'PHP-7.4'
2019-04-18 13:08:27 +02:00
Nikita Popov
2b7dd211a9
Merge branch 'PHP-7.4'
2019-04-18 12:59:12 +02:00
Nikita Popov
3c44e29cfd
Merge branch 'PHP-7.4'
2019-04-18 12:34:21 +02:00
Nikita Popov
358b81fc0e
Merge branch 'PHP-7.4'
2019-04-18 12:14:54 +02:00
Nikita Popov
878e09c47c
Merge branch 'PHP-7.4'
2019-04-18 12:10:21 +02:00
Dmitry Stogov
28828ffccb
Fixed JIT for recursive functions with type-hints
2019-04-18 12:32:31 +03:00
Nikita Popov
492a5d3ebe
Merge branch 'PHP-7.4'
2019-04-18 10:11:51 +02:00
Dmitry Stogov
c78fc4971e
Fixed access to uninitialized vaiable.
2019-04-18 10:48:04 +03:00
Dmitry Stogov
35ee6dc69f
Don't initialize return value before calling user functions
2019-04-18 03:00:20 +03:00
Dmitry Stogov
f1767e23f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't initialize return value before calling user functions
2019-04-18 02:32:06 +03:00
Dmitry Stogov
f9dbfcd6fa
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed compatibility with phpdbg
2019-04-18 01:34:13 +03:00
Peter Kokot
e564a13a5f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Join build makefiles together
2019-04-17 21:56:05 +02:00
Dmitry Stogov
eeb0842e97
Merge branch 'PHP-7.4'
...
* PHP-7.4:
It's safe to keep old string if it's stored not in SHM.
2019-04-17 22:09:07 +03:00
Dmitry Stogov
2de2cb2a87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed dl() function. It failed in DEBUG build without opcache because of assert during string interning.
2019-04-17 19:32:46 +03:00
Christoph M. Becker
034babbcc1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77911 : Wrong warning for session.sid_bits_per_character
2019-04-17 17:25:13 +02:00
Nikita Popov
f9e918b17d
Merge branch 'PHP-7.4'
2019-04-17 14:25:34 +02:00
Nikita Popov
1d53d6df7e
Merge branch 'PHP-7.4'
2019-04-17 14:06:05 +02:00
Dmitry Stogov
70f03416f5
Fixed test
2019-04-17 12:21:19 +03:00
Dmitry Stogov
bf61ec6b7e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Eliminate FETCH $GLOBALS followed by FETCH_DIM/UNSET_DIM/ISSET_ISEMPTY_DIM
2019-04-17 11:53:09 +03:00
Gabriel Caruso
09d1a17ad3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
2019-04-17 05:48:16 -03:00
Derick Rethans
b896819b99
Merge branch 'PHP-7.4'
2019-04-17 09:40:35 +01:00
Christoph M. Becker
263b0cf71b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests for non English environments
2019-04-17 09:58:40 +02:00
Dmitry Stogov
176100499a
Fixed compilation
2019-04-16 22:22:34 +03:00
Peter Kokot
e1f0292f23
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Simplify generated_lists generation
2019-04-16 17:25:43 +02:00
Peter Kokot
23804f0c91
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ext/pcre/config0.m4: add ac_cv_have_pcre2_jit variable
2019-04-16 17:16:57 +02:00
Remi Collet
55d7a8381c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
next is 7.2.19
2019-04-16 13:13:05 +02:00
Dmitry Stogov
f603f5c63c
Improved support for "context threading" (not enabled).
...
This technique uses CPU Register Address Stack for return branch predicion and give 25% improvement on some call intensive micro-becnhmarks. Unfotrunately, it also slow downs other recursive benchmarks (probably because of RAS size). The techniquea is not compatible with VM without register variables.
2019-04-16 13:33:01 +03:00
Nikita Popov
39724f4645
Merge branch 'PHP-7.4'
2019-04-16 12:21:48 +02:00
Christoph M. Becker
7096ed9f26
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prepare main branch for PHP 7.3.6
2019-04-16 11:57:30 +02:00
Nikita Popov
772a158d7a
Merge branch 'PHP-7.4'
2019-04-16 10:40:01 +02:00
Christoph M. Becker
9e62ba1533
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use curl_mime_*() functions if available
2019-04-16 08:44:19 +02:00
Dmitry Stogov
9951cf73c4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
2019-04-16 00:09:52 +03:00
Dmitry Stogov
ba12a1bea9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
execute_data->return_value is not used for internal functions
2019-04-16 00:09:08 +03:00
Peter Kokot
7d99c32f93
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove not needed extension generated files gitignores
2019-04-15 20:07:37 +02:00
Nikita Popov
ed0c80f1bf
Merge branch 'PHP-7.4'
2019-04-15 15:58:14 +02:00
David Carlier
e1e63b89f4
Both readlink args should not point to the same buffer
2019-04-15 15:55:00 +02:00
Nikita Popov
daa78d7749
Merge branch 'PHP-7.4'
2019-04-15 15:28:07 +02:00
Nikita Popov
61a6a6ec51
Merge branch 'PHP-7.4'
2019-04-15 15:01:03 +02:00
Nikita Popov
60b724cbda
Merge branch 'PHP-7.4'
2019-04-15 14:34:32 +02:00
Nikita Popov
b8e5c07183
Merge branch 'PHP-7.4'
2019-04-15 13:22:00 +02:00
Dmitry Stogov
150c5e04e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed tests that always (or almost always) true
2019-04-15 13:19:39 +03:00
Nikita Popov
49b97af431
Suppress some maybe uninit warnings in jit
2019-04-15 11:47:10 +02:00
Nikita Popov
dc42e403a2
Merge branch 'PHP-7.4'
2019-04-15 11:42:55 +02:00
Nikita Popov
a3dc083c81
Merge branch 'PHP-7.4'
2019-04-15 10:54:46 +02:00
Nikita Popov
2e186aa9dc
Merge branch 'PHP-7.4'
2019-04-15 10:25:27 +02:00
Côme Chilliet
9d38510ab4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Updated NEWS
Fix a NULL dereferencing crash in php-ldap
2019-04-15 10:21:27 +02:00
Nikita Popov
426f99126e
Merge branch 'PHP-7.4'
2019-04-15 10:05:25 +02:00
Nikita Popov
fe256e6961
Merge branch 'PHP-7.4'
2019-04-15 09:48:57 +02:00
Gabriel Caruso
12446aafce
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_* for always available extensions
2019-04-14 11:51:39 -03:00
Peter Kokot
a3c6a2a132
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable PACKAGE_* preprocessor symbols
2019-04-13 07:01:11 +02:00
Peter Kokot
57cfd706e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PHP_READDIR_R_TYPE
2019-04-13 04:51:03 +02:00
George Wang
5fe7b805ba
Merge branch 'PHP-7.4'
2019-04-12 17:48:39 -04:00
Nikita Popov
f2fd51cb80
Merge branch 'PHP-7.4'
2019-04-12 17:05:07 +02:00
Nikita Popov
ee73f5b191
Merge branch 'PHP-7.4'
2019-04-12 15:12:47 +02:00
Nikita Popov
1b41961636
Remove dubious memcmp optimization in iconv
...
This violates strict aliasing, and appears entirely unnecessary --
the compiler can optimize fixed size memcmp's by itself.
2019-04-12 15:12:45 +02:00
Nikita Popov
41c4816157
Avoid uninit warnin in http_fopen_wrapper
...
This one looks semi-legit, in case php_stream_eof() returns false
but php_stream_get_line() fails. Not totally sure this cannot
happen, so rewriting to check both conditions at once.
2019-04-12 15:12:45 +02:00
Nikita Popov
176fe4b679
Avoid uninit warning in dtoa
...
This code is extremely convoluted, I have no idea whether or not
this one is legitimate. Suppressing with explicit initialization.
2019-04-12 15:12:45 +02:00
Nikita Popov
3fab73e24e
Avoid misc uninitialized variable warnings
2019-04-12 15:12:45 +02:00
Nikita Popov
bbeec4c20f
Avoid uninitialized variable warnings in gmp
2019-04-12 15:12:45 +02:00
Nikita Popov
2f97bb6cfc
Add test for get_cfg_var with array variable
...
And fix incorrect variable shadowing in add_config_entry(). However,
the test doesn't hit this case, as it requires a nested array. I'm
not sure if it's possible to produce nested arrays from ini?
2019-04-12 15:12:45 +02:00
Nikita Popov
a830682a9a
Avoid unitialized variable warning in soap
...
Extract envelope fetch into separate function, so the control
flow becomes more obvious.
2019-04-12 15:12:45 +02:00
Christoph M. Becker
47602eb624
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Include libpq-fs.h on Windows, too
2019-04-12 14:12:33 +02:00
Christoph M. Becker
015c7a1dd3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests wrt. internationalization
2019-04-12 13:09:11 +02:00
Nikita Popov
5caa52476c
Merge branch 'PHP-7.4'
2019-04-12 12:51:42 +02:00
Nikita Popov
785f034e41
Merge branch 'PHP-7.4'
2019-04-12 12:04:11 +02:00
Nikita Popov
b8b00263c5
Merge branch 'PHP-7.4'
2019-04-12 10:37:27 +02:00
Nikita Popov
2370d56334
Merge branch 'PHP-7.4'
2019-04-12 10:06:14 +02:00
Nikita Popov
d4c69b2633
Merge branch 'PHP-7.4'
2019-04-12 09:57:16 +02:00
Dmitry Stogov
4190b95d11
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Backported call frame initialization improvement
2019-04-12 02:37:33 +03:00
Dmitry Stogov
39505764ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace "ZEND_CALL_CTOR" hack by additional live-range
2019-04-12 01:01:47 +03:00
Dmitry Stogov
7604f295ca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test
2019-04-11 21:37:26 +03:00
Christoph M. Becker
95040f9aa0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix potential OPcache file cache related issues
2019-04-11 18:31:41 +02:00
Nikita Popov
79d1d88e06
Merge branch 'PHP-7.4'
2019-04-11 17:44:38 +02:00
Nikita Popov
6960ea99ac
Merge branch 'PHP-7.4'
2019-04-11 16:57:46 +02:00
Nikita Popov
e91de955be
Merge branch 'PHP-7.4'
2019-04-11 16:02:20 +02:00
Anatol Belski
f4628436df
Fix VirtualProtect memory size
...
As otherwise it would remove executable flag from JIT memory
Thanks Dmitry for the hint :)
2019-04-11 15:46:46 +02:00
Nikita Popov
771c64edcc
Merge branch 'PHP-7.4'
2019-04-11 15:23:29 +02:00
Anatol Belski
853f881bd1
Avoid code duplication
2019-04-11 15:05:16 +02:00
Nikita Popov
3e26a6bd54
Merge branch 'PHP-7.4'
2019-04-11 14:14:31 +02:00
Dmitry Stogov
6d232eec03
Improved code generated for RETURN in methpods and closures
2019-04-11 15:13:14 +03:00
Dmitry Stogov
14b24340c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77877 (call_user_func() passes $this to satatic methods).
2019-04-11 14:31:40 +03:00
Nikita Popov
6dd7450427
Fix opcache build without JIT
2019-04-11 12:52:50 +02:00
Nikita Popov
47c74e780d
Merge branch 'PHP-7.4'
2019-04-11 12:36:10 +02:00
Dmitry Stogov
5f46d2180c
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Use zend_quiet_write instead of ZEND_IGNORE_VALUE
Suppress warnings using zend_quiet_write
Don't build JIT if the host architecture doesn't support it
Fix incompatible pointer warning in zend_test
Mark zend_jit_print_regset as unused
Suppress write() warnings in jit_perf_dump.c
Generate ZEND_COUNT for sizeof()
Make tsrm_env_lock() void
2019-04-11 13:26:47 +03:00
Nikita Popov
9825d68c08
Use zend_quiet_write instead of ZEND_IGNORE_VALUE
...
Forgot this exists when I changed this earlier...
2019-04-11 12:24:10 +02:00
Nikita Popov
76f0ad3ade
Merge branch 'PHP-7.4'
2019-04-11 12:23:03 +02:00
Nikita Popov
b2fb753e85
Don't build JIT if the host architecture doesn't support it
...
Also display in phpinfo() whether JIT is unavailable/disabled/enabled.
2019-04-11 12:05:41 +02:00
Nikita Popov
ee45565a2a
Fix incompatible pointer warning in zend_test
2019-04-11 11:20:52 +02:00
Nikita Popov
d31104facc
Mark zend_jit_print_regset as unused
...
This is a debugging function, so it's usually not going to be used
and we don't want to see a warning about that.
2019-04-11 11:05:42 +02:00
Nikita Popov
0351552e1e
Suppress write() warnings in jit_perf_dump.c
2019-04-11 11:00:38 +02:00
Nikita Popov
8f441c90ca
Merge branch 'PHP-7.4'
2019-04-11 10:49:38 +02:00
Nikita Popov
f89f67037a
Merge branch 'PHP-7.4'
2019-04-11 10:42:05 +02:00
Dmitry Stogov
c97e3158ed
Check for ZEND_CALL_RELEASE_THIS only if ZEND_CALL_CLOSURE is not set
2019-04-11 11:19:09 +03:00
Dmitry Stogov
77c522062a
Removed old constants (they are redeclared as macros)
2019-04-11 03:06:51 +03:00
Dmitry Stogov
cc900edd77
Simplify call frame initialization
2019-04-11 02:08:32 +03:00
Anatol Belski
0d91b046a3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Ensure double slashes are replaced by the path normalization
2019-04-10 15:47:57 +02:00
Nikita Popov
9db2efe283
Merge branch 'PHP-7.4'
2019-04-10 15:31:24 +02:00
Anatol Belski
30f5822a9b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix phar:// include handling with file cache
2019-04-10 14:57:27 +02:00
Nikita Popov
6342458499
Merge branch 'PHP-7.4'
2019-04-10 14:45:01 +02:00
Nikita Popov
4e6a33dc2b
Merge branch 'PHP-7.4'
2019-04-10 13:39:59 +02:00
Nikita Popov
2e982e975c
Merge branch 'PHP-7.4'
2019-04-10 13:07:06 +02:00
Nikita Popov
30d968951d
Merge branch 'PHP-7.4'
2019-04-10 12:23:49 +02:00
Peter Kokot
90654aff31
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix a spell mistake
2019-04-10 10:45:31 +02:00
Nikita Popov
f3dd39ef61
Merge branch 'PHP-7.4'
2019-04-10 10:39:02 +02:00
Dmitry Stogov
d374920e5e
Eliminated unreachable jumps
2019-04-10 11:18:59 +03:00
Nikita Popov
ef1bc493ed
Merge branch 'PHP-7.4'
2019-04-10 10:02:23 +02:00
Nikita Popov
dc17ca6044
Remove redundant $this args in SplObjectStorage implementation
...
If we pass intern we can get the object from &intern->std, no need
to pass around an extra argument everywhere.
2019-04-10 09:44:06 +02:00
Nikita Popov
03783bb55d
Merge branch 'PHP-7.4'
2019-04-10 09:40:06 +02:00
Dmitry Stogov
20548ab506
Removed too strict register allocation constraint.
2019-04-10 02:06:51 +03:00
Dmitry Stogov
2980de29f0
Don't split basic block after RECV, if function checks type hints
2019-04-09 21:59:47 +03:00
Nikita Popov
e640f64008
Merge branch 'PHP-7.4'
2019-04-09 17:27:22 +02:00
Nikita Popov
6cec795951
Merge branch 'PHP-7.4'
2019-04-09 17:24:37 +02:00
Dmitry Stogov
40c8585bab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ext/ffi/tests/044.phpt failure on 32-bit Linux
2019-04-09 16:12:53 +03:00
Dmitry Stogov
e05867f089
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Eliminated check for assignment to itself
2019-04-09 15:37:50 +03:00
Dmitry Stogov
578049f157
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Micro-optimization
2019-04-09 14:39:15 +03:00
Dmitry Stogov
9c14cfdc78
Compare only "significant" bits
2019-04-09 11:28:29 +03:00
Peter Kokot
8afb3e6856
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicated substitude for Makefile
2019-04-09 02:11:57 +02:00
Dmitry Stogov
ef6e99ec39
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Remove HAVE_STRERROR
2019-04-09 01:18:54 +03:00
Dmitry Stogov
2a310b24d6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Repare SWITCH VM
2019-04-09 01:17:36 +03:00
Peter Kokot
a36c856b0a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_STRERROR
2019-04-08 23:40:46 +02:00
Xinchen Hui
2f03c0aa72
Fixed missed NEWS while merging
2019-04-09 00:09:05 +08:00
Xinchen Hui
c9fefb31fd
Fixed bug #77857 (Wrong result if executed with JIT)
2019-04-09 00:07:23 +08:00
Nikita Popov
5db671dcd0
Fix get_gc signature
2019-04-08 16:25:02 +02:00
Nikita Popov
e35a3cb28c
ext/xml: Use object instead of resource
...
Use an XmlParser object instead of a resource. This is an internal
representation change, not a conversion to OO APIs. XmlParser objects
cannot be explicitly constructed, they are created through the usual
xml_parser_* APIs.
This change allows us to provide a proper get_gc() implementation,
thus resolving bugs #72793 and #76874 .
xml_parser_free() is a no-op now and need not be called anymore.
2019-04-08 16:23:13 +02:00
Nikita Popov
2301f0bad3
Merge branch 'PHP-7.4'
2019-04-08 13:22:41 +02:00
Nikita Popov
39bffff9ce
Merge branch 'PHP-7.4'
2019-04-08 13:00:28 +02:00
Nikita Popov
aebf80e52d
Merge branch 'PHP-7.4'
2019-04-08 11:42:34 +02:00
Xinchen Hui
231601e8f2
Merge branch 'master' of git.php.net:/php-src
...
* 'master' of git.php.net:/php-src:
Fixed bug #77844
2019-04-08 17:18:37 +08:00
Xinchen Hui
6322b6ffe7
Change to php.net mail address
2019-04-08 17:16:07 +08:00
Nikita Popov
b23fc39be6
Merge branch 'PHP-7.4'
2019-04-08 11:13:19 +02:00
Nikita Popov
addd5a1693
Merge branch 'PHP-7.4'
2019-04-08 10:20:17 +02:00
Nikita Popov
890fe686bc
Merge branch 'PHP-7.4'
2019-04-08 09:44:41 +02:00
Peter Kokot
6515c368c1
[ci skip] Ignore Opcache Jit generated files
2019-04-08 00:16:37 +02:00
David Carlier
914b27acb7
Fix few compiler warnings.
2019-04-08 00:00:09 +02:00
Peter Kokot
6d8d48498e
Add AS_HELP_STRING to Opcache JIT option
2019-04-07 23:29:12 +02:00
Peter Kokot
36d2ac01d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add AS_HELP_STRING to phpdbg options
2019-04-07 23:24:25 +02:00
Peter Kokot
149e0872de
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Mention docs dir
2019-04-07 23:16:16 +02:00
Peter Kokot
e6f86fb17c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove checks for locale.h, setlocale, localeconv
2019-04-07 18:34:02 +02:00
Peter Kokot
e4a563b0c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_SIGNAL_H
2019-04-07 15:57:21 +02:00
Peter Kokot
309edb070d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_LIMITS_H
2019-04-07 15:21:48 +02:00
Peter Kokot
06fc66ed7c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor AC_INIT in configure.ac and PHP versions
2019-04-07 05:54:12 +02:00
Stanislav Malyshev
e1a39387d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Always use ZEND_SECURE_ZERO() when cleaning up data
bump versions after release
2019-04-06 19:06:29 -07:00
Peter Kokot
26725842cf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update release process docs to Markdown
2019-04-07 00:59:33 +02:00
Christoph M. Becker
dbf3b7ce09
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix ASAN configuration
2019-04-06 17:39:20 +02:00
Joe Watkins
7b58e43da3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Follow up #77849 PDOStatement objects in undefined state after clone
2019-04-06 01:32:15 +02:00
Joe Watkins
0ab45c24fe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77849 Disable cloning of PDO handle/connection objects to avoid segfault
2019-04-06 00:56:52 +02:00
Christoph M. Becker
25994513d9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update Appveyor CI to php-sdk-2.2.0beta4
2019-04-05 23:16:48 +02:00
Peter Kokot
1a8bdb4d30
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Bring release process docs up 2 date
2019-04-05 22:38:11 +02:00
Peter Kokot
f9b5d9c2a7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add opcache.lockfile_path and opcache.lockfile_path to ini settings
2019-04-05 19:46:11 +02:00
Joe Watkins
ade73c360c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo
2019-04-05 07:57:54 +02:00
David Carlier
5247a0bc66
JIT register dump, fix BSD build.
2019-04-05 01:51:59 +03:00
Dmitry Stogov
df6709f480
Fixed JIT for === and !==
2019-04-05 01:12:34 +03:00
Dmitry Stogov
5b34c87d18
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimized "smart branch" instructions
2019-04-05 00:26:20 +03:00
Javier Eguiluz
3b4d9f9d9e
Fixed a typo
2019-04-04 19:00:38 +02:00
Dmitry Stogov
0deb6419e8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make is_identical() functions return zend_bool (instead of int)
2019-04-04 18:18:52 +03:00
Dmitry Stogov
c4d5d26df3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
unused variable
2019-04-04 17:52:42 +03:00
Christoph M. Becker
01cd31ad9a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos
2019-04-04 14:25:44 +02:00
Dmitry Stogov
21f249cfa4
Avoid code generation for BB with single VM instruction
2019-04-04 00:47:51 +03:00
Dmitry Stogov
a146e6eea7
jump optimization
2019-04-03 23:37:25 +03:00
Dmitry Stogov
34d5c1b16f
Fixed crash
2019-04-03 22:46:49 +03:00
Dmitry Stogov
fc28e9a0b3
Avoid useless code generation for RECV opcodes
2019-04-03 22:28:23 +03:00
Matteo Beccati
e4d40fc05c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Ref #76801 remove old file source from file_sources hash in case of file included more than once
2019-04-03 14:36:27 +02:00
Dmitry Stogov
22b3b6d5ea
Use inlined HYBRID VM handlers for DO_FCALL* and ZEND_RETRUN
2019-04-03 15:02:04 +03:00
Dmitry Stogov
3df8e27731
Fixed incorrect address usage
2019-04-03 13:05:09 +03:00
Dmitry Stogov
c91df3aedd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove RC1 and RCN from scalar types.
2019-04-03 12:39:26 +03:00
Dmitry Stogov
32b16338b6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed SCCP support for ZEND_ASSIGN_OBJ_REF
2019-04-03 11:23:37 +03:00
Dmitry Stogov
b9c639d7ac
JIT code improvement for ocache.jit=1 (IP consistency)
2019-04-03 03:56:39 +03:00
Dmitry Stogov
85c249c9fd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed CFG construction for SWITCH opcodes
2019-04-03 03:12:13 +03:00
Dmitry Stogov
6cfa490786
Improve JIT code for smart branches
2019-04-03 02:00:54 +03:00
Dmitry Stogov
7f63b84a39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
array_merge() may return argument with incremented reference counter
2019-04-03 00:45:52 +03:00
Peter Kokot
1522a12974
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean ext/spl/tests/bug42364.phpt files after tests
2019-04-02 23:24:27 +02:00
Dmitry Stogov
a5d5932904
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use fastcall calling convention
2019-04-02 23:49:31 +03:00
Dmitry Stogov
c617fb78ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improved comparison opcode handlers
2019-04-02 23:47:03 +03:00
Dmitry Stogov
803d322240
Use fastcall calling convention
2019-04-02 22:10:57 +03:00
Dmitry Stogov
672d80f5dc
Fixed clang compiler warnings
2019-04-02 21:54:32 +03:00
Kalle Sommer Nielsen
eb8a19c8ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead JPEG2000 code
2019-04-02 21:18:48 +03:00
Dmitry Stogov
12da21b1c1
Avoid NEW opcode inlining when opcache.jit=1
2019-04-02 18:44:58 +03:00
Dmitry Stogov
278c8e7b59
Avoid generation of dead jumps
2019-04-02 18:18:00 +03:00
Dmitry Stogov
0d6fce887b
Added comments
2019-04-02 15:41:25 +03:00
Christoph M. Becker
ba67d44e07
Fix misplacement of calling convention declaration
...
MSVC is particularly picky about this, and won't compile as it is.
2019-04-02 14:10:10 +02:00
Remi Collet
2b41d1fb0c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix paste issue
2019-04-02 11:06:22 +02:00
Christoph M. Becker
eb7a7e4b53
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Pointer arithmetic on void pointers is illegal
2019-04-02 10:43:23 +02:00
Stanislav Malyshev
bef66e1b6f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77831 - Heap-buffer-overflow in exif_iif_add_value in EXIF
2019-04-02 00:13:11 -07:00
Dmitry Stogov
b6dc1d2466
typo
2019-04-02 00:37:34 +03:00
Dmitry Stogov
4e1d545d47
Fixed edge cases in ZEND_ASSIGN_OP+ASSIGN_DIM and replaced specialized helpers with single one
2019-04-01 23:17:45 +03:00
Dmitry Stogov
8bf2de045b
Removed checks for required object handlers
2019-04-01 21:50:20 +03:00
Dmitry Stogov
d196ec9b93
Eliminate hash lookup for immutable op_arrays
2019-04-01 21:20:52 +03:00
Dmitry Stogov
6fccca54a2
Use Zend MM for JIT temporary buffres allocation
2019-04-01 19:22:22 +03:00
Joe Watkins
e9c49b73b7
fix zts jit build
2019-04-01 11:45:32 +02:00
Derick Rethans
9d620a94ac
Updated to version 2019.1 (2019a)
2019-04-01 10:38:41 +01:00
Derick Rethans
562eda6b2c
Empty merge
2019-04-01 10:38:41 +01:00
Stanislav Malyshev
63e0c22037
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Unfortunately, travis CI has old oniguruma library
Update NEWS & UPGRADING
Add fallbacks for older oniguruma versions
Add mbstring.regex_stack_limit to php.ini-*
Implement RF bug #72777 - ensure stack limits on mbstring functions.
2019-04-01 00:32:49 -07:00
Dmitry Stogov
9a06876072
Added JIT compiler for x86 and x86_64
2019-04-01 10:27:11 +03:00
Stanislav Malyshev
a0fbb64fa3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix bug #77753 - Heap-buffer-overflow in php_ifd_get32s
2019-03-31 23:11:34 -07:00
Stanislav Malyshev
a1631ac57b
Fix bug #77753 - Heap-buffer-overflow in php_ifd_get32s
2019-03-31 23:11:34 -07:00
Anatol Belski
d8628e941f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve ascii check
2019-04-01 02:17:40 +02:00
Anatol Belski
bf78142295
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rework conditions and make them more future proof
2019-03-31 22:11:54 +02:00
Anatol Belski
4e4bb56d6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement stricter CRT check
2019-03-31 17:34:06 +02:00
Anatol Belski
a58882be6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix return
2019-03-31 14:32:54 +02:00
Anatol Belski
027e733e69
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rework the VS version evaluation
Implement stricter extension compatibility check
2019-03-31 14:27:02 +02:00
Christoph M. Becker
09cdf51bec
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77827 : preg_match does not ignore \r in regex flags
2019-03-31 13:36:59 +02:00
Joe Watkins
93773b6f15
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo [ci skip]
2019-03-31 09:47:04 +02:00
Joe Watkins
1bb4b95e6f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
correct readme [ci skip]
2019-03-31 09:44:19 +02:00
Anatol Belski
5c6fa92de8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak
2019-03-30 23:08:05 +01:00
Anatol Belski
059423a665
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix memory leak
2019-03-30 21:31:54 +01:00
Anatol Belski
00bb4ecb77
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use wchar_t as native type in C
2019-03-30 21:09:33 +01:00
Peter Kokot
7915d8bbca
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move README files to a dedicated docs directory
2019-03-30 19:39:32 +01:00
Matteo Beccati
c6eac0d5be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed SKIPIF when --disable-mbregex is used
2019-03-30 18:30:42 +01:00
Peter Kokot
6be6d9366a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Add ffi_parser.c info
2019-03-30 16:09:28 +01:00
Peter Kokot
d31a40dbcd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Join README.GIT-RULES and CONTRIBUTING.md
2019-03-30 16:01:53 +01:00
Peter Kokot
7d09091086
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Mention PHP_PROG_BISON and PHP_PROG_RE2C
2019-03-30 13:59:22 +01:00
Anatol Belski
82189218ba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix handling and extend ext/ffi/tests/044.phpt
2019-03-30 12:54:05 +01:00
Anatol Belski
83c0f43fc8
No need for scoping anymore
2019-03-30 11:06:40 +01:00
Peter Kokot
b49022b3dc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor PHP_PROG_BISON and PHP_PROG_RE2C
2019-03-30 02:02:14 +01:00
Joe Watkins
abd0e015a8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
tsrm environment lock
2019-03-29 19:06:59 +01:00
Dmitry Stogov
4006e99577
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Partial support for GCC mode attribute.
2019-03-29 17:29:32 +03:00
Christoph M. Becker
627072618e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test expectations
2019-03-29 14:35:51 +01:00
Christoph M. Becker
a231ad2a9d
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix test expectations
2019-03-29 14:35:31 +01:00
Christoph M. Becker
482cd861f6
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix test expectations
2019-03-29 14:34:07 +01:00
Christoph M. Becker
9f545de0b6
Fix test expectations
...
While bug77020.phpt already succeeds on Linux, it fails on Windows;
imap_fetchbody_variation3.phpt fails on both systems. We therefore
make these tests more resilient.
2019-03-29 14:33:42 +01:00
Matteo Beccati
d02c8ede15
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Removed declaration inside for loops
2019-03-29 14:24:40 +01:00
Matteo Beccati
db1647ae1f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed SKIPIF when --disable-mbregex is used
2019-03-29 14:11:46 +01:00
Dmitry Stogov
3caf9d660d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed memory leaks
2019-03-29 14:34:07 +03:00
Dmitry Stogov
5db761b68f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow usage of incomplete types for external variables, function parameters and return values
2019-03-29 14:16:18 +03:00
Christoph M. Becker
81a8fd6d83
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test expectation
2019-03-29 09:59:24 +01:00
Dmitry Stogov
8eae762e2f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added support for more GCC extensions: attributes, __extension__, __asm__ (ignored)
2019-03-29 02:38:12 +03:00
Dmitry Stogov
1dc9887cf5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Ignore "__format__" attribute
2019-03-29 00:53:06 +03:00
Dmitry Stogov
353578eecd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Allow incomplete array variables - extern const char * const sys_errlist[]
2019-03-29 00:16:51 +03:00
Dmitry Stogov
13f5c83295
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77768 (FFI: Builtin Types Should Not Raise Error On Redeclaration)
2019-03-29 00:03:18 +03:00
Peter Kokot
011c935ae3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove php7.spec.in file
2019-03-28 17:45:02 +01:00
Bob Weinand
61ee869921
Change the precedence of concatenation
...
This implements RFC https://wiki.php.net/rfc/concatenation_precedence
2019-03-28 13:42:09 +01:00
Nikita Popov
a3b2425f38
Merge branch 'PHP-7.4'
2019-03-28 10:15:06 +01:00
Nikita Popov
0720313bd4
Merge branch 'PHP-7.4'
2019-03-28 09:31:18 +01:00
Stanislav Malyshev
379e3cb8e3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Validate subject encoding in mb_split and mb_ereg_match
Validate pattern against mbregex encoding
SQLite3: add DEFENSIVE config for SQLite >= 3.26.0 as a mitigation strategy against potential security flaws
2019-03-28 00:45:52 -07:00
Joe Watkins
a11e0e7c6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix build: readline support must be disabled by default in phpdbg
2019-03-28 07:35:50 +01:00
Dmitry Stogov
128318dcbf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Support for __restrict and few GCC attributes
2019-03-28 03:01:58 +03:00
Dmitry Stogov
03618d2c7d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use semantic predicates to simplify lookahead and reduce backtracking
2019-03-28 01:22:11 +03:00
Nikita Popov
73a59eff52
Merge branch 'PHP-7.4'
2019-03-27 18:11:00 +01:00
Nikita Popov
6d71d983da
Merge branch 'PHP-7.4'
2019-03-27 13:05:04 +01:00
Nikita Popov
9b7a78b1c2
Merge branch 'PHP-7.4'
2019-03-27 12:43:23 +01:00
Joe Watkins
7873c79651
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Consider phpdbg as cli
2019-03-27 10:39:04 +01:00
Joe Watkins
b00cd127c9
Merge branch 'master' of git://github.com/php/php-src
2019-03-27 10:09:10 +01:00
Joe Watkins
5b3acb3eaf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77805 phpdbg build fails when readline is shared
2019-03-27 10:05:03 +01:00
Sara Golemon
eb4624fa2e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Validate interoperability between libsodium and libargon for argon2i(d) hashing
Increase default time cost for argon2 password hashing
2019-03-27 00:37:31 -04:00
Joe Watkins
fe7a914194
Merge branch 'PHP-7.4'
...
* PHP-7.4:
more work on phpdbg conditional breaks
2019-03-27 00:02:52 +01:00
Joe Watkins
f2ce7a745b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77800 phpdbg segfaults on conditional breakpoints
2019-03-26 23:07:19 +01:00
Peter Kokot
fcfd7744db
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add minimum required PHP version to run-tests.php
2019-03-26 22:31:24 +01:00
Joe Watkins
f43ce705fe
remove last enable-maintainer-zts mention from source
2019-03-26 18:28:18 +01:00
Nikita Popov
d49371fbd4
Merge branch 'PHP-7.4'
2019-03-26 15:48:02 +01:00
Ivan Enderlin
ece7fe60f5
Fix typos in the documentation
2019-03-26 15:00:32 +01:00
Nikita Popov
c5b2aa2f6c
Merge branch 'PHP-7.4'
2019-03-26 10:11:47 +01:00
Peter Kokot
d0e472740a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Join contributing and patches docs
2019-03-25 23:00:50 +01:00
Peter Kokot
5e8116c579
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update NEWS
[ci skip] Update NEWS
Fix #77794 : Incorrect Date header format in built-in server
2019-03-25 21:59:04 +01:00
Dmitry Stogov
2fd930d839
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Regenerate parser
2019-03-25 21:45:39 +03:00
Derick Rethans
af1be9c33e
Update README.RELEASE_PROCESS
2019-03-25 17:53:18 +01:00
Nikita Popov
e446ccdf75
Merge branch 'PHP-7.4'
2019-03-25 17:46:33 +01:00
Nikita Popov
6f82ca8742
Merge branch 'PHP-7.4'
2019-03-25 17:36:38 +01:00
Nikita Popov
edd5aa12f4
Merge branch 'PHP-7.4'
2019-03-25 16:43:50 +01:00
Nikita Popov
6d24b92315
Merge branch 'PHP-7.4'
2019-03-25 14:22:25 +01:00
Nikita Popov
864f8c07ea
Merge branch 'PHP-7.4'
2019-03-25 13:58:56 +01:00
Joe Watkins
4383442923
Merge branch 'master' of git://github.com/php/php-src
2019-03-25 08:01:36 +01:00
Joe Watkins
bd73607b9e
TSRM cleanup for PHP8
2019-03-25 08:00:17 +01:00
Peter Kokot
09b9e773b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enhance Autoconf version checking
2019-03-24 02:13:20 +01:00
Peter Kokot
54fdf6d3b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Move CREDITS from root to README
2019-03-24 01:57:53 +01:00
Peter Kokot
90b70b2626
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tokenizer_data_gen.sh for non-posix bison
2019-03-24 01:54:46 +01:00
Peter Kokot
bcb1c193d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove enable-wddx from Travis compile as it WDDX has been unbundled as of PHP 7.4
2019-03-23 23:26:08 +01:00
Peter Kokot
b167dbe3ae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove text editor modelines
2019-03-23 21:11:32 +01:00
Joe Watkins
11663baa58
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix bug #76801 : phpdbg too many open files error
2019-03-23 09:50:17 +01:00
Joe Watkins
161adfff3f
For consistency with Windows, and because ZTS is not experimental or a "maintainer" feature, this commits renames --enable-maintainer-zts to --enable-zts in the autotools build, and related documentation
2019-03-23 07:34:54 +01:00
Remi Collet
598175eff6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ensure pcre.jit=1 for this test
2019-03-22 15:32:07 +01:00
Remi Collet
68312cb37d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ensure pcre.jit=1 for these tests
2019-03-22 15:02:26 +01:00
Nikita Popov
3da522121b
Merge branch 'PHP-7.4'
2019-03-22 13:07:15 +01:00
Nikita Popov
787ecb6d56
Merge branch 'PHP-7.4'
2019-03-22 12:41:39 +01:00
Nikita Popov
c89f066810
Merge branch 'PHP-7.4'
2019-03-22 10:43:21 +01:00
Nikita Popov
d7348cd2b4
Merge branch 'PHP-7.4'
2019-03-22 10:30:15 +01:00
rjhdby
e86cdce549
Make zend_hash_sort() return void
...
This function always succeeds, so remove the success indicator
return value.
2019-03-22 09:51:47 +01:00
Nikita Popov
8ccdb8282e
Merge branch 'PHP-7.4'
2019-03-22 09:48:26 +01:00
Nikita Popov
6b7545c225
Merge branch 'PHP-7.4'
2019-03-21 16:28:19 +01:00
Nikita Popov
c4b383d663
Merge branch 'PHP-7.4'
2019-03-21 10:23:08 +01:00
Remi Collet
4916271664
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix test
Sync the changes to ext/filter with 7.4, now that it works.
2019-03-21 09:20:30 +01:00
Kalle Sommer Nielsen
e632537c83
Remove usage of HAVE_HASH_EXT and COMPILE_DL_HASH as ext/hash is always available (master only)
2019-03-20 20:43:35 +02:00
Christoph M. Becker
7b2a908c04
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Unbundle ext/wddx
2019-03-20 14:16:56 +01:00
Remi Collet
6ac9f47aba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix tests after fix for #76717
2019-03-20 14:08:43 +01:00
Nikita Popov
8971728383
Merge branch 'PHP-7.4'
2019-03-20 12:07:05 +01:00
Remi Collet
c1c554744d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
NEWS
Revert "Fix #77609 : Tests from mailparse extension fails"
2019-03-20 11:56:12 +01:00
Nikita Popov
4080b2a748
Merge branch 'PHP-7.4'
2019-03-20 11:40:21 +01:00
Dmitry Stogov
be3183e9cf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed incorrect error message
2019-03-20 02:41:40 +03:00
Dmitry Stogov
71413747c8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed typo
2019-03-20 01:32:01 +03:00
Peter Kokot
1f150b5b96
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Upgrade deprecated directives and use non-posix bison
2019-03-19 20:29:36 +01:00
Peter Kokot
61d9e53ed9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove extension readmes
2019-03-19 20:26:07 +01:00
Sara Golemon
a25348a03a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Bump versions for 7.2.18
2019-03-19 14:33:30 -04:00
Remi Collet
1df4ef0773
Merge branch 'PHP-7.4'
...
* PHP-7.4:
comment out sqlite3.defensive = 1 follow common practice, this is the default value
2019-03-19 16:28:22 +01:00
Christoph M. Becker
ebb6c86d28
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prepare main branch for PHP 7.3.5
2019-03-19 16:22:53 +01:00
Remi Collet
28003c1c06
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix test for upcoming pcre2 10.33
2019-03-19 16:16:26 +01:00
Nikita Popov
a895e58335
Merge branch 'PHP-7.4'
2019-03-19 15:37:07 +01:00
Nikita Popov
787652b324
Merge branch 'PHP-7.4'
2019-03-19 13:59:48 +01:00
Nikita Popov
44bb61fdef
Merge branch 'PHP-7.4'
2019-03-19 13:10:01 +01:00
Nikita Popov
b2048c6f87
Merge branch 'PHP-7.4'
2019-03-19 12:02:00 +01:00
Nikita Popov
13158a675e
Merge branch 'PHP-7.4'
2019-03-19 11:59:36 +01:00
Dmitry Stogov
25fe1d5dde
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Improve white-space handling
2019-03-19 13:53:18 +03:00
Nikita Popov
3f5fb9a05f
Merge branch 'PHP-7.4'
2019-03-19 11:29:20 +01:00
Nikita Popov
e4ee38ab22
Merge branch 'PHP-7.4'
2019-03-19 10:40:08 +01:00
Nikita Popov
c8458ddce1
Merge branch 'PHP-7.4'
2019-03-19 10:03:17 +01:00
Nikita Popov
a0671b8822
Merge branch 'PHP-7.4'
2019-03-19 09:56:00 +01:00
Kalle Sommer Nielsen
bab621c788
This should be redundant too as we use a centralized PCRE install
2019-03-19 06:58:15 +02:00
Kalle Sommer Nielsen
d63b442778
Remove the PCRE checks from ext/filter. pecl/filter is obsolete and since PCRE is a hard dependency for PHP, it will always be available.
...
A side effect of this should be that Unix builds now support shared builds using ./configure
2019-03-19 06:50:02 +02:00
Dmitry Stogov
61548042f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
micro-optimization
2019-03-19 02:02:37 +03:00
Peter Kokot
747713c191
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Leave bundled generated files untouched
2019-03-18 23:04:43 +01:00
Christoph M. Becker
598d9fa29b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix order
2019-03-18 20:09:43 +01:00
Christoph M. Becker
ef25de3e4e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77578 : Crash when php unload
2019-03-18 19:27:38 +01:00
Dmitry Stogov
d52894dd58
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Optimization for ASCII data
2019-03-18 19:34:17 +03:00
Nikita Popov
c4e4ef0498
Merge branch 'PHP-7.4'
2019-03-18 16:58:59 +01:00
Christoph M. Becker
e913368188
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid unnecessary global variable
2019-03-18 16:00:09 +01:00
Christoph M. Becker
86ba208499
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add bison version check to configure
2019-03-18 15:05:51 +01:00
Christoph M. Becker
8583603ee9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
2019-03-18 15:00:02 +01:00
Nikita Popov
e67d872e3e
Merge branch 'PHP-7.4'
2019-03-18 12:33:12 +01:00
Xinchen Hui
59db08e3a2
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Simplfy test case
2019-03-18 19:30:20 +08:00
Nikita Popov
cd22cfb5d2
Merge branch 'PHP-7.4'
2019-03-18 12:16:24 +01:00
Nikita Popov
e0cbb80d29
Merge branch 'PHP-7.4'
2019-03-18 11:41:24 +01:00
Nikita Popov
3bbabc1f61
Merge branch 'PHP-7.4'
2019-03-18 11:07:43 +01:00
Nikita Popov
5b391599d1
Merge branch 'PHP-7.4'
2019-03-18 10:51:40 +01:00
Christoph M. Becker
2b54140b72
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #76956 : Wrong value for 'syslog.filter' documented in php.ini
2019-03-18 10:21:38 +01:00
Nikita Popov
68d8880248
Merge branch 'PHP-7.4'
2019-03-18 10:14:19 +01:00
Nikita Popov
d0eb445f60
Merge branch 'PHP-7.4'
2019-03-18 10:05:16 +01:00
Peter Kokot
2883d31198
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update changelog
2019-03-18 02:14:24 +01:00
Peter Kokot
347128a12b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync AC_CHECK_SIZEOF m4 macro calls
2019-03-18 02:13:12 +01:00
Christoph M. Becker
7ad6e1d7de
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused variables
2019-03-17 23:32:53 +01:00
Derick Rethans
0a72c91009
Merge remote-tracking branch 'refs/remotes/origin/master'
2019-03-17 15:16:18 -04:00
Derick Rethans
e13aba4fd8
Merge branch 'PHP-7.4'
2019-03-17 15:13:30 -04:00
Peter Kokot
7e7e6e95f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove outdated README for ext/json
2019-03-17 20:10:57 +01:00
Derick Rethans
ed2cbd49c8
Merge branch 'PHP-7.4'
2019-03-17 14:38:20 -04:00
Nuno Lopes
960f22709c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
remove unneeded AC_REQUIRE([AC_PROG_YACC]) thanks Peter Kokot for noticing
2019-03-17 08:10:53 -04:00
Peter Kokot
592a119484
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove duplicate PHP_C_BIGENDIAN check
2019-03-17 01:33:06 +01:00
Peter Kokot
6aad38603f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move distribution generator script to scripts/dev
2019-03-16 23:54:54 +01:00
Peter Kokot
e963fcf5d4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enhance the buildconf script
2019-03-16 23:43:56 +01:00
Peter Kokot
0a03b64c48
Merge branch 'PHP-7.4'
...
* PHP-7.4:
snmp: remove unused var
2019-03-16 19:36:20 +01:00
Peter Kokot
631b3ca245
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove make install step from README
check for bison binary, not yacc this fixes compilation with recent bison
2019-03-16 18:39:15 +01:00
Nuno Lopes
495a46aa1d
check for bison binary, not yacc
...
this fixes compilation with recent bison
2019-03-16 12:21:52 -04:00
Peter Kokot
3acbdb5085
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update changelog
bump minimum bison version to 3.0 after last parser changes
2019-03-16 15:18:58 +01:00
Nuno Lopes
39a5f73fd1
bump minimum bison version to 3.0 after last parser changes
2019-03-16 06:28:36 -04:00
Nuno Lopes
dd84bd4393
snmp: remove unused var
2019-03-16 06:19:35 -04:00
Stanislav Malyshev
c09b13cb02
[ci skip] Add Bishop Bettini as maintainer for phar & imap
2019-03-15 23:08:22 -07:00
Peter Kokot
76ea87d22f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Make credits script executable from other paths
2019-03-16 01:38:00 +01:00
Peter Kokot
81acc70b6e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use separate output files in xmlreader tests
2019-03-15 23:51:54 +01:00
Peter Kokot
6426420f61
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace dirname(__FILE__) by __DIR__ in tests
2019-03-15 23:36:47 +01:00
Pedro Magalhães
f26c8644bb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test for #77535 fix
2019-03-15 18:14:55 +00:00
Nikita Popov
0f4b70d571
Merge branch 'PHP-7.4'
2019-03-15 17:08:08 +01:00
Nikita Popov
a7ac26eace
Merge branch 'PHP-7.4'
2019-03-15 12:06:29 +01:00
Xinchen Hui
9f9b2573ed
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed bug #77697 (Crash on Big_Endian platform)
2019-03-15 16:58:42 +08:00
Peter Kokot
d506097082
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add tests to XMLReader
2019-03-15 00:14:33 +01:00
Peter Kokot
c02a03b49b
Fix failing test
...
Since aad39879f2 accessing undefined
constants always throws an Error exception.
2019-03-14 20:41:19 +01:00
Peter Kokot
160f3636db
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean build system
2019-03-14 20:21:30 +01:00
Peter Kokot
4b3da12363
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove HAVE_STRFTIME
2019-03-14 19:43:45 +01:00
Nikita Popov
273aa37b83
Fix weakref object handlers for master
2019-03-14 17:33:17 +01:00
Nikita Popov
2e69f59657
Merge branch 'PHP-7.4'
2019-03-14 17:30:53 +01:00
Nikita Popov
65be77b8db
Merge branch 'PHP-7.4'
2019-03-14 17:26:36 +01:00
Xinchen Hui
cc16781e9e
Merge branch 'PHP-7.3'
...
* PHP-7.3:
updated NEWS
Fixed bug #77738 (Nullptr deref in zend_compile_expr)
2019-03-14 16:47:30 +08:00
Dmitry Stogov
2dd2dcaf9c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implemented a faster way to access predefined TSRM resources - CG(), EG(), etc.
2019-03-14 03:02:10 +03:00
Peter Kokot
d349ea3ceb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Integrate README.EXT_SKEL to help option
2019-03-13 20:56:51 +01:00
Claude Pache
37443a6318
test reversed
2019-03-13 20:27:17 +01:00
Joe Watkins
5d6d4ba4c4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix duplicate symbols _zend_ce_weakrefs
2019-03-13 11:38:37 +01:00
Peter Kokot
58a46b9efd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Mention removed m4 macros
2019-03-13 00:16:56 +01:00
Anatol Belski
81ec402a08
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync with ZEND_ENABLE_STATIC_TSRMLS_CACHE enablement in ext/mbstring
2019-03-12 21:35:34 +01:00
Dmitry Stogov
4111daf2b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better data packing
2019-03-12 22:19:36 +03:00
Dmitry Stogov
dbb462db5d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid reinitailization of ZTS cache pointer. Initialize it once in TSRM.c
2019-03-12 17:36:02 +03:00
Dmitry Stogov
59e954524e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ZTS cache usage
2019-03-12 16:58:16 +03:00
Dmitry Stogov
d30bd8e6d0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ZTS cache usage
2019-03-12 15:25:59 +03:00
Dmitry Stogov
a29f7e93b4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ZTS cache usage
2019-03-12 15:14:00 +03:00
Dmitry Stogov
2b6cbcae06
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ZTS cache usage
2019-03-12 15:06:11 +03:00
Dmitry Stogov
5f09db3073
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Switch to use ZTS cache
2019-03-12 14:17:14 +03:00
Dmitry Stogov
c56bd7e220
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Cleanup unused module globals
2019-03-12 13:44:25 +03:00
Dmitry Stogov
403033db5b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed ZTS cache usage
2019-03-12 12:07:54 +03:00
Nikita Popov
36f875e78e
Merge branch 'PHP-7.4'
2019-03-12 09:58:38 +01:00
Remi Collet
f9f422659c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add --enable-rtld-now in upgrade info
use DL_LOAD in litespeed
add --enable-rtld-now build option to change dlopen behavior
2019-03-12 08:26:36 +01:00
Joe Watkins
5bf6562bcb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
weakrefs upgrading note
2019-03-12 06:53:07 +01:00
Joe Watkins
99230784f5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zend_weakrefs
2019-03-12 00:37:28 +01:00
Anatol Belski
dbcdf85796
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Die hard if mc.exe or mt.exe not found
2019-03-11 21:00:18 +01:00
Christoph M. Becker
dd6911550f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
SQLite3: add DEFENSIVE config for SQLite >= 3.26.0 as a mitigation strategy against potential security flaws
2019-03-11 16:32:16 +01:00
Nikita Popov
9c0a3b78e8
Merge branch 'PHP-7.4'
2019-03-11 15:36:48 +01:00
Nikita Popov
92291ab726
Merge branch 'PHP-7.4'
2019-03-11 14:33:07 +01:00
Dmitry Stogov
e279c80247
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Closure::fromCallable() supports only regular methods and magic method invoked through __call()/__callStatic(). It doesn't support method of internal classes invoked through C object or class handlers. This commit prevents crash described at bug #77708 , but doesn't implement the desired behavior.
2019-03-11 15:42:41 +03:00
Dmitry Stogov
ddf02dc978
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reset fields
2019-03-11 15:39:18 +03:00
Dmitry Stogov
63da56cfc4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77707 (FFI loses type information for opaque types)
2019-03-11 14:26:52 +03:00
Nikita Popov
852485d8ec
Adjust tests for zpp TypeError change
2019-03-11 11:32:20 +01:00
Nikita Popov
6bfb119e18
Remove some unnecessary error handler setting
...
A few non-standard exceptions thrown on zpp failures will change to
TypeError due to this.
2019-03-11 11:32:20 +01:00
Nikita Popov
86ef425177
Intl: Don't separately report "bad arguments" errors
...
zpp will be throwing for these now, don't report them in addition to
that.
2019-03-11 11:32:20 +01:00
Nikita Popov
513b76794b
Make zpp failures always throw, independent of strict_types
...
Previously zend_parse_parameters (and FastZPP) would handle invalid
arguments depending on strict_types: With strict_types=1, a TypeError
is thrown, with strict_types=0 a warning is thrown and (usually) NULL
is returned. Additionally, some functions (constructors always and
other methods sometimes) opt-it to throwing regardless of strict_types.
This commit changes zpp to always generate a TypeError exception in
PHP 8.
2019-03-11 11:32:20 +01:00
Dmitry Stogov
87f8b1b709
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77706 (Improve error messages in FFI for incompatible arguments)
2019-03-11 13:28:04 +03:00
Nikita Popov
d40889e408
Merge branch 'PHP-7.4'
2019-03-11 10:19:50 +01:00
Joe Watkins
bf21727ea0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
drop unused parameter from zend_startup
2019-03-11 10:10:45 +01:00
Nikita Popov
bbdc5d1da6
Merge branch 'PHP-7.4'
2019-03-11 10:01:16 +01:00
Stanislav Malyshev
48d636a5e7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
This option doesn't exist for a long time.
2019-03-11 01:14:29 -07:00
Gabriel Caruso
726919e4b5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use EXPECT when possible
Fix tests filenames
2019-03-11 00:07:32 -03:00
Peter Kokot
f4a12d198b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add meaningful error message for ext/zip
2019-03-11 00:16:36 +01:00
Jakub Zelenka
dd50dba2db
Merge branch 'PHP-7.4'
2019-03-10 16:37:39 +00:00
Anatol Belski
4c489a9a2e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bc break in Windows readlink
2019-03-10 15:49:56 +01:00
Anatol Belski
bcf6d9bd00
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't use Opcache with the master test process
2019-03-10 13:58:04 +01:00
Anatol Belski
abd60b0523
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update libmagic.patch [skip ci]
2019-03-08 21:56:07 +01:00
Anatol Belski
53eeeb5226
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in libmagic version
2019-03-08 21:45:45 +01:00
Anatol Belski
c39f5ef9f4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77576 pull the libmagic implementation of gmtime_r
2019-03-08 20:48:52 +01:00
Anatol Belski
ec0cc64d67
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync with behavior change in OpenSSL 1.1.1b
fix news
bump versions after release
2019-03-08 15:57:29 +01:00
Nikita Popov
ccc75ab353
Merge branch 'PHP-7.4'
2019-03-08 13:47:23 +01:00
Kalle Sommer Nielsen
8dee4cbfb2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Give Peter credit for his work on the Unix build system
2019-03-07 23:27:42 +02:00
Peter Kokot
80bebdd0e1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Clean *nix build system
2019-03-07 21:00:36 +01:00
Peter Kokot
d0fd9fe977
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add AS_HELP_STRING to *nix build configure options
2019-03-07 20:38:04 +01:00
Nikita Popov
a2343d1a40
Merge branch 'PHP-7.4'
2019-03-07 17:10:58 +01:00
Nikita Popov
19e4abd7ec
Merge branch 'PHP-7.4'
2019-03-07 15:55:13 +01:00
Dmitry Stogov
85610279b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ws
2019-03-07 14:00:17 +03:00
Dmitry Stogov
24378d1809
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77345 (Stack Overflow caused by circular reference in garbage collection)
Add support for MemorySanitizer
2019-03-07 13:58:42 +03:00
Christoph M. Becker
e8d313f36f
Fix order
...
Mirrors will certainly not update before we actually push the changes
to the repository.
2019-03-07 10:18:41 +01:00
Stanislav Malyshev
7803cb32af
Oops, forgot error parameter
2019-03-06 22:44:16 -08:00
Stanislav Malyshev
0ef6c62685
Fix broken memcmp
...
We can't really do memcmp("_call", "__callStatic", sizeof("__callStatic") -1),
neither should we memcmp constants at all.
2019-03-06 22:22:58 -08:00
Stanislav Malyshev
749704cda3
Add support for MemorySanitizer
2019-03-06 17:07:28 -08:00
Peter Kokot
1d0072857b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor README.md file
2019-03-07 01:58:41 +01:00
Peter Kokot
5f01bba931
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update editorconfig
2019-03-07 01:06:04 +01:00
Peter Kokot
2968a1d7f2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove legacy AC_CHECK_TYPE calls for uint and ulong
2019-03-06 22:50:46 +01:00
Nikita Popov
17fb7241e4
Merge branch 'PHP-7.4'
2019-03-06 13:45:13 +01:00
rjhdby
1be120f681
Cleanup some checks in zend_compile.c
2019-03-06 10:42:02 +01:00
Stanislav Malyshev
e19230c417
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix shifting signed values too far
2019-03-06 00:50:33 -08:00
Stanislav Malyshev
f90a1a472a
Fix shifting signed values too far
...
Signed shift of 31 for int and 63 for long is flagged as undefined
behavior by UBSan (-fsanitize=undefined) and seems to be indeed so
according to the standard.
The patch converts such cases to use unsigned.
2019-03-05 21:41:22 -08:00
Stanislav Malyshev
433fc322fc
Update maintainership years
2019-03-05 16:03:15 -08:00
Christoph M. Becker
76d60a9040
Prolong my extension maintainership
2019-03-06 01:00:42 +01:00
Christoph M. Becker
bc7a871982
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77700 : Writing truecolor images as GIF ignores interlace flag
2019-03-06 00:38:40 +01:00
Nikita Popov
824efb726c
Merge branch 'PHP-7.4'
2019-03-05 17:10:26 +01:00
Gabriel Caruso
a54fb4bc7a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unnecessary check for always available extension
2019-03-05 12:55:07 -03:00
Nikita Popov
6395e7e37c
Merge branch 'PHP-7.4'
2019-03-05 14:10:05 +01:00
Nikita Popov
80324281c9
Merge branch 'PHP-7.4'
2019-03-05 11:43:23 +01:00
Nikita Popov
a32b89f029
Merge branch 'PHP-7.4'
2019-03-05 11:03:09 +01:00
Nikita Popov
ae59537d84
Merge branch 'PHP-7.4'
2019-03-05 10:24:38 +01:00
Remi Collet
0a6f85dbb3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add NEWS entry
2019-03-05 07:33:21 +01:00
Dmitry Stogov
95aa6bafa4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed support for callbacks with "void" return type
2019-03-05 01:04:33 +03:00
Christoph M. Becker
480130e196
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-03-04 19:51:39 +01:00
Stanislav Malyshev
7c4b59f70e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77630 - safer rename() procedure
2019-03-04 09:20:21 -08:00
Peter Kokot
df5739513f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace --with-gd by --enable-gd for Travis
2019-03-04 14:48:56 +01:00
Anatol Belski
4a7a79b37a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix test portability
2019-03-04 14:30:55 +01:00
Christoph M. Becker
1deac39a69
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
2019-03-04 13:48:04 +01:00
Nikita Popov
5db64d695a
Merge branch 'PHP-7.4'
2019-03-04 13:16:33 +01:00
Peter Kokot
e624c596a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move Makefile.global and Makefile.gcov to build directory
2019-03-04 12:32:39 +01:00
Nikita Popov
b90730c762
Merge branch 'PHP-7.4'
2019-03-04 12:24:09 +01:00
Peter Kokot
f3fad10d33
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace PHP_TM_GMTOFF with AC_CHECK_MEMBERS
2019-03-04 12:13:22 +01:00
Peter Kokot
3f30706966
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove mkinstalldirs, install-sh and missing
2019-03-04 12:11:01 +01:00
Remi Collet
ddd5446a5b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add NEWS entries
2019-03-04 11:09:41 +01:00
Nikita Popov
6be0511560
Merge branch 'PHP-7.4'
2019-03-04 10:54:38 +01:00
Nikita Popov
7a19be3ad0
Merge branch 'PHP-7.4'
2019-03-04 10:37:10 +01:00
Stanislav Malyshev
d2a8904146
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77586 - phar_tar_writeheaders_int() buffer overflow
Update NEWS
Fix test error message
Fix bug #77563 - Uninitialized read in exif_process_IFD_in_MAKERNOTE
Fix bug #77540 - Invalid Read on exif_process_SOFn
Fix integer overflows on 32-bits
Fix #77431 SplFileInfo::__construct() accepts NUL bytes
Fix bug #77396 - Null Pointer Dereference in phar_create_or_parse_filename
2019-03-03 23:34:00 -08:00
Stanislav Malyshev
df98747cb3
Fix test error message
2019-03-03 23:34:00 -08:00
Stanislav Malyshev
b82437eedd
Fix bug #77563 - Uninitialized read in exif_process_IFD_in_MAKERNOTE
...
Also fix for bug #77659
2019-03-03 23:34:00 -08:00
Stanislav Malyshev
30d2b94a2e
Fix bug #77540 - Invalid Read on exif_process_SOFn
2019-03-03 23:34:00 -08:00
Stanislav Malyshev
46e79c9351
Fix integer overflows on 32-bits
2019-03-03 23:34:00 -08:00
Christoph M. Becker
ae1fad5bb7
Fix #77431 SplFileInfo::__construct() accepts NUL bytes
...
`SplFileInfo::__construct()` has to expect a path instead of a string,
analogous to `SplFileObject::__construct()`.
2019-03-03 23:34:00 -08:00
Stanislav Malyshev
ad4f312d2f
Fix bug #77396 - Null Pointer Dereference in phar_create_or_parse_filename
2019-03-03 23:34:00 -08:00
Peter Kokot
9762cd36b0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Remove oniguruma and libzip leftovers
2019-03-04 01:29:31 +01:00
Peter Kokot
22259ab202
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove outdated hack for AIX 4
2019-03-03 14:51:44 +01:00
Peter Kokot
b68c6db7ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove AC_PROG_CC_C_O
2019-03-03 14:49:10 +01:00
Anatol Belski
d183dde7f1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Heedlessly enable thread LS cache for ext/hash.
2019-03-02 21:33:02 +01:00
Peter Kokot
759e07d228
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix shared module generation on AIX bug #77676
2019-03-02 18:52:44 +01:00
Peter Kokot
64f71c6f2f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove LIBZEND_CHECK_INT_TYPE and PHP_CHECK_TYPES
2019-03-02 13:42:55 +01:00
Peter Kokot
4bf31aa30c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS
Fix #77609 : Tests from mailparse extension fails
2019-03-01 22:45:49 +01:00
Peter Kokot
ac6b9b0b7f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove obsolescent AC_HEADER_STDC and memcpy check
2019-03-01 19:24:06 +01:00
Nikita Popov
472f577679
Merge branch 'PHP-7.4'
...
[ci skip]
2019-03-01 16:14:20 +01:00
Nikita Popov
57561bd129
Merge branch 'PHP-7.4'
2019-03-01 15:35:18 +01:00
Nikita Popov
5fb93bad71
Merge branch 'PHP-7.4'
2019-03-01 14:56:36 +01:00
Nikita Popov
ac2bce9337
Merge branch 'PHP-7.4'
2019-03-01 14:52:09 +01:00
Nikita Popov
388ad58f57
Merge branch 'PHP-7.4'
2019-03-01 14:35:41 +01:00
Dmitry Stogov
66ec79ee63
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Unused parameter
2019-03-01 14:34:58 +03:00
Dmitry Stogov
20e8b01437
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Keep original debug info
2019-03-01 14:12:16 +03:00
Dmitry Stogov
3a119912ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Enable Posix Shared Memory on Linux
2019-03-01 12:16:30 +03:00
Nikita Popov
7f262edaf3
Convert extract() prefix to string zpp arg
2019-03-01 10:11:28 +01:00
Peter Kokot
615ec3998e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Test for function posix_getpwnam() basic functionality
2019-03-01 02:02:32 +01:00
Kalle Sommer Nielsen
5e8ed0a0f5
NEWS
2019-03-01 01:41:19 +02:00
Kalle Sommer Nielsen
fddc751024
Removed pdo_odbc.db2_instance_name
2019-03-01 01:24:53 +02:00
Peter Kokot
e7f766742b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix file permissions
2019-02-28 22:08:42 +01:00
Peter Kokot
f1b8c30174
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove PHP_DECLARED_TIMEZONE and HAVE_DECLARED_TIMEZONE
2019-02-28 21:18:06 +01:00
Nikita Popov
6130e56356
Merge branch 'PHP-7.4'
2019-02-28 17:24:13 +01:00
Nikita Popov
25859315b1
Merge branch 'PHP-7.4'
2019-02-28 16:43:24 +01:00
Nikita Popov
13b94dbb60
Merge branch 'PHP-7.4'
2019-02-28 16:15:13 +01:00
Nikita Popov
c5d9a44798
Merge branch 'PHP-7.4'
2019-02-28 15:46:58 +01:00
Derick Rethans
29f15a1333
Merge branch 'PHP-7.4'
2019-02-28 13:52:46 +00:00
Anatol Belski
0c1470f9b7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync with 7be0e06b48
2019-02-28 14:04:29 +01:00
Christoph M. Becker
ebefb95fda
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove dead code
2019-02-28 13:18:49 +01:00
Nikita Popov
ca8e2abb8e
Merge branch 'PHP-7.4'
2019-02-28 12:56:00 +01:00
Anatol Belski
9abb47155f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync with behavior change in OpenSSL 1.1.1b
2019-02-28 12:53:31 +01:00
Nikita Popov
4be8208ef7
Use zpp string argument in imagecreatefromstring()
...
Instead of accepting a zval and casting it.
2019-02-28 12:07:34 +01:00
Nikita Popov
23d8d93aad
Merge branch 'PHP-7.4'
2019-02-28 10:58:19 +01:00
Nikita Popov
f198ae1558
Merge branch 'PHP-7.4'
2019-02-28 09:59:19 +01:00
Bob Weinand
4ad3d23744
Merge branch 'PHP-7.4'
2019-02-28 09:11:50 +01:00
Peter Kokot
0517d203b3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused package2.xml file
Remove not needed PHP_PDO_PEAR_CHECK m4 macro
2019-02-28 01:09:30 +01:00
Peter Kokot
1433e176be
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove ZEND_FP_EXCEPT macro and HAVE_FP_EXCEPT
2019-02-27 22:54:23 +01:00
Peter Kokot
8035e84881
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused PHP_AC_BROKEN_SNPRINTF m4 macro
2019-02-27 21:20:49 +01:00
Peter Kokot
8df185f417
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove deprecated PHP_EXTENSION m4 macro
2019-02-27 20:13:25 +01:00
Bob Weinand
76e3828978
Merge branch 'PHP-7.4'
2019-02-27 18:47:03 +01:00
Bob Weinand
186431e5e1
Merge branch 'PHP-7.4'
2019-02-27 13:02:32 +01:00
Joe Watkins
0e391d14bf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77673 ReflectionClass::getDefaultProperties returns spooky array
2019-02-27 09:18:20 +01:00
Nikita Popov
701c4170ad
Merge branch 'PHP-7.4'
2019-02-26 17:27:16 +01:00
Nikita Popov
3133110fbf
Merge branch 'PHP-7.4'
2019-02-25 17:45:35 +01:00
Nikita Popov
d5ff57477b
Merge branch 'PHP-7.4'
2019-02-25 13:03:26 +01:00
Nikita Popov
9489a7bfdb
Merge branch 'PHP-7.4'
2019-02-25 09:36:20 +01:00
Xinchen Hui
761b0639bb
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed compiler warning
2019-02-25 15:04:13 +08:00
Xinchen Hui
249f7df221
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Update NEWS
Fixed bug #77660 (Segmentation fault on break 2147483648)
2019-02-25 15:00:44 +08:00
Xinchen Hui
c599c18e6f
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Update NEWS
Fixed bug #77664 (Segmentation fault when using undefined constant in custom wrapper)
2019-02-25 14:42:56 +08:00
Jakub Zelenka
7a564fc0cb
Merge branch 'PHP-7.4'
2019-02-24 13:15:57 +00:00
Jakub Zelenka
42df0d26ef
Merge branch 'PHP-7.4'
2019-02-24 13:13:10 +00:00
Peter Kokot
20addf88e4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused PHP_AC_BROKEN_SPRINTF and AC_ZEND_BROKEN_SPRINTF
2019-02-23 22:29:16 +01:00
Peter Kokot
d2a6096f25
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace Hebrew characters with escape sequences
2019-02-23 22:18:19 +01:00
Nikita Popov
4d18ab73ec
Merge branch 'PHP-7.4'
2019-02-22 17:40:08 +01:00
Nikita Popov
276de41014
Merge branch 'PHP-7.4'
2019-02-22 15:44:13 +01:00
Nikita Popov
3cfe80dfce
Merge branch 'PHP-7.4'
2019-02-22 13:42:22 +01:00
Nikita Popov
7cf177cd42
Merge branch 'PHP-7.4'
2019-02-22 12:45:39 +01:00
Nikita Popov
b8866a5a0e
Merge branch 'PHP-7.4'
2019-02-22 12:00:49 +01:00
Nikita Popov
93ee216966
Merge branch 'PHP-7.4'
2019-02-22 11:26:26 +01:00
Christoph M. Becker
a9b90fe73c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77648 : BOM in sapi/apache2handler/php_functions.c
2019-02-22 11:11:59 +01:00
Nikita Popov
3b5e566e62
Merge branch 'PHP-7.4'
2019-02-22 10:53:28 +01:00
Christoph M. Becker
60eee27757
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid potentially superfluous string reallocation
2019-02-22 10:35:46 +01:00
Nikita Popov
287f5ccdaf
Merge branch 'PHP-7.4'
2019-02-22 10:15:02 +01:00
Christoph M. Becker
a848ed30e9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly clean up test case
2019-02-22 09:43:49 +01:00
Dmitry Stogov
258c7fb56e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use different method to suppress "false" memory leak reports
2019-02-22 10:12:49 +03:00
Joe Watkins
97e09049e2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
While the compiler does not have the FBC set for zend_get_call_op, optimizer does, and so incorrectly results in ignoring these flags.
2019-02-21 23:55:54 +01:00
Joe Watkins
75ef3eac21
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Revert "zend_get_call_op ignoring compiler flags zend_get_call_op will ignore ZEND_COMPILE_IGNORE_USER_FUNCTIONS and ZEND_COMPILE_IGNORE_USER_FUNCTIONS, breaking the intention of these flags"
2019-02-21 22:41:13 +01:00
Peter Kokot
46d5571879
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused PDO_MYSQL_LIB_CHK m4 macro
2019-02-21 21:44:16 +01:00
Christoph M. Becker
4155f53dbe
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo in error message
2019-02-21 18:26:00 +01:00
Frank Denis
099c9ab422
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77646
2019-02-21 16:47:18 +01:00
Frank Denis
1b4b952456
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug #77646
2019-02-21 16:21:16 +01:00
Frank Denis
ad3dac378e
Fix bug #77646
2019-02-21 16:10:27 +01:00
Nikita Popov
1cae9f295e
Merge branch 'PHP-7.4'
2019-02-21 16:07:03 +01:00
Nikita Popov
82d6759982
Merge branch 'PHP-7.4'
2019-02-21 13:46:42 +01:00
Nikita Popov
4dac02813d
Merge branch 'PHP-7.4'
2019-02-21 12:23:08 +01:00
Nikita Popov
3ea3054f75
Merge branch 'PHP-7.4'
2019-02-21 12:06:58 +01:00
Joe Watkins
7a9d638302
Merge branch 'PHP-7.4'
...
* PHP-7.4:
zend_get_call_op ignoring compiler flags zend_get_call_op will ignore ZEND_COMPILE_IGNORE_USER_FUNCTIONS and ZEND_COMPILE_IGNORE_USER_FUNCTIONS, breaking the intention of these flags
2019-02-21 11:22:43 +01:00
Nikita Popov
790a61b4f4
Merge branch 'PHP-7.4'
2019-02-21 11:08:37 +01:00
Nikita Popov
d3b7a8bef7
Merge branch 'PHP-7.4'
2019-02-21 11:00:52 +01:00
Nikita Popov
4c2a86c47a
Merge branch 'PHP-7.4'
2019-02-21 10:36:49 +01:00
Dmitry Stogov
653e47da16
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reinstall pcntl tick handler on each request (it cleared after the first request).
2019-02-20 22:38:22 +03:00
Peter Kokot
ba84a61d06
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update changelog
Remove unused PHP_SYS_LFS m4 macro
Remove unused PHP_SOLARIS_PIC_WEIRDNESS m4 macro
Remove unused PHP_TARGET_RDYNAMIC m4 macro
Remove unused AM_SET_LIBTOOL_VARIABLE m4 macro
2019-02-20 20:07:31 +01:00
Christoph M. Becker
44ebbf0de1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fix #77642 : typo "incompatibe" in Zend/zend_compile.c [ci skip]
2019-02-20 19:41:25 +01:00
divinity76
876369bea2
fix #77642 : typo "incompatibe" in Zend/zend_compile.c [ci skip]
...
the word "incompatible" was accidentally written as "incompatibe"
guilty commit: 7e597f48e9
2019-02-20 19:41:09 +01:00
Dmitry Stogov
21c59a6134
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Supress memory leak reports
2019-02-20 18:19:36 +03:00
Nikita Popov
f432cb5883
Merge branch 'PHP-7.4'
2019-02-20 16:02:52 +01:00
Dmitry Stogov
5ce6d2ff63
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remember __COMPILER_HALT_OFFSET__(s) in preloaded scripts
2019-02-20 17:10:33 +03:00
Nikita Popov
0a66d82b52
Merge branch 'PHP-7.4'
2019-02-20 12:46:46 +01:00
Nikita Popov
0e34217925
Merge branch 'PHP-7.4'
2019-02-20 12:19:51 +01:00
Nikita Popov
dae056420d
Merge branch 'PHP-7.4'
2019-02-20 12:12:27 +01:00
Nikita Popov
c8e2b333cb
Merge branch 'PHP-7.4'
2019-02-20 11:22:31 +01:00
Dmitry Stogov
db9323c56a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Disable preloading for sensetive opcache tests
2019-02-20 11:47:39 +03:00
Dmitry Stogov
4fe2cff5a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prevent error reporting during preloading request start-up
2019-02-20 11:36:24 +03:00
Nikita Popov
9ac998e427
Merge branch 'PHP-7.4'
2019-02-20 09:31:44 +01:00
Dmitry Stogov
d85402a753
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added reference to parser generator
2019-02-20 10:27:27 +03:00
Dmitry Stogov
a7ab1f9fba
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typo
Simplify even more - use PHP_VERSION directly
Bump FFI extension version to PHP_VERSION
2019-02-20 09:33:17 +03:00
Christopher Jones
47e68921dc
Merge branch 'PHP-7.4'
2019-02-20 11:14:06 +11:00
Dmitry Stogov
35b502c64f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Skip tests f oci8 extension is not loaded
2019-02-20 02:35:44 +03:00
Dmitry Stogov
89a7d96761
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reorder conditions
2019-02-20 02:33:38 +03:00
Dmitry Stogov
832d683334
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use ZEND_ACC_REUSE_GET_ITERATOR flag instead of run-time class modification
2019-02-20 02:33:11 +03:00
Dmitry Stogov
05e7c8c9fc
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't preload tests without --FILE-- section
2019-02-20 00:07:32 +03:00
Dmitry Stogov
ba25306e98
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Order of classes may matter
2019-02-19 23:51:08 +03:00
Dmitry Stogov
b1a9d10608
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't restrict preloading with "open_basedir" directive.
2019-02-19 23:18:35 +03:00
Peter Kokot
93752ee696
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Rename non-existing site phpdbg.com to localhost
2019-02-19 20:22:14 +01:00
Joe Watkins
b7a442ed7b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
begin handlers are currently invoked without access to the arguments being sent, this moves the opcode after SEND
2019-02-19 18:21:49 +01:00
Dmitry Stogov
084e810c83
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better new-line handling
2019-02-19 19:23:03 +03:00
Dmitry Stogov
cd6c5e3703
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed memory leak
2019-02-19 19:21:59 +03:00
Nikita Popov
8f473ccf50
Merge branch 'PHP-7.4'
2019-02-19 17:12:33 +01:00
Christoph M. Becker
f04cf7a587
Remove ability to import case-insensitive constants from typelibs
...
According to commit 23a5be3[1], we remove the ability to import case-
insensitive constants, but do not remove the now superfluous parameter
and ini setting.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=23a5be3696f4d92e1b18fd59f3ac63c6a15ea12a >
2019-02-19 16:54:52 +01:00
Dmitry Stogov
65c14c6203
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Check for USER_FUNCTION
2019-02-19 18:40:05 +03:00
Dmitry Stogov
b06067e39c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Accurate handling of not preloaded classes
2019-02-19 18:10:10 +03:00
Nikita Popov
3093a2809b
Merge branch 'PHP-7.4'
2019-02-19 15:55:40 +01:00
Dmitry Stogov
8b7115df4e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Better line handling
2019-02-19 17:17:12 +03:00
Dmitry Stogov
39ce15703c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Filter preloading warning messages
2019-02-19 17:09:30 +03:00
Dmitry Stogov
04af0020e8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't try to eliminate requre/include with stream wrappers
2019-02-19 16:55:37 +03:00
Dmitry Stogov
bf77e635ac
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Stop PHP in case of fatal error during preloading
2019-02-19 16:47:24 +03:00
Dmitry Stogov
d42b3cad06
Merge branch 'PHP-7.4'
...
* PHP-7.4:
ws
2019-02-19 15:51:37 +03:00
Christoph M. Becker
2bccd936ad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prepare main branch for PHP 7.3.4
2019-02-19 13:10:34 +01:00
Remi Collet
7a7ac36421
Merge branch 'PHP-7.4'
...
* PHP-7.4:
bump version to 7.2.17-dev
2019-02-19 12:47:19 +01:00
Nikita Popov
f37c70c7fb
Merge branch 'PHP-7.4'
2019-02-19 10:12:01 +01:00
Nikita Popov
1016e3a927
Merge branch 'PHP-7.4'
2019-02-19 10:07:47 +01:00
Nikita Popov
293313cc48
Merge branch 'PHP-7.4'
2019-02-19 10:03:29 +01:00
Remi Collet
fec954de7b
fix build with external libpcre2
2019-02-19 09:55:08 +01:00
Tyson Andre
c7d339a9d0
Indicate that tidy's object methods expect 0 args
...
This prevents subclasses from being written with incompatible
implementations, e.g. expecting more required args.
2019-02-19 09:41:47 +01:00
Remi Collet
b9cd76230d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
use pkg-config for libedit
2019-02-19 09:10:16 +01:00
Remi Collet
b4ee6ade99
Merge branch 'PHP-7.4'
...
* PHP-7.4:
add readline_list_history with libedit >= 3.1 and mingweditline
2019-02-19 08:52:18 +01:00
Peter Kokot
80bcb89202
Merge branch 'PHP-7.4'
...
* PHP-7.4:
gd imageloadfont, verify error while reading header
2019-02-19 03:26:33 +01:00
Peter Kokot
9a0345e0dd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
added basic test for UConverter::setSourceEncoding()
2019-02-19 03:18:54 +01:00
Peter Kokot
4e00d55bd6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
added basic test for UConverter::getDestinationEncoding()
2019-02-19 03:15:42 +01:00
Peter Kokot
46a1d23b23
Merge branch 'PHP-7.4'
...
* PHP-7.4:
added basic test for UConverter::getSourceEncoding()
2019-02-19 03:10:42 +01:00
Pedro Magalhães
ac68789f9d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
UPGRADING entry for pcntl_unshare [skip ci]
2019-02-18 20:00:31 +00:00
Andrea Faulds
b63922cbfa
Merge branch 'PHP-7.4'
2019-02-18 20:32:39 +01:00
Pedro Magalhães
83fb60a672
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement pcntl_unshare
2019-02-18 19:26:50 +00:00
Peter Kokot
6bd04de4f9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync header and footer with the rest of the files
2019-02-18 18:16:58 +01:00
Peter Kokot
18295b396f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix typos in code comments in Zend/ [skip ci]
2019-02-18 17:56:38 +01:00
Nikita Popov
879cd04913
Merge branch 'PHP-7.4'
2019-02-18 17:51:41 +01:00
Dmitry Stogov
9baa3a95b9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77632 (FFI Segfaults When Called With Variadics)
2019-02-18 18:12:10 +03:00
Dmitry Stogov
96a9990a81
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use "quick" macro variants for known argument numbers
2019-02-18 17:53:43 +03:00
Nikita Popov
29aa080f0d
Merge branch 'PHP-7.4'
2019-02-18 15:31:15 +01:00
Nikita Popov
a9d457916e
Merge branch 'PHP-7.4'
2019-02-18 14:04:36 +01:00
Nikita Popov
e517cffd92
Merge branch 'PHP-7.4'
2019-02-18 13:58:40 +01:00
Nikita Popov
1bf40df181
Merge branch 'PHP-7.4'
2019-02-18 12:08:48 +01:00
Dmitry Stogov
820a9952cb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed use-after-free during preloading, when q class with unresolved constant uses a preloaded trait.
2019-02-18 13:48:06 +03:00
Nikita Popov
8ee78441f8
Merge branch 'PHP-7.4'
2019-02-18 11:17:45 +01:00
Peter Kokot
804f0f7de6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Test the warning for giving full path to dl()
2019-02-17 20:23:48 +01:00
Peter Kokot
6ce0f97287
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Tests for XMLWriter write cdata and raw
2019-02-17 19:44:36 +01:00
Peter Kokot
9dc8cd5cc2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
SplDoublyLinkedList Iterating a DLL by reference shouldn't be permitted
2019-02-17 19:36:13 +01:00
Peter Kokot
bb7e88e9f1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Range of new tests for xmlreader functionality and exceptions/errors
2019-02-17 19:24:02 +01:00
Peter Kokot
46a0044518
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove unused --copy option from the makedist
2019-02-16 21:49:58 +01:00
Peter Kokot
bd6b879e92
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Move some scripts from root directory to scripts/dev/
2019-02-16 16:59:31 +01:00
Andrea Faulds
c5d5c9355a
Merge branch 'PHP-7.4'
2019-02-16 01:54:46 +01:00
Andrea Faulds
11bfa11f77
Merge branch 'PHP-7.4'
2019-02-16 01:06:42 +01:00
Christoph M. Becker
93886f44a8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77626 : Persistence confusion in php_com_import_typelib()
2019-02-15 18:57:59 +01:00
Nikita Popov
e982e91590
Merge branch 'PHP-7.4'
2019-02-15 17:53:27 +01:00
Nikita Popov
9df07d6168
Merge branch 'PHP-7.4'
2019-02-15 17:37:47 +01:00
Nikita Popov
ff2c27b326
Merge branch 'PHP-7.4'
2019-02-15 16:37:19 +01:00
Christoph M. Becker
5740336dea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Deprecate marking typelibs to load constants case-insensitively
2019-02-15 16:25:15 +01:00
Dmitry Stogov
1b281f801e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid useless code duplication, because of unused specialization
2019-02-15 17:52:59 +03:00
Christoph M. Becker
47bcc02823
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Unify clone method error message
2019-02-15 15:08:41 +01:00
Dmitry Stogov
89c94161ea
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reduce slow code size
2019-02-15 17:03:49 +03:00
Nikita Popov
f39e821c7e
Merge branch 'PHP-7.4'
2019-02-15 14:43:55 +01:00
Christoph M. Becker
27d9800b1d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Deprecate case-insensitive constants via typelib import
2019-02-15 13:08:31 +01:00
Nikita Popov
68ed34005c
Merge branch 'PHP-7.4'
2019-02-15 13:04:24 +01:00
Nikita Popov
029a8cd644
Merge branch 'PHP-7.4'
2019-02-15 12:41:52 +01:00
Nikita Popov
903821b1c7
Merge branch 'PHP-7.4'
2019-02-15 11:28:14 +01:00
Nikita Popov
c3b63706a6
Merge branch 'PHP-7.4'
2019-02-15 10:28:13 +01:00
Christoph M. Becker
920438d624
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix #77621 : Already defined constants are not properly reported
2019-02-15 00:39:40 +01:00
Peter Kokot
99c977d172
Merge branch 'PHP-7.4'
...
* PHP-7.4:
gd imageloadfont test while reading header
2019-02-14 22:30:03 +01:00
Peter Kokot
35c1de3fd4
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test to function posix_getlogin()
2019-02-14 20:50:12 +01:00
Peter Kokot
7dc8625376
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Create posix_getpwnam_basic_01.phpt
2019-02-14 20:37:47 +01:00
Peter Kokot
cb74d28356
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add basic test for posix getgrnam
2019-02-14 20:28:35 +01:00
Peter Kokot
d92535d81f
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Small change in the test to pass
2019-02-14 20:12:15 +01:00
Peter Kokot
97f4313f68
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added basic stream_filter_register test
2019-02-14 20:04:16 +01:00
Peter Kokot
6ec1614f47
Merge branch 'PHP-7.4'
...
* PHP-7.4:
use local resources instead remote
2019-02-14 19:52:31 +01:00
Nikita Popov
2bde15247b
Merge branch 'PHP-7.4'
...
[ci skip]
2019-02-14 17:06:56 +01:00
Fabien Villepinte
ce7552af38
Fixed bug #77619
...
Fix MultipleIterator::__construct() arginfo
2019-02-14 17:03:52 +01:00
Nikita Popov
faaf510fa4
Merge branch 'PHP-7.4'
2019-02-14 14:02:32 +01:00
Nikita Popov
f15d89a5e4
Merge branch 'PHP-7.4'
2019-02-14 13:00:11 +01:00
Nikita Popov
924142fef0
Merge branch 'PHP-7.4'
2019-02-14 12:51:39 +01:00
Nikita Popov
bd13c209ab
Merge branch 'PHP-7.4'
2019-02-14 11:50:06 +01:00
Nikita Popov
ec694a9e81
Merge branch 'PHP-7.4'
2019-02-14 11:48:06 +01:00
Dmitry Stogov
4474cf43e6
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77613 (method visibility change) (reverted ZEND_ACC_CTOR and ZEND_ACC_DTOR flags removal)
2019-02-14 13:18:45 +03:00
Nikita Popov
ad559556b9
Merge branch 'PHP-7.4'
2019-02-14 10:43:52 +01:00
Nikita Popov
ad37821e6c
Merge branch 'PHP-7.4'
2019-02-14 10:03:08 +01:00
Gabriel Caruso
14357e5bcb
Add UPGRADING entry for ad75511c8e
2019-02-14 05:15:27 -02:00
Gabriel Caruso
ad75511c8e
Missing param in arginfo_pdostatement_setfetchmode
...
PDO::setFetchMode receives up to 3 params
2019-02-14 05:13:38 -02:00
Peter Kokot
d57c56cd63
Merge branch 'PHP-7.4'
...
* PHP-7.4:
http_build_query add type cases
2019-02-13 22:00:19 +01:00
Peter Kokot
4572fef9cd
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Refactor timelib.m4
2019-02-13 19:26:55 +01:00
Nikita Popov
c53852dc0a
Merge branch 'PHP-7.4'
2019-02-13 12:25:27 +01:00
Anatol Belski
81eff22d2d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update NEWS and UPGRADING [ci skip]
2019-02-12 19:15:31 -08:00
Anatol Belski
571509f880
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Change the way timer queue timer is deleted
2019-02-12 18:38:15 -08:00
Peter Kokot
d24faba072
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test socket_setopt() basic functionality
2019-02-13 02:31:27 +01:00
Nikita Popov
47bf4cd147
Merge branch 'PHP-7.4'
2019-02-12 18:02:34 +01:00
Nikita Popov
8afa2c632b
Merge branch 'PHP-7.4'
2019-02-12 17:37:34 +01:00
Nikita Popov
e683c189f2
Merge branch 'PHP-7.4'
2019-02-12 16:43:34 +01:00
Dmitry Stogov
7a3306a265
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Use TSRM macros
2019-02-12 17:40:52 +03:00
Dmitry Stogov
e17667abd5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
More accurate handling of global registers (allow VM with single global register)
2019-02-12 17:39:55 +03:00
Nikita Popov
cc004c903b
Merge branch 'PHP-7.4'
...
[ci skip]
2019-02-12 15:09:47 +01:00
Johannes Schlüter
1dc049f41f
Merge remote-tracking branch 'origin/master'
2019-02-12 15:03:58 +01:00
Johannes Schlüter
d373d13d4a
Merge branch 'PHP-7.4'
2019-02-12 15:02:18 +01:00
Nikita Popov
bba93042b6
Merge branch 'PHP-7.4'
2019-02-12 13:58:02 +01:00
Nikita Popov
9926c9f7ce
Merge branch 'PHP-7.4'
2019-02-12 11:44:01 +01:00
Dmitry Stogov
229575bef7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
typo
2019-02-12 13:24:27 +03:00
Nikita Popov
50387cab76
Merge branch 'PHP-7.4'
2019-02-12 10:50:37 +01:00
Dmitry Stogov
c8a1db2f66
Merge branch 'master' of git.php.net:php-src
...
* 'master' of git.php.net:php-src:
Adding bunch of FreeBSD socket options flags specifics.
2019-02-12 12:29:02 +03:00
Dmitry Stogov
87bfafe8bf
Fixed resoure numbering
2019-02-12 12:28:23 +03:00
Nikita Popov
698b3fbe1f
Merge branch 'PHP-7.4'
2019-02-12 10:27:43 +01:00
Nikita Popov
d406751e49
Merge branch 'PHP-7.4'
2019-02-12 10:10:36 +01:00
Nikita Popov
8dc7d22747
Merge branch 'PHP-7.4'
2019-02-12 09:59:12 +01:00
Nikita Popov
e7177ac067
Merge branch 'PHP-7.4'
2019-02-12 09:32:52 +01:00
Nikita Popov
a44122d202
Merge branch 'PHP-7.4'
2019-02-12 09:29:28 +01:00
Dmitry Stogov
2ccf289d28
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed possible crash
2019-02-12 11:21:30 +03:00
Dmitry Stogov
12d8b0af87
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77599 (Unbuffered queries; native prepared statements memory leak)
2019-02-12 11:04:06 +03:00
Dmitry Stogov
28869a52c2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Avoid dependency on "struct flock" fields order.
2019-02-12 10:22:55 +03:00
Anatol Belski
9ee0d1ee2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Replace broken binary SDK version
2019-02-11 22:31:10 -08:00
Anatol Belski
79f8e12133
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update SDK version for AppVeyor
2019-02-11 22:14:44 -08:00
Christoph M. Becker
686c29531e
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Deprecate ext/wddx
2019-02-11 19:32:53 +01:00
Anatol Belski
190c6b4a39
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix 32-bit build
2019-02-11 10:25:08 -08:00
Darek Slusarczyk
5c23370648
Merge branch 'PHP-7.4'
2019-02-11 18:50:45 +01:00
Nikita Popov
61ef088f21
Add missing braces in UPGRADING example
...
[ci skip]
2019-02-11 17:10:36 +01:00
Nikita Popov
a302d11610
Don't silence fatal errors with @
2019-02-11 16:17:55 +01:00
Nikita Popov
b65435c986
Merge branch 'PHP-7.4'
2019-02-11 15:51:06 +01:00
Nikita Popov
5bd65be8a0
Merge branch 'PHP-7.4'
2019-02-11 15:36:47 +01:00
Nikita Popov
779b9bfe02
Merge branch 'PHP-7.4'
2019-02-11 15:00:52 +01:00
Nikita Popov
b51a99ae35
Enable C99 in autoconf
...
This is essentially a no-op, because any current compiler already
defaults to C99 or C11.
When using language features from C99 or C11, please don't forget
that header files also need to be compatible with C++.
2019-02-11 14:32:30 +01:00
Nikita Popov
5702ce630b
Merge branch 'PHP-7.4'
2019-02-11 12:32:38 +01:00
Nikita Popov
c9ab1078cc
Merge branch 'PHP-7.4'
2019-02-11 12:12:54 +01:00
Nikita Popov
babe7f355f
Merge branch 'PHP-7.4'
2019-02-11 11:34:27 +01:00
Nikita Popov
f56895f9e6
Merge branch 'PHP-7.4'
2019-02-11 11:10:58 +01:00
Nikita Popov
fdb85a828a
Return empty str from quotemeta() on empty str
2019-02-11 09:58:10 +01:00
Nikita Popov
ab48b45f6c
Improve UPGRADING note
...
[ci skip]
2019-02-11 09:54:08 +01:00
Nikita Popov
3570cbdfd3
Merge branch 'PHP-7.4'
2019-02-11 09:36:57 +01:00
Xinchen Hui
9ccde783c9
Merge branch 'PHP-7.3'
...
* PHP-7.3:
regenerate with re2c 1.0.3
2019-02-11 15:43:14 +08:00
Xinchen Hui
7045a2e19f
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fixed bug #77589 (Core dump using parse_ini_string with numeric sections)
Conflicts:
Zend/zend_ini_scanner.c
Zend/zend_ini_scanner_defs.h
2019-02-11 15:35:16 +08:00
Christopher Jones
19de2ea7ae
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Merge PDO_OCI tracing attribute PR
Merge PDO_OCI PR
PDO_OCI tracing attribute PR merge
pdo_oci: Add client identifier and module attrs
pdo_oci: Register new attr constants and add tests
pdo_oci: Add PDO_OCI_ATTR_ACTION and CLIENT_INFO
2019-02-11 17:06:07 +11:00
Peter Kokot
c9c79764c3
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test for non existent file for iptcembed
2019-02-10 22:43:58 +01:00
Peter Kokot
143cc5affb
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix failing tests for readline() without input
2019-02-10 22:33:19 +01:00
Peter Kokot
005801a5a5
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Expand FTP delete basic test with "unknown file" coverage
2019-02-10 20:42:27 +01:00
Peter Kokot
505dc5473c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Tests for readline() without input
2019-02-10 20:31:59 +01:00
Peter Kokot
4a254178f8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test for openssl_pkcs12_export_to_file_error
2019-02-10 20:19:00 +01:00
Peter Kokot
d237606574
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Tests the 'Dynamically loaded extensions are not enabled' warning for dl()
2019-02-10 20:14:35 +01:00
Peter Kokot
5167c05ba2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Test function quotemeta() - using an empty string is given as str.
2019-02-10 20:07:33 +01:00
Peter Kokot
da70ce5409
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test case for pcntl_setpriority basic behaviour
2019-02-10 20:03:49 +01:00
Peter Kokot
f60339269a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added test for xml_parser_set_option
2019-02-10 19:53:03 +01:00
Peter Kokot
5c7f59bbf8
Merge branch 'PHP-7.4'
...
* PHP-7.4:
fnmatch error when pattern or filename too long
2019-02-10 19:39:30 +01:00
Peter Kokot
3ee42a062a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update changelog
2019-02-10 19:18:12 +01:00
Gabriel Caruso
35db1ccdd1
Fix variadic arginfos for Reflection functions
...
Fix arginfos of required arguments for some Reflection methods
2019-02-10 14:29:08 -02:00
Peter Kokot
35980191d2
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Delete duplicate test file
2019-02-10 12:41:42 +01:00
Peter Kokot
b6b5d50e63
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix failing tests
2019-02-10 01:27:50 +01:00
Peter Kokot
a5fec99855
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix failing readline() basic test
2019-02-09 23:40:53 +01:00
Peter Kokot
174542a29b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Tests for __set_state magic method
2019-02-09 17:20:07 +01:00
Peter Kokot
3d9ee4d690
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for date_time_immutable invalid arguments
2019-02-09 17:05:54 +01:00
Peter Kokot
cf4eb08598
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added basic test for ZipArchive::unchangeName()
2019-02-09 16:34:43 +01:00
Peter Kokot
ddbba84918
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Added basic test for ZipArchive::unchangeIndex()
2019-02-09 16:28:36 +01:00
Anatol Belski
3b62f92100
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix TS build, ref #77377
2019-02-08 18:46:48 -08:00
Anatol Belski
08aaff35d1
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Implement FR #77377 handle CTRL+C in Windows
2019-02-08 18:11:34 -08:00
Peter Kokot
a3f40c0094
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for null return on version_compare with bad operator
2019-02-09 02:53:46 +01:00
Peter Kokot
bc56250d2a
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Test to verify that closures can't be instantiated
2019-02-09 02:47:02 +01:00
Peter Kokot
feee2c0012
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Add test for pcntl_getpriority() basic behaviour
2019-02-09 02:41:46 +01:00
Peter Kokot
53ff3b262b
Merge branch 'PHP-7.4'
...
* PHP-7.4:
readline - add basic test
2019-02-09 01:23:03 +01:00
Peter Kokot
981fac7827
Merge branch 'PHP-7.4'
...
* PHP-7.4:
updated typo in test
2019-02-09 00:08:05 +01:00
Peter Kokot
17baa87fad
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Update and fix remaining year ranges (2019)
2019-02-08 23:15:49 +01:00
Pedro Magalhães
6732028273
Implement the negative_array_index RFC
2019-02-08 16:08:32 +00:00
Nikita Popov
c7bcd3afa4
Merge branch 'PHP-7.4'
2019-02-08 13:00:06 +01:00
Nikita Popov
4f0abd8465
Merge branch 'PHP-7.4'
2019-02-08 12:44:19 +01:00
Nikita Popov
ee18bdb92c
Merge branch 'PHP-7.4'
2019-02-08 12:31:25 +01:00
Nikita Popov
706ba151d2
Add ZEND_TRY_ASSIGN_BOOL API
2019-02-08 11:06:50 +01:00
Nikita Popov
8578c54e14
Merge branch 'PHP-7.4'
2019-02-08 10:50:07 +01:00
Levi Morrison
780bdcd80b
Fix SplHeap::compare arginfo and tests
2019-02-08 10:14:38 +01:00
Nikita Popov
c4bed605e7
Merge branch 'PHP-7.4'
2019-02-08 10:10:15 +01:00
Anatol Belski
cb95175d6c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Sync test with changes in libcurl 7.64.0
Sync test for libcurl 7.64.0
2019-02-07 22:31:03 -08:00
Peter Kokot
76c25ccdc9
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Move OPcache configure option changes
2019-02-08 00:31:37 +01:00
Dmitry Stogov
bb3a3c1570
Simplify checks
2019-02-07 22:08:51 +03:00
Dmitry Stogov
f45e0ce928
Remove ZEND_OVERLOADED_FUNCTION and corresponding call_method object handler
2019-02-07 21:05:46 +03:00
Peter Kokot
2306c855ab
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Update changelog
2019-02-07 18:13:59 +01:00
Nikita Popov
53d8fa5af7
Fix signedness in comparison in array_slice
2019-02-07 15:38:43 +01:00
Nikita Popov
689521af8e
Remove two more zpp variation tests
...
These are normal zpp arguments in PHP 8. Also not adjusted for
32-bit systems...
2019-02-07 15:38:43 +01:00
Derick Rethans
f1e7dd3966
Merge branch 'master' of git.php.net:php-src
2019-02-07 11:14:25 +00:00
Derick Rethans
acd11efe4d
Merge branch 'PHP-7.4'
2019-02-07 11:13:13 +00:00
Joe Watkins
51b9d72a36
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove --disable-opcache-filecache option
2019-02-07 12:07:44 +01:00
Nikita Popov
8440bf3cc1
Merge branch 'PHP-7.4'
2019-02-07 11:01:49 +01:00
Nikita Popov
7480f4ebae
Merge branch 'PHP-7.4'
2019-02-07 10:06:37 +01:00
Christoph M. Becker
81bca7f918
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix NEWS
2019-02-05 23:06:18 +01:00
Christoph M. Becker
535fefc27b
Fix typo
2019-02-05 22:58:41 +01:00
Nikita Popov
6e3600f41b
Remove major version from apache module
2019-02-05 14:57:35 +01:00
Nikita Popov
480fa42255
Remove unnecessary setting of error_reporting in intl tests
2019-02-05 14:22:20 +01:00
Nikita Popov
2f1f34952e
Remove $errcontext argument to error handlers
...
I'm removing the argument entirely here, but we might want to change
this to passing null or and empty array instead, if the impact of
dropping it entirely turns out to be too large.
This was deprecated as part of https://wiki.php.net/rfc/deprecations_php_7_2
as a doc-only deprecation.
2019-02-05 14:12:10 +01:00
Nikita Popov
790798f61e
Merge branch 'PHP-7.4'
2019-02-05 12:43:13 +01:00
Nikita Popov
d750f0a192
Merge branch 'PHP-7.4'
2019-02-05 09:41:08 +01:00
Dmitry Stogov
cdade2e35d
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove copyright years.
2019-02-05 10:33:57 +03:00
Christoph M. Becker
a1608b40bf
Fix type confusion
2019-02-04 14:40:35 +01:00
Markus Staab
9d936669e8
fixed typo in UPGRADING.INTERNALS
2019-02-04 13:22:37 +01:00
Côme Chilliet
f0ddc93f46
Removed ldap_sort and LDAP_DEPRECATED build flag
...
ldap_sort was deprecated in PHP7, it is now removed.
This allows removing the LDAP_DEPRECATED flag when building against
openldap.
2019-02-04 13:10:05 +01:00
Côme Chilliet
53ce98ca0c
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Mark ldap_control_paged_result and ldap_control_paged_result_response as deprecated
2019-02-04 12:21:18 +01:00
Dmitry Stogov
d2f196f6f7
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Reset common fields of EG(trampoline)
2019-02-04 13:58:24 +03:00
Dmitry Stogov
6c81c4b613
Added note anout object habdlers API change
2019-02-04 13:47:09 +03:00
Dmitry Stogov
db00790234
ext/com_dotnet support for new object handlers API
2019-02-04 13:20:25 +03:00
Dmitry Stogov
1a304d357c
More accurate get_properties() usage.
2019-02-04 13:20:25 +03:00
Dmitry Stogov
b7f05885e8
Reuse cache_slot
2019-02-04 13:20:25 +03:00
Dmitry Stogov
91ef4124e5
Refactor zend_object_handlers API to pass zend_object* and zend_string* insted of zval(s).
2019-02-04 13:20:25 +03:00
Nikita Popov
0476d55827
Make array_slice $length param a nullable integer
...
Instead of having custom parameter handling.
2019-02-04 10:38:42 +01:00
Peter Kokot
623911f993
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Remove local variables
2019-02-03 21:23:18 +01:00
Christoph M. Becker
5ded0e8f29
Merge branch 'PHP-7.4'
...
* PHP-7.4:
[ci skip] Add missing notes regarding gc_status()
2019-02-03 18:33:08 +01:00
Joe Watkins
4752aecdaf
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Properly check for array_replace_recursive in sccp.c
2019-02-03 08:42:22 +01:00
Nikita Popov
76f8a908bb
Try to fix serialization_miscTypes_001.phpt
2019-02-01 17:15:16 +01:00
Nikita Popov
4f187b8fbc
Make session_cache_expire() arg an integer
...
This is logically an integer, and the function also returns the old
value as an integer. The fact that the integer needs to be converted
to a string for the ini assignment is an implementation detail.
2019-02-01 16:08:31 +01:00
Nikita Popov
4a4c68d90d
Make mb_ereg(i) argument a normal string argument
...
Instead of manually handling the string conversion, use the standard
zpp mechanism.
2019-02-01 15:40:09 +01:00
Nikita Popov
06ed6b8978
Make mb_ereg_replace() pattern argument a string
2019-02-01 15:19:46 +01:00
Nikita Popov
ba5d2e6af3
Merge branch 'PHP-7.4'
2019-02-01 15:03:10 +01:00
Nikita Popov
e237591467
Merge branch 'PHP-7.4'
2019-02-01 11:42:52 +01:00
Dmitry Stogov
c4dd9776df
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #77329 (Buffer Overflow via overly long Error Messages)
2019-02-01 11:13:49 +03:00
Christoph M. Becker
a851f16b2b
Fix version.inc update notes
2019-01-31 16:12:50 +01:00
Nikita Popov
aad39879f2
Remove bareword fallback for constants
...
Access to undefined constants will now always result in an Error
exception being thrown.
This required quite a few test changes, because there were many
buggy tests that unintentionally used bareword fallback in combination
with error suppression.
2019-01-31 13:52:06 +01:00
Nikita Popov
3d39479f4d
Remove support for case-insensitive constants
...
The only remaining case-insensitive constants are null, true and
false, which are handled explicitly.
In the future we may convert them from constants to reserved keywords.
2019-01-31 13:52:06 +01:00
Dmitry Stogov
3d478e5cc3
gmp_random() was removed
2019-01-31 14:35:27 +03:00
Nikita Popov
9c5ab992ac
Merge branch 'PHP-7.4'
2019-01-31 09:40:01 +01:00
Joe Watkins
839bdf12ee
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Don't silence fatal errors with @
2019-01-31 07:11:18 +01:00
Gabriel Caruso
4e0dd6b0ed
Remove unnecessary CLI checks in tests
2019-01-31 00:21:32 -02:00
Joe Watkins
cc60e8b000
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fix bug 76596: phpdbg supports display_errors=stderr
2019-01-30 18:29:18 +01:00
Joe Watkins
ffbe00886f
Merge branch 'PHP-7.3'
...
* PHP-7.3:
Fix #77546 iptcembed broken function
2019-01-30 17:11:11 +01:00
Nikita Popov
e18fde1a02
Remove -1 crop mode
2019-01-30 16:46:36 +01:00
Nikita Popov
f8038f827c
Remove intl Normalizer::NONE
2019-01-30 16:35:32 +01:00
Nikita Popov
db8a4e87a7
Remove error_reporting assignments in some tests
2019-01-30 16:00:19 +01:00
Nikita Popov
0dfd918ee7
Remove support for __autoload()
...
There are probably some improvements we can do to the SPL
implementation now that __autoload() is gone. In particular having
EG(autoload_func) as a property zend function, rather than a simple
callback probably doesn't make sense.
2019-01-30 14:00:16 +01:00
Nikita Popov
e93bbf4d5d
Remove more leftovers from invalid static calls
...
Callbacks are now always valid or not valid, there is no in-between.
2019-01-30 13:13:47 +01:00
Nikita Popov
c88e2cce81
Removed read_exif_data() alias
2019-01-30 13:13:47 +01:00
Nikita Popov
5a2787a02d
Require at least one arg for mktime/gmmktime
2019-01-30 13:13:47 +01:00
Nikita Popov
94ae35c9fb
Remove ability to specify 'salt' in password_hash()
2019-01-30 13:13:47 +01:00
Nikita Popov
1870283e45
Merge branch 'PHP-7.4'
2019-01-30 12:02:47 +01:00
Nikita Popov
d46ba963c3
Merge branch 'PHP-7.4'
2019-01-30 11:48:42 +01:00
Zeev Suraski
91a7c6f612
Take out some last remnants of the yearly copyright range
2019-01-30 11:26:28 +02:00
Zeev Suraski
02557f87bc
Adios, yearly copyright ranges
2019-01-30 11:23:29 +02:00
Zeev Suraski
38c337f22e
Remove year range from copyright notice
2019-01-30 11:00:23 +02:00
Nikita Popov
6c73b50cf6
Remove static calls to non-static methods
2019-01-30 09:19:02 +01:00
Nikita Popov
4eb5db2c68
Forbid unbinding $this from methods
2019-01-30 09:19:02 +01:00
Nikita Popov
23a5be3696
Remove ability to declare userland case-insensitive constants
...
This is part of https://wiki.php.net/rfc/case_insensitive_constant_deprecation .
This commit only removes the ability to declare such constants from
userland. Before the functionality can be removed entirely, it's
necessary to figure out the handling of true/false/null first.
2019-01-30 09:19:02 +01:00
Christoph M. Becker
90bb326100
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Prepare main branch for PHP 7.2.16
2019-01-30 01:30:54 +01:00
Nikita Popov
52a9325328
Remove 'e' modifier for mb_ereg_replace()
...
This was deprecated in PHP 7.1 through
https://wiki.php.net/rfc/deprecate_mb_ereg_replace_eval_option .
2019-01-29 13:04:20 +01:00
Nikita Popov
682b54f687
Remove support for legacy constructors
...
This has been deprecated in PHP 7.0 by
https://wiki.php.net/rfc/remove_php4_constructors .
2019-01-29 13:04:20 +01:00
Nikita Popov
4d8dc2b05e
Migrate finfo away from legacy ctor
2019-01-29 13:04:20 +01:00
Nikita Popov
371e4270b7
Migrate SOAP away from legacy constructors
2019-01-29 13:04:20 +01:00
Nikita Popov
55dbb57322
Remove support for custom assert() function
...
Deprecated in PHP 7.3 as part of
https://wiki.php.net/rfc/deprecations_php_7_3 .
2019-01-29 11:10:47 +01:00
Nikita Popov
6b89dbcc5b
Remove FILTER_FLAG_(SCHEME|HOST)_REQUIRED
...
Deprecated in PHP 7.3 as part of
https://wiki.php.net/rfc/deprecations_php_7_3 .
2019-01-29 11:10:47 +01:00
Nikita Popov
d74d3922ce
Remove (unset) cast
...
Deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-29 11:10:47 +01:00
Nikita Popov
c97b9aa226
Always treat needles as strings
...
This is part of https://wiki.php.net/rfc/deprecations_php_7_3 .
2019-01-29 11:10:47 +01:00
Nikita Popov
c7d7af8069
Remove fgetss and friends
...
These were deprecated in PHP 7.3 as part of
https://wiki.php.net/rfc/deprecations_php_7_3 .
2019-01-29 09:43:00 +01:00
Nikita Popov
83bc092d40
Remove deprecated mbregex aliases
...
These have been deprecated in PHP 7.3 as part of
https://wiki.php.net/rfc/deprecations_php_7_3 .
2019-01-29 09:43:00 +01:00
Nikita Popov
6db97f5e3e
Remove each()
...
This has been deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-29 09:42:59 +01:00
Nikita Popov
9bc2cacf7f
Remove special treatment of strings in asserts
...
This was deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-29 09:42:59 +01:00
Nikita Popov
46d38aa7cd
Merge branch 'PHP-7.4'
2019-01-29 09:40:38 +01:00
Nikita Popov
eeb7511f93
Fix session test after version bump
2019-01-28 16:36:43 +01:00
Nikita Popov
97df99a6d7
Add UPGRADING entries for removed functionality
2019-01-28 16:05:02 +01:00
Nikita Popov
ff780feca4
Require second argument on (mb_)parse_str()
...
This was deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-28 15:58:24 +01:00
Nikita Popov
331e56ce38
Remove mbstring.func_overload
...
Deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-28 15:58:23 +01:00
Nikita Popov
920b4b249f
Remove track_errors and $php_errormsg
...
This has been deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-28 15:58:23 +01:00
Nikita Popov
ee16d99504
Remove create_function()
...
Deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-28 15:58:23 +01:00
Nikita Popov
734c305a82
Remove deprecated gmp_random() function
...
Deprecated in PHP 7.2 as part of
https://wiki.php.net/rfc/deprecations_php_7_2 .
2019-01-28 15:58:22 +01:00
Joe Watkins
faf03e47d2
bump versions of all the things
2019-01-28 15:54:55 +01:00
Christoph M. Becker
3d15a6f86b
Remove deprecated INTL_IDNA_VARIANT_2003
...
Cf. <https://wiki.php.net/rfc/deprecate-and-remove-intl_idna_variant_2003 >
2019-01-28 15:18:01 +01:00
Christoph M. Becker
e973663882
Remove deprecated png2wbmp() and jpeg2wbmp()
...
Cf. <https://wiki.php.net/rfc/deprecate-png-jpeg-2wbmp >
2019-01-28 14:50:52 +01:00
Christoph M. Becker
dfa6c2046a
Remove deprecated image2wbmp()
...
Cf. <https://wiki.php.net/rfc/image2wbmp >.
2019-01-28 14:29:06 +01:00
Nikita Popov
a9a02ca02b
Merge branch 'PHP-7.4'
2019-01-28 11:29:17 +01:00
Nikita Popov
3c2e1b6bd5
Bump API numbers
...
These are of course not the final API numbers, but let's make sure
they differ from the 7.4 branch for now.
2019-01-28 11:17:30 +01:00
Nikita Popov
e916a234be
Upgrade branches in GIT-RULES
2019-01-28 11:17:30 +01:00
Nikita Popov
e118151139
Clear NEWS, UPGRADING and UPGRADING.INTERNALS
2019-01-28 11:17:30 +01:00