1#include <fenv.h>
2#include <math.h>
3
4float nearbyintf(float x)
5{
6#ifdef FE_INEXACT
7	#pragma STDC FENV_ACCESS ON
8	int e;
9
10	e = fetestexcept(FE_INEXACT);
11#endif
12	x = rintf(x);
13#ifdef FE_INEXACT
14	if (!e)
15		feclearexcept(FE_INEXACT);
16#endif
17	return x;
18}
19