------- Comment #5 from rguenth at gcc dot gnu dot org 2008-02-05 11:08 ------- The difference with your last testcase is indeed that we unroll the loop setting c[] and constant-fold the result by computing the integral powers with 0.5ulp precision (and a single rounding(!)). But all your other computations involve intermediate roundings, so this is still invalid IMHO.
Or are you complaining that we constant fold integer powers as if they were non-integer powers (not using the fact that Fortran would allow expansion to multiple FLOPs)? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33780