http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51441
--- Comment #3 from joseph at codesourcery dot com <joseph at codesourcery dot com> 2011-12-06 20:17:36 UTC --- Please identify the target for which the compiler is configured. If 32-bit x86, then note that in accordance with FLT_EVAL_METHOD you have double rounding (two double values are converted to long double, added as long doubles and then the long double sum rounded to double).