From 7ef8a7379f7f7d09e71ccae2a0b688c3cd80423f Mon Sep 17 00:00:00 2001 From: Jakob Kaivo Date: Fri, 8 Feb 2019 18:42:39 -0500 Subject: merge sources into single tree --- src/math/modf.c | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 src/math/modf.c (limited to 'src/math/modf.c') diff --git a/src/math/modf.c b/src/math/modf.c new file mode 100644 index 00000000..73c5d3f3 --- /dev/null +++ b/src/math/modf.c @@ -0,0 +1,33 @@ +# define TGSOURCE "modf.c" +#include +#include "nonstd/tgmath.h" +#include "errno.h" + +/** decompose floating-point numbers **/ +TYPE TGFN(modf)(TYPE value, TYPE *iptr) +{ + if (0) { + errno = ERANGE; /* The result cannot be represented */ + /* RETURN_FAILURE(CONSTANT(HUGE_VAL), A range error occurred); */ + return TGHUGE; + } + + /* RETURN_SUCCESS(the signed fractional part of ARGUMENT(value)); */ + (void)iptr; + return value; +} + +/*** +break ARGUMENT(value) into integral and fractional parts. +Each part has the same sign as ARGUMENT(value). The integral part is converted to +the same floating-point type as ARGUMENT(value) and stored in the object pointed to +by ARGUMENT(iptr). +***/ + +/* +IMPLEMENTATION(The value returned on a domain error, CONSTANT(HUGE_VAL)) +LINK(m) +*/ +/* +STDC(1) +*/ -- cgit v1.2.1