[php-src] Issue #15348: Assertion violation in ZendAccelerator.c

From: Date: Sun, 11 Aug 2024 18:59:21 +0000
Subject: [php-src] Issue #15348: Assertion violation in ZendAccelerator.c
Groups: php.bugs 
Request: Send a blank email to php-bugs+get-247476@lists.php.net to get a copy of this message
Issue: https://github.com/php/php-src/issues/15348 Author: cmb69 ### Description Even with a minimal x86 debug build on Windows, as soon as OPcache is enabled, php.exe always triggers an assertion violation. ```` buildconf && configure --disable-all --enable-cli --disable-debug-pack --enable-debug --disable-zts --enable-opcache --enable-test-ini && nmake nmake run ARGS=-v ```` outputs ```` Assertion failed: ((uintptr_t)(accel_shared_globals->interned_strings).start & 0x7) == 0, file ext\opcache\ZendAccelerator.c, line 2880 ```` https://github.com/php/php-src/blob/bb35da336d560f0243ba5c7c19bc2aeb29f04ec6/ext/opcache/ZendAccelerator.c#L2890 Some relevant debug info: ```` &ZCSG(interned_strings) 0x200000c4 sizeof(zend_string_table) 0x18 hash_size+1 0x80000 sizeof(zend_string_table_pos_t) 0x4 sizeof(zend_string) 0x14 ZCSG(interned_strings).start 0x2020017c ```` So it seems to me that sizeof(zend_string) doesn't meet the expectation of being a multiple of 8. I bisected this down to 1bae61a4d27372095496f0c6d9161ddbb735c98f. @arnaud-lb, can you please clarify? ### PHP Version PHP 8.4 ### Operating System Windows x86

« previous php.bugs (#247476) next »