Dmitry Stogov
cfcee97ad6
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Remove range inference for booleans.
2021-12-10 14:33:36 +03:00
Dmitry Stogov
6f42c073cf
Remove range inference for booleans.
...
Range inference for bolleans and longs comparison was incorrect.
Fizes oss-fuzz #fuzz-42161.php
2021-12-10 14:32:47 +03:00
Christoph M. Becker
2362722dcf
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #81585 : cached_chunks are not counted to real_size on shutdown
2021-12-10 12:25:44 +01:00
Christoph M. Becker
5675ebe649
Fix #81585 : cached_chunks are not counted to real_size on shutdown
...
The amount of allocated system memory is kept in `real_size`, including
the allocated `cached_chunks`. Thus, we need to keep the proper count
at the end of the shutdown.
Closes GH-7745.
2021-12-10 12:24:06 +01:00
Dmitry Stogov
363434bab2
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix incorrect JMP optimization
2021-12-10 01:44:55 +03:00
Dmitry Stogov
0ac3d78d7d
Fix incorrect JMP optimization
...
Fixes oss-fuzz #42155
2021-12-10 01:39:28 +03:00
Dmitry Stogov
7e080183f4
Fix crush after compilation of nullsafe operator introduced in 307e476e86
...
Now we flush only delayed opcodes realted to this nullsafe operator.
Fixes oss-fuzz #42152
2021-12-09 18:15:47 +03:00
Christoph M. Becker
7d4fdf1510
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Skip bug_36798.phpt for PDO_DBLIB
2021-12-07 20:25:35 +01:00
Christoph M. Becker
efb901ebed
Skip bug_36798.phpt for PDO_DBLIB
...
For some reason, this test fails now with "Incorrect syntax near ''.
[SELECT '�' as test FROM test WHERE id = '1']", so we skip it.
2021-12-07 20:24:15 +01:00
Dmitry Stogov
08f1d470fb
Separate "cold" code
2021-12-07 11:46:32 +03:00
Nikita Popov
cf377eefa6
Don't convert assign op operand types in opcache
...
This is the same change as 56b18d478e
but for ASSIGN_OP. Changing the operand type may change the error
message and can result in different behavior with operator overloading.
As with the other patch, if there is strong interest this could be
added to the DFA pass instead, with an appropriate type check.
2021-12-06 21:56:04 +01:00
Christoph M. Becker
6f325104eb
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix #75917 : SplFileObject::seek broken with CSV flags
2021-12-06 19:02:32 +01:00
Aliaksandr Bystry
daf79e2d91
Fix #75917 : SplFileObject::seek broken with CSV flags
...
Closes GH-7697.
2021-12-06 18:59:48 +01:00
Dmitry Stogov
572c09d373
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fixed incorrect DCE of a constructor call
2021-12-06 16:00:30 +03:00
Dmitry Stogov
7b629afe4e
Fixed incorrect DCE of a constructor call
...
Fixez oss-fuzz #42049
2021-12-06 15:59:30 +03:00
Dmitry Stogov
b4ccc52d10
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix incorrect elimination of type store
2021-12-06 14:22:59 +03:00
Dmitry Stogov
c29f6baaee
JIT: Fix incorrect elimination of type store
...
Fixes oss-fuzz #41995
2021-12-06 14:22:07 +03:00
Dmitry Stogov
5459ed4c2f
Fix use after free because of data clobbering by user error handler
...
Fixes oss-fuzz #41692
2021-12-06 13:08:27 +03:00
Dmitry Stogov
4ed10f3d47
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix refcount inferemce ($a += $a returns old array with RCN)
2021-12-06 11:31:51 +03:00
Dmitry Stogov
aa7280264e
Fix refcount inferemce ($a += $a returns old array with RCN)
...
Fixes oss-fuzz #41670
2021-12-06 11:30:03 +03:00
Ilija Tovilo
b991ce9c1e
Improve final/abstract methods in interfaces error messages
...
Closes #81683
Closes GH-7722
2021-12-05 23:10:07 +01:00
Nikita Popov
53ae2b17f3
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
fix #81656 : GCC-11 silently ignores -R
2021-12-05 21:06:50 +01:00
Michael Wallner
1f38c003d2
fix #81656 : GCC-11 silently ignores -R
...
Closes GH-7688.
2021-12-05 21:06:28 +01:00
Nikita Popov
26e424465c
Fix bug #81598 : Use C.UTF-8 as LC_CTYPE locale by default
...
Unfortunately, libedit is locale based and does not accept UTF-8
input when the C locale is used. This patch switches the default
locale to C.UTF-8 instead (if it is available). This makes libedit
work and I believe it shouldn't affect behavior of single-byte
locale-dependent functions that PHP otherwise uses.
Closes GH-7635.
2021-12-05 21:03:27 +01:00
David Carlier
15e7e570a5
Fix #81658 : MYSQL_OPT_LOAD_DATA_LOCAL_DIR not available in MariaDB
...
This also introduces the boolean userland constant `MYSQLI_IS_MARIADB`.
2021-12-05 19:11:04 +01:00
Ilija Tovilo
dab6226cbe
Fix invalid opcode for ??= on $GLOBALS
...
Closes #81684
Closes GH-7717
2021-12-05 18:25:02 +01:00
Christoph M. Becker
b9f9d4a0a5
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Use php/php-sdk-binary-tools.git for AppVeyor builds
2021-12-05 13:53:59 +01:00
Christoph M. Becker
582a291c98
Use php/php-sdk-binary-tools.git for AppVeyor builds
2021-12-05 13:51:50 +01:00
Dmitry Stogov
307e476e86
Fixed bug #81216 (Nullsafe operator leaks dynamic property name)
...
Fixes oss-fuzz #38542
2021-12-04 18:04:24 +03:00
Christoph M. Becker
929d847152
Fix #81693 : mb_check_encoding(7bit) segfaults
...
`php_mb_check_encoding()` now uses conversion to `mbfl_encoding_wchar`.
Since `mbfl_encoding_7bit` has no `input_filter`, no filter can be
found. Since we don't actually need to convert to wchar, we encode to
8bit.
Closes GH-7712.
2021-12-03 22:49:47 +01:00
Dmitry Stogov
7a6fb9751e
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add missing "return"
2021-12-03 13:52:29 +03:00
Dmitry Stogov
c9901aa594
Add missing "return"
2021-12-03 13:52:10 +03:00
Dmitry Stogov
e52f57cf6b
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add test
ws
2021-12-03 13:40:27 +03:00
Dmitry Stogov
8d7d87cdc4
Add test
2021-12-03 13:40:17 +03:00
Dmitry Stogov
4a5c05a49d
ws
2021-12-03 13:40:01 +03:00
Dmitry Stogov
731ce6be01
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix array object clobbering by user error handler
2021-12-03 13:36:33 +03:00
Dmitry Stogov
1d054b3fa7
Fix array object clobbering by user error handler
...
Fixes oss-fuss #41605 and #41610
2021-12-03 13:35:28 +03:00
Dmitry Stogov
dd2c30a97e
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix register clobbering
2021-12-03 11:14:54 +03:00
Dmitry Stogov
2515e788bc
JIT: Fix register clobbering
...
Fixes oss-fuzz #41621
2021-12-03 11:13:50 +03:00
Christoph M. Becker
59dd4fd742
Fix #81681 : ReflectionEnum throwing exceptions
...
Enums are neither instantiable nor cloneable.
Closes GH-7707.
2021-12-02 23:22:07 +01:00
Dmitry Stogov
9a3ca278b3
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Tracing JIT: Fixed Zend/tests/str_offset_008.phpt failure
2021-12-02 23:55:33 +03:00
Dmitry Stogov
c4ee66856e
Tracing JIT: Fixed Zend/tests/str_offset_008.phpt failure
2021-12-02 23:47:36 +03:00
Dmitry Stogov
42a162e535
Add test
2021-12-02 22:50:55 +03:00
Dmitry Stogov
b4680b056c
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
JIT: Fix ASSIGN_DIM_OP with undefined variable and index and user error handler, throwing an exception
2021-12-02 22:24:06 +03:00
Dmitry Stogov
2fde308fc6
JIT: Fix ASSIGN_DIM_OP with undefined variable and index and user error handler, throwing an exception
...
Fixes oss-fuzz #39422
2021-12-02 22:19:48 +03:00
Patrick Allaert
628670c391
Prepare for 8.1.2
2021-12-02 14:20:36 +01:00
Dmitry Stogov
ddcfffad2c
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix yet another indirect string modification by error handler problem
2021-12-02 16:17:26 +03:00
Dmitry Stogov
94286cd596
Fix yet another indirect string modification by error handler problem
2021-12-02 16:16:54 +03:00
Dmitry Stogov
b9ff359a99
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Add missing zend_string_release_ex(tmp, 0) and cleanup
2021-12-02 11:21:04 +03:00
Dmitry Stogov
37ac707cac
Add missing zend_string_release_ex(tmp, 0) and cleanup
...
- use GC_DELREF() instead of zend_string_release_ex()
- add expectations for exceptional cases
- replace IS_ARRAY_IMMUTABLE by IS_STR_INTERNED
2021-12-02 11:18:08 +03:00