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
Nikita Popov
77a8a709da
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix bug #79787
2020-07-08 11:22:18 +02:00
XXiang
3d5de7d746
Fix bug #79787
...
Closes GH-5807.
2020-07-08 11:20:58 +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
Christoph M. Becker
776e872ab8
[ci skip] Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Report len as -1 instead of INT_MAX
2020-07-08 10:40:13 +02:00
Nikita Popov
e6160e99d8
Report len as -1 instead of INT_MAX
...
Per docs it should be -1. And would be on 32-bit systems, but
not on 64-bit systems.
(cherry picked from commit 39111585a2 )
2020-07-08 10:38:11 +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
Sara Golemon
fef26361d0
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Prep for 7.2.33
Prep NEWS for 7.2.32 release
2020-07-07 19:34:08 +00:00
Sara Golemon
e54f18ae0f
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Prep for 7.2.33
Prep NEWS for 7.2.32 release
2020-07-07 19:33:48 +00:00
Sara Golemon
c68d48de9e
Prep for 7.2.33
2020-07-07 19:32:15 +00:00
Sara Golemon
9588c8474e
Prep NEWS for 7.2.32 release
2020-07-07 19:31:05 +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
77acc8a069
Fixed bug #79793
...
Make sure the string key is not released while throwing the
undefined index warning.
2020-07-07 16:29:48 +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
Nikita Popov
62bec0e083
Fixed bug #79784
...
The fix here is essentially the same as for bug #78598 , just for
the undefined variable notice, rather than the undefined index one.
2020-07-07 14:22:58 +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
b0014adb02
[ci skip] Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Don't use deprecated curly brace offset syntax
2020-07-07 13:56:47 +02:00
Christoph M. Becker
f23bd48892
Don't use deprecated curly brace offset syntax
...
(cherry picked from commit 7ec3aa1871 )
Better safe than sorry in case someone ever builds PHP 7.3 with a
future version of PHP SDK with bundled PHP 8.
2020-07-07 13:55:08 +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
Christoph M. Becker
7ec3aa1871
Don't use deprecated curly brace offset syntax
2020-07-07 13:24:41 +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
220880ad2d
Fixed bug #78598
...
When performing an RW modification of an array offset, the undefined
offset warning may call an error handler / OB callback, which may
destroy the array we're supposed to change. Detect this by temporarily
incrementing the reference count. If we find that the array has been
modified/destroyed in the meantime, we do nothing -- the execution
model here would be that the modification has happened on the destroyed
version of the array.
2020-07-07 12:13:58 +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
48a247178e
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #79792
2020-07-07 11:59:40 +02:00
Nikita Popov
64931fd3c4
Fixed bug #79792
...
We need to remove the iterators even if the array is empty (we
will not create one if the first place, but the array may become
empty after the fact).
2020-07-07 11:58:25 +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
6a9d934b2c
Fixed bug #79779
...
ASSIGN_OBJ_REF was not handling in zend_wrong_string_offset.
2020-07-07 10:27:22 +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
d9b4974cbc
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #79778
2020-07-07 10:20:11 +02:00
Nikita Popov
b765f96f5f
Fixed bug #79778
...
In the interest of avoiding side-effects during dumping, I'm
replacing the value with a <constant ast> string instead of
performing an update constant operation.
2020-07-07 10:19:39 +02:00
Nikita Popov
1e39469678
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #79783
2020-07-07 09:57:07 +02:00