Pierrick Charron
ef863b5cd9
Prepare PHP 8.2.0 RC5
2022-10-25 13:38:09 -04:00
George Peter Banyard
cb3adf351d
Fix OpCache build after 0b0259a418
...
The intersection type needs to be marked as being allocated on the arena otherwise zend_persist_type() tries to free it and corrupts the Zend MM Heap
Also we only need to allocate the space for a list of size 1 and not the whole length of the intersection type
2022-10-24 15:17:26 +01:00
George Peter Banyard
8c2df899d0
Revert 01eb06a0de
...
We do not need this shim anymore since it is converted to a proper DNF type at compile time
2022-10-24 11:41:42 +01:00
George Peter Banyard
0b0259a418
Convert Implicitly nullable pure intersection types to DNF
...
If we don't then Reflection would give us a ReflectionIntersectionType even if the type is currently displayed as (X&Y)|null
2022-10-24 11:39:54 +01:00
David Carlier
dbedb69f6a
Merge branch 'PHP-8.1' into PHP-8.2
2022-10-23 00:46:46 +01:00
David Carlier
fe06c5ef60
Merge branch 'PHP-8.0' into PHP-8.1
2022-10-23 00:46:25 +01:00
Adam Saponara
45e224cf51
Fix GH-9709: Guard against current_execute_data==NULL in is_handle_exception_set
2022-10-23 00:46:05 +01:00
Arnaud Le Blanc
cfd5fb98e4
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
[ci skip] NEWS
Fix compilation warning
Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:55 +02:00
Arnaud Le Blanc
ebe58459aa
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
[ci skip] NEWS
Fix compilation warning
Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:44:06 +02:00
Arnaud Le Blanc
26c7c82d32
Fix crash when memory limit is exceeded during generator initialization
2022-10-22 10:40:28 +02:00
Dmitry Stogov
eecbb60db6
Fix memory leak
...
Fixes oss-fuzz #52479
2022-10-17 15:08:21 +03:00
Arnaud Le Blanc
a1295cbfce
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
[ci skip] NEWS
[ci skip] NEWS
Restore extra_named_params when restoring frozen call stack
2022-10-16 12:45:41 +02:00
Arnaud Le Blanc
2831e0c624
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
[ci skip] NEWS
Restore extra_named_params when restoring frozen call stack
2022-10-16 12:43:34 +02:00
Arnaud Le Blanc
86e1fea39a
Restore extra_named_params when restoring frozen call stack
2022-10-16 12:40:09 +02:00
Ben Ramsey
865161af33
PHP-8.1 is now for PHP 8.1.13-dev
2022-10-11 19:47:00 -04:00
George Peter Banyard
01eb06a0de
Follow-up fix for GH-9655
...
Type needs to be rendered as a DNF type and not X&Y|null
2022-10-04 14:24:51 +01:00
HypeMC
279ffdb598
Fix GH-9655: Allow pure intersection types to be implicitly nullable
...
Closes GH-9659
2022-10-03 11:02:52 +01:00
George Peter Banyard
c801076d8b
Fix GH-9556 "iterable" alias "array|Traversable" breaks PHP 8.1 code
...
Closes GH-9558
2022-09-30 12:49:15 +01:00
George Peter Banyard
74ae498a4b
Move object/class redundancy check into union type handling
...
As such a redundancy can only happen for union types
2022-09-30 12:48:56 +01:00
George Peter Banyard
0d19ae4068
Add support for binary and octal number prefixes for INI settings
...
Closes GH-9560
2022-09-30 11:56:39 +01:00
Dmitry Stogov
94b8c2da9f
Fixed type inference
...
Fixes oss-fuzz #51640
2022-09-26 12:19:12 +03:00
Dmitry Stogov
c083efb779
Fix memory leak
...
Fixes oss-fuzz #51622
2022-09-26 12:02:03 +03:00
Dmitry Stogov
5ad8b3bcfa
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix memory leak
2022-09-26 11:47:32 +03:00
Dmitry Stogov
b20568d4fa
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix memory leak
2022-09-26 11:44:38 +03:00
Dmitry Stogov
8258b7731b
Fix memory leak
...
Fixes oss-fuzz #51622
2022-09-26 11:43:38 +03:00
Patrick Allaert
18cd80c327
Fixed undefined macros warnings
2022-09-22 13:17:02 +02:00
Dmitry Stogov
7496a400aa
Fix SSA construction and type inference
...
Fixes oss-fuzz #51476
2022-09-19 15:45:34 +03:00
Dmitry Stogov
33918f999d
Fixed warning
2022-09-19 13:12:49 +03:00
Dmitry Stogov
c0d49b7c7d
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix memory leak
2022-09-19 13:04:09 +03:00
Dmitry Stogov
8a1f7fa721
Fix memory leak
...
Fixes oss-fuzz #51451
2022-09-19 13:03:24 +03:00
Ilija Tovilo
fe0eaf107a
Fix UB pointer arithmetics on NULL
...
Closes GH-9559
2022-09-16 18:24:39 +02:00
Ilija Tovilo
7e860eaef0
Don't throw CompileError after parsing
...
Aborting parsing is not safe, a fatal error is necessary.
See b9f7123c5e
2022-09-14 23:05:41 +02:00
Bob Weinand
5a0b68bed7
Revert "Store default object handlers alongside the class entry"
...
This reverts commit 9e6eab3c13 .
Reverted along a01dd9feda .
2022-09-14 11:18:14 +02:00
Bob Weinand
a01dd9feda
Revert "Port all internally used classes to use default_object_handlers"
...
This reverts commit 94ee4f9834 .
The commit was a bit too late to be included in PHP 8.2 RC1. Given it's a massive ABI break, we decide to postpone the change to PHP 8.3.
2022-09-14 11:13:23 +02:00
Sara Golemon
559da529a0
Bump for 8.0.25
2022-09-13 23:46:26 +00:00
Patrick Allaert
0f575aa698
PHP-8.1 is now for PHP 8.1.12-dev
2022-09-13 23:09:47 +02:00
George Peter Banyard
5bfceae770
Only check classes in intersection type if the type might be valid
...
Closes GH-9522
2022-09-13 11:10:32 +01:00
Ilija Tovilo
09aa27cc09
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix ZEND_RC_MOD_CHECK() for thread local ini parser strings
2022-09-12 23:33:03 +02:00
Ilija Tovilo
9af98cd465
Fix ZEND_RC_MOD_CHECK() for thread local ini parser strings
2022-09-12 23:31:26 +02:00
Ilija Tovilo
08b7539583
Fix syntax error when dnf type in parens after readonly
...
Fixes GH-9500
Closes GH-9512
2022-09-11 12:29:29 +02:00
George Peter Banyard
6c4d24e4f0
Update cache slot size calculation in compact_literals.c
2022-09-10 13:20:59 +01:00
George Peter Banyard
c70a8281e3
Use DNF intersection type check also for simple intersection types
2022-09-10 11:39:22 +01:00
George Peter Banyard
9286101da4
Fix GH-9516: (A&B)|D as a param should allow AB or D. Not just A.
...
The issue was that we didn't compute enough cache slots for DNF types.
Nor progressed throught the CE's in the cache slot, meaning we were only checking if the value passed
satisfied the first type of the nested intersection type.
2022-09-10 11:34:32 +01:00
George Peter Banyard
80315edd58
Introduce PROGRESS_CACHE_SLOT() macro
2022-09-10 11:34:11 +01:00
Ilija Tovilo
580c29e1a2
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix lsp error in eval'd code referring to incorrect class for static type
2022-09-08 10:54:02 +02:00
Ilija Tovilo
15ee9d2686
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix lsp error in eval'd code referring to incorrect class for static type
2022-09-08 10:53:45 +02:00
Ilija Tovilo
d5373eac46
Fix lsp error in eval'd code referring to incorrect class for static type
...
Fixes GH-9407
Closes GH-9471
2022-09-08 10:52:27 +02:00
George Peter Banyard
3e362f51ac
Add zend_string INI validators
...
Currently we only have validators for char* which is rather annoying as INI settings are saved as zend_string* in the first place
Closes GH-9328
2022-09-06 10:41:47 +01:00
Dmitry Stogov
c151e9b75b
Merge branch 'PHP-8.1' into PHP-8.2
...
* PHP-8.1:
Fix type inference
2022-09-05 13:01:04 +03:00
Dmitry Stogov
c852e0fff9
Merge branch 'PHP-8.0' into PHP-8.1
...
* PHP-8.0:
Fix type inference
2022-09-05 12:56:34 +03:00