[Bug target/82626] -msse and -mfpmath=sse Causes __FLT_EVAL_METHOD__ to be -1
redi at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Oct 20 15:58:00 GMT 2017
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82626
--- Comment #9 from Jonathan Wakely <redi at gcc dot gnu.org> ---
I doubt many people use those types at all in C++, so not defining them
probably won't upset anybody. On the other hand, what we do today results in an
unavoidable error.
This is probably a better way to do it:
--- a/libstdc++-v3/config/os/mingw32/os_defines.h
+++ b/libstdc++-v3/config/os/mingw32/os_defines.h
@@ -78,4 +78,9 @@
// See libstdc++/59807
#define _GTHREAD_USE_MUTEX_INIT_FUNC 1
+// See target/82626
+#if __FLT_EVAL_METHOD__ < 0 || __FLT_EVAL_METHOD__ > 2
+#define _GLIBCXX_NO_FLOAT_T_DOUBLE_T 1
+#endif
+
#endif
--- a/libstdc++-v3/include/c_global/cmath
+++ b/libstdc++-v3/include/c_global/cmath
@@ -1061,9 +1061,11 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#undef truncf
#undef truncl
+#ifndef _GLIBCXX_NO_FLOAT_T_DOUBLE_T
// types
using ::double_t;
using ::float_t;
+#endif
// functions
using ::acosh;
More information about the Gcc-bugs
mailing list