libstdc++ provides the fenv.h found and for uclibc default toolchains
the bits/c++config.h has _GLIBCXX_HAVE_FENV_H undefined leading to
no import of the uclibc fenv.h
Change-Id: I53173b099f3d8791f527f1ccb60991de57cd19db
Filed: https://bugs.busybox.net/show_bug.cgi?id=4484
Reviewed-by: Harald Fernengel <harald.fernengel@nokia.com>
#include <qlocale.h>
#include <qnumeric.h>
-#ifdef Q_OS_LINUX
+#if defined(Q_OS_LINUX) && !defined(__UCLIBC__)
+# define QT_USE_FENV
+#endif
+
+#ifdef QT_USE_FENV
# include <fenv.h>
#endif
_control87( 0 | _EM_INEXACT, _MCW_EM );
#endif
-#ifdef Q_OS_LINUX
+#ifdef QT_USE_FENV
fenv_t envp;
fegetenv(&envp);
feclearexcept(FE_ALL_EXCEPT);
_control87(oldbits, 0xFFFFF);
#endif
-#ifdef Q_OS_LINUX
+#ifdef QT_USE_FENV
fesetenv(&envp);
#endif
}
}
}
-#if !defined(Q_OS_IRIX) && !defined(Q_OS_AIX) && !defined(Q_CC_MSVC) && !defined(Q_OS_SOLARIS)
+#if !defined(Q_OS_IRIX) && !defined(Q_OS_AIX) && !defined(Q_CC_MSVC) && !defined(Q_OS_SOLARIS) && !defined(__UCLIBC__)
#include <fenv.h>
static const QString fpeExceptionString(int exception)