Hello, when generating gimple using gcc 4.4.2 from int a =5; int b=10; if (a++ +b != 0) return 0; else return 1; we obtain this code int a; int b; a = 5; b = 10; D.1715 = a + b; retval.0 = D.1715 != 0; a = a + 1; if (retval.0 != 0) goto <D.1716>; else goto <D.1717>; .... why retval.0 is added ? why we do not produce if (D.1715 !=0) directly ? thank you very much Asma