http://gcc.gnu.org/bugzilla/show_bug.cgi?id=47146
--- Comment #4 from Andreas Schwab <sch...@linux-m68k.org> 2011-01-03 17:40:24 UTC --- > fprintf( stdout, "Float 100.0 * 0.3894949=%d\n", 100.0 * elapsed ); > fprintf( stdout, "Float 100 * 0.3894949=%d\n", 100 * elapsed ); > > both produce the value '-536870912'. Undefined behaviour: you pass a double value to a format that expects a value of type int.