http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48681
Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED Version|unknown |4.5.2 Resolution| |INVALID --- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-19 09:54:28 UTC --- I think expressions involving floating point operations are never valid integral constant expressions (at least not in C). An EDG based frontend agrees with that: t.C(2): error: expression must have integral or enum type compile_time_assertion_failed[(1.17549435082228750797e-38F <= 1E-37) ? 1 : -1]; ^ ... t.C(13): error: type of cast must be integral or enum compile_time_assertion_failed[(((double)1.79769313486231570815e+308L) >= 1E+37) ^