http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55077
--- Comment #1 from Manuel López-Ibáñez <manu at gcc dot gnu.org> 2012-10-27 19:48:25 UTC --- Problem: We do not want to warn for expressions. From the clang testcases: // Expressions, such as those that indicate rounding-down, should NOT produce warnings. int x = 24 * 0.5; int y = (24*60*60) * 0.25; int pennies = 123.45 * 100; But gcc folds those before conversion_warning, so we cannot know they are expressions... :-(