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);
}