X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-truncf1.c;h=011d2c4b1037b8c99a683ebd8f63643eb15a63be;hb=23eecb48e39afd0d267d64d40ba6bf97aa865e13;hp=44fd8c11faac0768a5d104279fef47bda26ecb64;hpb=89ae4589dd58d12e7cbcf0e92c1d828c1e430f97;p=gnulib.git diff --git a/tests/test-truncf1.c b/tests/test-truncf1.c index 44fd8c11f..011d2c4b1 100644 --- a/tests/test-truncf1.c +++ b/tests/test-truncf1.c @@ -1,5 +1,5 @@ /* Test of rounding towards zero. - Copyright (C) 2007-2009 Free Software Foundation, Inc. + Copyright (C) 2007-2013 Free Software Foundation, Inc. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -23,34 +23,18 @@ #include "signature.h" SIGNATURE_CHECK (truncf, float, (float)); -#include -#include - #include "isnanf-nolibm.h" +#include "minus-zero.h" +#include "infinity.h" #include "nan.h" - -#define ASSERT(expr) \ - do \ - { \ - if (!(expr)) \ - { \ - fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ - fflush (stderr); \ - abort (); \ - } \ - } \ - while (0) - -/* HP cc on HP-UX 10.20 has a bug with the constant expression -0.0f. - So we use -zero instead. */ -float zero = 0.0f; +#include "macros.h" int main () { /* Zero. */ ASSERT (truncf (0.0f) == 0.0f); - ASSERT (truncf (-zero) == 0.0f); + ASSERT (truncf (minus_zerof) == 0.0f); /* Positive numbers. */ ASSERT (truncf (0.3f) == 0.0f); ASSERT (truncf (0.7f) == 0.0f); @@ -72,8 +56,8 @@ main () ASSERT (truncf (-65536.0f) == -65536.0f); ASSERT (truncf (-2.341e31f) == -2.341e31f); /* Infinite numbers. */ - ASSERT (truncf (1.0f / 0.0f) == 1.0f / 0.0f); - ASSERT (truncf (-1.0f / 0.0f) == -1.0f / 0.0f); + ASSERT (truncf (Infinityf ()) == Infinityf ()); + ASSERT (truncf (- Infinityf ()) == - Infinityf ()); /* NaNs. */ ASSERT (isnanf (truncf (NaNf ())));