Edit report at https://bugs.php.net/bug.php?id=65589&edit=1
ID: 65589 Updated by: ras...@php.net Reported by: wwwgying at qq dot com Summary: PHP Language BUG Status: Not a bug Type: Bug Package: Scripting Engine problem Operating System: Windows/Mac/Linux PHP Version: 5.5.3 Block user comment: N Private report: N New Comment: You should read this: http://c-faq.com/expr/seqpoints.html Just because your particular C compiler gave you 3,2, there is no guarantee that another one will produce the same result for that code. This is well-known and documented to be undefined in both C and PHP and you cannot rely on the result of an expression like that. Previous Comments: ------------------------------------------------------------------------ [2013-10-06 09:44:02] gautam dot nishchal at gmail dot com Yep, there's a bug, but way of expressing is wrong, expected output is 3,2 but gives you 3,3 ------------------------------------------------------------------------ [2013-10-06 08:48:20] gautam dot nishchal at gmail dot com Expected result is int(3) int(2) I suggest you to read about pre and post increment / decrement :p ------------------------------------------------------------------------ [2013-10-06 08:44:47] gautam dot nishchal at gmail dot com And who tells the program gives int(3) int(3)? I just wrote a program in C which gave me 3 and 2, #include <stdio.h> int main() { int a, c; a=1; c=a+a+a++; printf("%d\n",c); a=1; c=a+a++; printf("%d", c); } This program prints 3 2 not 3 3 ------------------------------------------------------------------------ [2013-10-06 08:35:00] gautam dot nishchal at gmail dot com I would like to say something to reporter, i think that's a post increment expression which will give int(3) int(3). That's not bug... ------------------------------------------------------------------------ [2013-08-30 20:45:11] ahar...@php.net This is undefined behaviour in PHP, as in most languages with C-derived syntaxes. Mailing list discussion from last month: http://marc.info/?t=137427934300002&r=1&w=2 This is also documented, see example 1 on: http://www.php.net/manual/en/language.operators.precedence.php ------------------------------------------------------------------------ The remainder of the comments for this report are too long. To view the rest of the comments, please view the bug report online at https://bugs.php.net/bug.php?id=65589 -- Edit this bug report at https://bugs.php.net/bug.php?id=65589&edit=1