commit
559de8f5f06da9022cbba70e22e14a710eb74513 redefined FLT_ROUNDS
to use an external function that can report the actual current
rounding mode, rather than always reporting round-to-nearest. however,
float.h did not include 'extern "C"' wrapping for C++, so C++ programs
using FLT_ROUNDS ended up with an unresolved reference to a
name-mangled C++ function __flt_rounds.
#ifndef _FLOAT_H
#define _FLOAT_H
+#ifdef __cplusplus
+extern "C" {
+#endif
+
int __flt_rounds(void);
#define FLT_ROUNDS (__flt_rounds())
#include <bits/float.h>
+#ifdef __cplusplus
+}
+#endif
+
#endif