Use FLT_ROUNDS in LP64 strtold.
Change-Id: I75323be6e1cadb00770fcdd08422836b03737416
This commit is contained in:
parent
4abaa576e8
commit
20828db758
|
@ -26,6 +26,7 @@
|
|||
* SUCH DAMAGE.
|
||||
*/
|
||||
|
||||
#include <float.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
extern "C" int __strtorQ(const char*, char**, int, void*);
|
||||
|
@ -33,8 +34,7 @@ extern "C" int __strtorQ(const char*, char**, int, void*);
|
|||
long double strtold(const char* s, char** end_ptr) {
|
||||
#if __LP64__
|
||||
long double result;
|
||||
// TODO: use the current rounding mode?
|
||||
__strtorQ(s, end_ptr, 1 /* FPI_Round_near */, &result);
|
||||
__strtorQ(s, end_ptr, FLT_ROUNDS, &result);
|
||||
return result;
|
||||
#else
|
||||
// This is fine for LP32 where long double is just double.
|
||||
|
|
Loading…
Reference in New Issue