Bug #80916 [NEW]: Assertion failure with function JIT

From: Date: Mon, 29 Mar 2021 20:03:18 +0000
Subject: Bug #80916 [NEW]: Assertion failure with function JIT
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-233052@lists.php.net to get a copy of this message
From:             derkontrollfreak+9hy5l at gmail dot com
Operating system: Debian 10.9 x86_64
PHP version:      8.0.4RC1
Package:          JIT
Bug Type:         Bug
Bug description:Assertion failure with function JIT

Description:
------------
PHP 8.0.4RC1 (cli) ( NTS DEBUG ) crashes when running the test script
with function JIT enabled.

I also tested with PHP 8.1.0-dev (master-Git-2021-03-29) which does not
seem to have this bug. It shows the expected result.

Configure Command
=================
./configure --prefix=/dev/shm/test/php-8.0.4RC1 --disable-all
--enable-debug --enable-opcache --enable-opcache-jit

Command
=======
php -d zend_extension=opcache -d opcache.enable_cli=on -d
opcache.jit_buffer_size=64M -d opcache.jit=function test.php


Test script:
---------------
<?php

class Test
{
    public $test = null;

    function test()
    {
        var_dump($this->test . number_format(0));
    }
}

(new Test())->test();


Expected result:
----------------
STDOUT
======
string(1) "0"


Actual result:
--------------
STDERR
======
php: /dev/shm/test/php-src/Zend/zend_variables.c:65:
zend_string_destroy: Assertion `zend_gc_refcount(&(str)->gc) == 0'
failed.

Backtrace
=========
#0  0x00007f1f99ad27bb in raise () from /lib/x86_64-linux-gnu/libc.so.6
#1  0x00007f1f99abd535 in abort () from /lib/x86_64-linux-gnu/libc.so.6
#2  0x00007f1f99abd40f in ?? () from /lib/x86_64-linux-gnu/libc.so.6
#3  0x00007f1f99acb102 in __assert_fail () from
/lib/x86_64-linux-gnu/libc.so.6
#4  0x00005593b5b38145 in zend_string_destroy (str=0x7f1f99858680)
    at /dev/shm/test/php-src/Zend/zend_variables.c:65
#5  0x00005593b5b3809f in rc_dtor_func (p=0x7f1f99858680)
    at /dev/shm/test/php-src/Zend/zend_variables.c:57
#6  0x00000000485b83c6 in ?? ()
#7  0x00007f1f998592a0 in ?? ()
#8  0x00007f1f99814020 in ?? ()
#9  0x0000000000000000 in ?? ()


-- 
Edit bug report at https://bugs.php.net/bug.php?id=80916&edit=1
-- 
Fix committed:                    https://bugs.php.net/fix.php?id=80916&r=fixed
Fixed in release:                 https://bugs.php.net/fix.php?id=80916&r=alreadyfixed
Need backtrace:                   https://bugs.php.net/fix.php?id=80916&r=needtrace
Need Reproduce Script:            https://bugs.php.net/fix.php?id=80916&r=needscript
Try newer version:                https://bugs.php.net/fix.php?id=80916&r=oldversion
Not developer issue:              https://bugs.php.net/fix.php?id=80916&r=support
Expected behavior:                https://bugs.php.net/fix.php?id=80916&r=notwrong
Not enough info:                  https://bugs.php.net/fix.php?id=80916&r=notenoughinfo
Submitted twice:                  https://bugs.php.net/fix.php?id=80916&r=submittedtwice
register_globals:                 https://bugs.php.net/fix.php?id=80916&r=globals
PHP version support discontinued: https://bugs.php.net/fix.php?id=80916&r=phptooold
Daylight Savings:                 https://bugs.php.net/fix.php?id=80916&r=dst
IIS Stability:                    https://bugs.php.net/fix.php?id=80916&r=isapi
Install GNU Sed:                  https://bugs.php.net/fix.php?id=80916&r=gnused
Floating point limitations:       https://bugs.php.net/fix.php?id=80916&r=float
No Zend Extensions:               https://bugs.php.net/fix.php?id=80916&r=nozend
MySQL Configuration Error:        https://bugs.php.net/fix.php?id=80916&r=mysqlcfg


Thread (2 messages)

« previous php.bugs (#233052) next »