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
Dmitry Stogov
832cfa15eb
Removed old TODO
2020-04-21 12:07:36 +03: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
Nikita Popov
3e9dac2c6b
Don't rand() in test
...
Instead use port 0 to get a free port from the OS.
2020-04-20 16:35:52 +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
5c40491567
Fix file name clash in touch_variation1.phpt
2020-04-20 12:07:46 +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
Alex Dowad
0d11d37357
Fix bug #67369 ArrayObject serializatino drops the iterator class
...
When ArrayObject is round-tripped through serialize() and unserialize(),
it forgets any iterator class name which was set using ::setIteratorClass().
Fix that.
2020-04-20 11:55:18 +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
Nikita Popov
a230b5a6c9
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #79497 : Fix php_openssl_subtract_timeval()
2020-04-20 10:26:22 +02:00
Joe Cai
94e09bfe55
Fix #79497 : Fix php_openssl_subtract_timeval()
...
I stumbled upon this while debugging a strange issue with
stream_socket_client() where it randomly throws out errors when
the connection timeout is set to below 1s. The logic to calculate
time difference in php_openssl_subtract_timeval() is wrong when
a.tv_usec < b.tv_usec, causing connection errors before the timeout
is reached.
2020-04-20 10:25:54 +02: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
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
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
Dmitry Stogov
ea0110f0de
Improve registers reuse
2020-04-16 14:35:51 +03: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
0b709e3409
Fix bug #79336
...
Make reading of floats and doubles host-endian independent.
2020-04-16 12:18:41 +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
Gabriel Caruso
e88e9afe95
Move test to its folder
2020-04-16 11:56:21 +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
Nikita Popov
f684553c2c
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix MySQL local infile / attr handling on big endian systems
2020-04-16 11:22:43 +02:00
guirish
a1c1736bfb
Fix MySQL local infile / attr handling on big endian systems
...
Make sure pointer types match what is used by libmysql everywhere.
Closes GH-5380.
2020-04-16 11:22:17 +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