[php-src] Issue #12597: Duplicate and incorrect E_ERROR messages are printed with opcache.jit=1125
| From: | pfustc | Date: | Thu, 02 Nov 2023 07:27:15 +0000 |
| Subject: | [php-src] Issue #12597: Duplicate and incorrect E_ERROR messages are printed with opcache.jit=1125 | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-245719@lists.php.net to get a copy of this message | ||
Issue: https://github.com/php/php-src/issues/12597
Author: pfustc
### Description
With below INI
```ini
opcache.enable_cli=1
opcache.jit=1125
opcache.jit_buffer_size=16M
```
The following code:
```php
<?php
function test() {
$k = 1;
return function () use ($k) {
foo();
};
}
ini_set('memory_limit', '2M');
$array = [];
for ($i = 0; $i < 10_000; $i++) {
$array[] = test();
}
?>
```
Resulted in this output:
```
Fatal error: Allowed memory size of 2097152 bytes exhausted (tried to allocate 20480 bytes) in
/mnt/local/www/index.php on line 5
Fatal error: Allowed memory size of 2097152 bytes exhausted (tried to allocate 20480 bytes) in
Unknown on line 0
```
But I expected this output instead:
```
PHP Fatal error: Allowed memory size of 2097152 bytes exhausted (tried to allocate 12288 bytes) in
/mnt/local/www/index.php on line 4
```
### PHP Version
PHP master @ https://github.com/php/php-src/commit/95c8ad2bd6bd9d32b6a3b44fde94a84b0acbb6a9
### Operating System
Ubuntu 22.04