This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug c/37073] New: -fno-math-errno should be the default on FreeBSD
- From: "das at FreeBSD dot ORG" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 10 Aug 2008 19:36:46 -0000
- Subject: [Bug c/37073] New: -fno-math-errno should be the default on FreeBSD
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
The FreeBSD math library doesn't support the SysV mistake of setting errno in
libm functions, and never has. As on Darwin, -fno-math-errno should be the
default.
Darwin changes the default by adding an override for every relevant machine
config. There needs to be a cleaner way to do this.
Doc changes for this and bug 37072:
Index: doc/invoke.texi
===================================================================
--- doc/invoke.texi (revision 181538)
+++ doc/invoke.texi (working copy)
@@ -5677,7 +5677,8 @@
The default is @option{-fmath-errno}.
-On Darwin systems, the math library never sets @code{errno}. There is
therefore
+On Darwin and FreeBSD systems, the math library never sets @code{errno}.
+There is therefore
no reason for the compiler to consider the possibility that it might,
and @option{-fno-math-errno} is the default.
@@ -9507,7 +9508,7 @@
@opindex mno-fancy-math-387
Some 387 emulators do not support the @code{sin}, @code{cos} and
@code{sqrt} instructions for the 387. Specify this option to avoid
-generating those instructions. This option is the default on FreeBSD,
+generating those instructions. This option is the default on
OpenBSD and NetBSD@. This option is overridden when @option{-march}
indicates that the target cpu will always have an FPU and so the
instruction will not need emulation. As of revision 2.6.1, these
--
Summary: -fno-math-errno should be the default on FreeBSD
Product: gcc
Version: 4.2.1
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: das at FreeBSD dot ORG
GCC build triplet: amd64-undermydesk-freebsd
GCC host triplet: amd64-undermydesk-freebsd
GCC target triplet: amd64-undermydesk-freebsd
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37073