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
Dmitry Stogov
be6fb13873
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix $x = (bool)$x; for undefined with opcache
2019-11-18 11:27:43 +03:00
Dmitry Stogov
e72e3370c6
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix $x = (bool)$x; for undefined with opcache
2019-11-18 11:26:30 +03:00
Tyson Andre
a2c41c0ea6
Fix $x = (bool)$x; for undefined with opcache
...
And `$x = !$x`
Noticed while working on GH-4912
The included test would not emit undefined variable errors in php 8.0
with opcache enabled. The command used:
```
php -d zend_extension=opcache.so --no-php-ini -d error_reporting=E_ALL \
-d opcache.file_cache= -d opcache.enable_cli=1 test.php
```
2019-11-18 11:24:03 +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
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
7d056fc6c0
Merge branch 'PHP-7.4'
...
* PHP-7.4:
Fixed bug #78747
2019-10-25 12:53:24 +02:00
Nikita Popov
4d8541debb
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fixed bug #78747
2019-10-25 12:50:26 +02:00
Nikita Popov
74699533e5
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fixed bug #78747
2019-10-25 12:50:12 +02:00
Nikita Popov
5249993814
Fixed bug #78747
2019-10-25 12:47:18 +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
f07565b0eb
Check class linking in VERIFY_RETURN_TYPE optimization
...
instanceof_function() requires linked classes. I'm not reusing
unlinked_instanceof() here, because it performs class loading,
which wouldn't be right here, I think.
2019-10-25 11:24:32 +02:00
Dmitry Stogov
2958fecb8b
Fixed incorrect JIT compilation
2019-10-14 21:32:10 +03:00
Dmitry Stogov
3f50922aee
Fixed incorrect JIT compilation
2019-10-14 16:45:58 +03:00
Dmitry Stogov
0cb977a691
Fixed edge cases introduced by 170ed1f5a7
2019-10-10 11:48:31 +03: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
e8b0163e0b
Promote write "use scalar as array" warning to Error
2019-09-27 15:49:18 +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
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
Nikita Popov
edfcf2d81f
Merge branch 'PHP-7.4'
2019-09-19 17:22:34 +02:00
Nikita Popov
5bee9c9062
Merge branch 'PHP-7.3' into PHP-7.4
2019-09-19 17:22:28 +02:00
Nikita Popov
85e7668129
Merge branch 'PHP-7.2' into PHP-7.3
2019-09-19 17:21:45 +02:00
Nikita Popov
003c13d7bc
Fix iterable return type optimization
2019-09-19 17:21:00 +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
20f73d3d8f
Fix #78429 : opcache_compile_file(__FILE__); segfaults
...
We have to ensure that OPcache has been properly started up when
`opcache_compile_file()` is called.
2019-09-16 16:01:09 +02:00
Nikita Popov
c70bab7b24
Merge branch 'PHP-7.4'
2019-09-11 09:53:18 +02:00
Nikita Popov
0a24cd4e7c
Preloading: Fix handling of static vars in inherited methods
...
Part of bug #78512 .
2019-09-11 09:53:10 +02:00
Nikita Popov
f16ad678f7
Merge branch 'PHP-7.4'
2019-09-09 11:37:36 +02:00
Nikita Popov
36a8cf5182
Fixed bug #78514
...
The property class may have already been translated as part of
some other class. Only translate if xlat returns non-null.
2019-09-09 11:36:50 +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
George Peter Banyard
1059e3dc39
Promote warnings to errors in str_repeat()
2019-08-23 20:01:19 +02:00
Nikita Popov
19378ae44a
Merge branch 'PHP-7.4'
2019-08-13 11:23:35 +02:00
Nikita Popov
76fecb339f
Merge branch 'PHP-7.3' into PHP-7.4
2019-08-13 11:23:06 +02:00
Nikita Popov
a33361a37c
Merge branch 'PHP-7.2' into PHP-7.3
2019-08-13 11:22:41 +02:00
Nikita Popov
4eeb41d1ea
Fixed bug #77191
2019-08-13 11:19:58 +02: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
Dmitry Stogov
3fc0e2bb80
Fixed bug #78376 (Incorrect preloading of constant static properties)
2019-08-05 22:55:06 +03:00
Nikita Popov
21cd438c33
Merge branch 'PHP-7.4'
2019-08-01 17:00:49 +02:00
Nikita Popov
bf53d30fae
Fix forwarding of extra args in opcache server tests
2019-08-01 17:00:11 +02:00
Nikita Popov
45eabeca81
Merge branch 'PHP-7.4'
2019-07-29 13:03:59 +02:00
Nikita Popov
a22a06c351
Merge branch 'PHP-7.3' into PHP-7.4
2019-07-29 13:03:53 +02:00
Nikita Popov
8e63bb5e46
Fixed bug #78341
...
The smart branch logic assumed b->start refers to the old offsets,
while b->start was already adjusted to the new offsets at this
point. Delay the change until later.
2019-07-29 13:02:01 +02:00
Nikita Popov
36db71df47
Merge branch 'PHP-7.4'
2019-07-22 12:28:40 +02:00
Nikita Popov
b3f74b0b7d
Deprecate allow_url_include
2019-07-22 11:39:52 +02:00
Nikita Popov
eb766751dc
Merge branch 'PHP-7.4'
2019-07-19 10:06:30 +02:00
rjhdby
d574df63dc
Deprecate alternative array access syntax
...
RFC: https://wiki.php.net/rfc/deprecate_curly_braces_array_access
2019-07-19 10:06:10 +02:00
Nikita Popov
8a10258a53
Merge branch 'PHP-7.4'
2019-07-15 10:33:31 +02:00
Nikita Popov
a520c24269
Merge branch 'PHP-7.3' into PHP-7.4
2019-07-15 10:29:37 +02:00
Nikita Popov
3eb057c4a7
Merge branch 'PHP-7.2' into PHP-7.3
2019-07-15 10:23:51 +02:00