projects
/
gnulib.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Test also the types 'long double' and 'int64_t'.
[gnulib.git]
/
tests
/
test-frexp.c
diff --git
a/tests/test-frexp.c
b/tests/test-frexp.c
index
cb80f56
..
0cd0823
100644
(file)
--- a/
tests/test-frexp.c
+++ b/
tests/test-frexp.c
@@
-24,7
+24,13
@@
#include <stdio.h>
#include <stdlib.h>
#include <stdio.h>
#include <stdlib.h>
-#include "isnand.h"
+#include "isnand-nolibm.h"
+#include "nan.h"
+
+/* Avoid some warnings from "gcc -Wshadow".
+ This file doesn't use the exp() function. */
+#undef exp
+#define exp exponent
#define ASSERT(expr) \
do \
#define ASSERT(expr) \
do \
@@
-32,11
+38,16
@@
if (!(expr)) \
{ \
fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \
if (!(expr)) \
{ \
fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \
+ fflush (stderr); \
abort (); \
} \
} \
while (0)
abort (); \
} \
} \
while (0)
+/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0.
+ So we use -zero instead. */
+double zero = 0.0;
+
static double
my_ldexp (double x, int d)
{
static double
my_ldexp (double x, int d)
{
@@
-61,7
+72,7
@@
main ()
{ /* NaN. */
int exp = -9999;
double mantissa;
{ /* NaN. */
int exp = -9999;
double mantissa;
- x = N
AN
;
+ x = N
aNd ()
;
mantissa = frexp (x, &exp);
ASSERT (isnand (mantissa));
}
mantissa = frexp (x, &exp);
ASSERT (isnand (mantissa));
}
@@
-95,7
+106,7
@@
main ()
{ /* Negative zero. */
int exp = -9999;
double mantissa;
{ /* Negative zero. */
int exp = -9999;
double mantissa;
- x = -
0.0
;
+ x = -
zero
;
mantissa = frexp (x, &exp);
ASSERT (exp == 0);
ASSERT (mantissa == x);
mantissa = frexp (x, &exp);
ASSERT (exp == 0);
ASSERT (mantissa == x);