X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=tests%2Ftest-isfinite.c;h=9e8dd0dad86d33336ae84d4e31e2f9411ccae645;hb=5d706a3590ab4b393e845a1d73787faaae48d408;hp=03f5cac0c5e202fe105a3bffc81a46502714d653;hpb=441aa3044f43e5572f58c354f01e6bc070acd5c7;p=gnulib.git diff --git a/tests/test-isfinite.c b/tests/test-isfinite.c index 03f5cac0c..9e8dd0dad 100644 --- a/tests/test-isfinite.c +++ b/tests/test-isfinite.c @@ -1,5 +1,5 @@ /* Test of isfinite() substitute. - Copyright (C) 2007-2008 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 @@ -19,24 +19,18 @@ #include +#include + +/* isfinite must be a macro. */ +#ifndef isfinite +# error missing declaration +#endif + #include #include -#include -#include -#include - -#define ASSERT(expr) \ - do \ - { \ - if (!(expr)) \ - { \ - fprintf (stderr, "%s:%d: assertion failed\n", __FILE__, __LINE__); \ - fflush (stderr); \ - abort (); \ - } \ - } \ - while (0) +#include "infinity.h" +#include "macros.h" float zerof = 0.0f; double zerod = 0.0; @@ -58,8 +52,8 @@ test_isfinitef () ASSERT (isfinite (-2.718e30f)); ASSERT (isfinite (-2.718e-30f)); /* Infinite values. */ - ASSERT (!isfinite (1.0f / 0.0f)); - ASSERT (!isfinite (-1.0f / 0.0f)); + ASSERT (!isfinite (Infinityf ())); + ASSERT (!isfinite (- Infinityf ())); /* Quiet NaN. */ ASSERT (!isfinite (zerof / zerof)); #if defined FLT_EXPBIT0_WORD && defined FLT_EXPBIT0_BIT @@ -102,8 +96,8 @@ test_isfinited () ASSERT (isfinite (-2.718e30)); ASSERT (isfinite (-2.718e-30)); /* Infinite values. */ - ASSERT (!isfinite (1.0 / 0.0)); - ASSERT (!isfinite (-1.0 / 0.0)); + ASSERT (!isfinite (Infinityd ())); + ASSERT (!isfinite (- Infinityd ())); /* Quiet NaN. */ ASSERT (!isfinite (zerod / zerod)); #if defined DBL_EXPBIT0_WORD && defined DBL_EXPBIT0_BIT @@ -149,8 +143,8 @@ test_isfinitel () ASSERT (isfinite (-2.718e30L)); ASSERT (isfinite (-2.718e-30L)); /* Infinite values. */ - ASSERT (!isfinite (1.0L / 0.0L)); - ASSERT (!isfinite (-1.0L / 0.0L)); + ASSERT (!isfinite (Infinityl ())); + ASSERT (!isfinite (- Infinityl ())); /* Quiet NaN. */ ASSERT (!isfinite (zerol / zerol)); @@ -172,7 +166,7 @@ test_isfinitel () } #endif -#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) +#if ((defined __ia64 && LDBL_MANT_DIG == 64) || (defined __x86_64__ || defined __amd64__) || (defined __i386 || defined __i386__ || defined _I386 || defined _M_IX86 || defined _X86_)) && !HAVE_SAME_LONG_DOUBLE_AS_DOUBLE /* Representation of an 80-bit 'long double' as an initializer for a sequence of 'unsigned int' words. */ # ifdef WORDS_BIGENDIAN