Re: ZE2 broken by newer gcc
| From: | Dmitry Stogov | Date: | Mon, 12 Sep 2011 06:45:06 +0000 |
| Subject: | Re: ZE2 broken by newer gcc | ||
| References: | 1 | Groups: | php.internals |
| Request: | Send a blank email to internals+get-55379@lists.php.net to get a copy of this message | ||
Hi Flavius,
Unfortunately, the proposed fix is wrong.
It changes the operators precedence and it's definitely wrong.
I suppose the crash caused by side effect of some other bug.
Try to run the same script with valgrind.
Thanks. Dmitry.
On 09/11/2011 02:27 PM, Flavius Aspra wrote:
Hi I think I've found a bug in the engine, and I think it occures only with the latest gcc ("gcc version 4.6.1 20110819 (prerelease)"), since it used to work with earlier versions. For example line 867 http://lxr.php.net/opengrok/xref/PHP_5_3/Zend/zend_execute_API.c#867 should be && PZVAL_IS_REF((*fci->params)[i])) { that's what has worked for me at least. Otherwise it ends with a segfault. It may also be gcc breaking BC. So I'm not sure whose "fault" it is, but I think [] takes precedence over * in the C specification. Could someone please verify this issue? Regards, Flavius