* [PATCH] fix fesetround error checking
@ 2018-09-26 21:18 Szabolcs Nagy
0 siblings, 0 replies; only message in thread
From: Szabolcs Nagy @ 2018-09-26 21:18 UTC (permalink / raw)
To: musl
[-- Attachment #1: Type: text/plain, Size: 41 bytes --]
simple fix, not sure why this was wrong.
[-- Attachment #2: 0001-fix-fesetround-error-checking.patch --]
[-- Type: text/x-diff, Size: 901 bytes --]
From b9200510d08fa1b6aba8d1ee4ffbdf8892397cfa Mon Sep 17 00:00:00 2001
From: Szabolcs Nagy <nsz@port70.net>
Date: Mon, 10 Sep 2018 19:06:21 +0000
Subject: [PATCH] fix fesetround error checking
Rounding modes are not bit flags, but arbitrary non-negative integers.
---
src/fenv/fesetround.c | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/src/fenv/fesetround.c b/src/fenv/fesetround.c
index 50e58f11..4e2f164d 100644
--- a/src/fenv/fesetround.c
+++ b/src/fenv/fesetround.c
@@ -7,18 +7,17 @@ hidden int __fesetround(int);
int fesetround(int r)
{
- if (r & ~(
- FE_TONEAREST
+ if (r != FE_TONEAREST
#ifdef FE_DOWNWARD
- |FE_DOWNWARD
+ && r != FE_DOWNWARD
#endif
#ifdef FE_UPWARD
- |FE_UPWARD
+ && r != FE_UPWARD
#endif
#ifdef FE_TOWARDZERO
- |FE_TOWARDZERO
+ && r != FE_TOWARDZERO
#endif
- ))
+ )
return -1;
return __fesetround(r);
}
--
2.18.0
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2018-09-26 21:18 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-09-26 21:18 [PATCH] fix fesetround error checking Szabolcs Nagy
Code repositories for project(s) associated with this public inbox
https://git.vuxu.org/mirror/musl/
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).