http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60413

--- Comment #2 from Ryan Lortie <desrt at desrt dot ca> ---
Why is this violation of standards treated in a special way?

Quoting from gcc's manpage:

       -ffast-math
           Sets -fno-math-errno, -funsafe-math-optimizations,
           -ffinite-math-only, -fno-rounding-math, -fno-signaling-nans
           and -fcx-limited-range.

           This option causes the preprocessor macro "__FAST_MATH__"
           to be defined.

           This option is not turned on by any -O option besides
           -Ofast since it can result in incorrect output for programs
           that depend on an exact implementation of IEEE or ISO
           rules/specifications for math functions. It may, however,
           yield faster code for programs that do not require the
           guarantees of these specifications.

It seems that the logic about "since it can result in incorrect output for
programs that depend on an exact implementation of IEEE or ISO
rules/specifications" should be equally applied here.

ie: default should be to follow the standards, and maybe have 'fast' mode
enabled if the user gives -ffast-math.

Reply via email to