------- Comment #11 from acarmeli at mathworks dot com 2008-05-28 11:30 ------- I believe there is still a violation of the C standard when expression folding folds this.
The attached file demonstrates this. In step 7, we perform 4*3 in 32-bit and expect to get a 12 in a 64-bit. It should be possible to perform this without overflow and represent in 64-bit. It should be possible to divide the result in 3 and get the original number: 4 However, the folded expression does not permit this to happen. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36300