test: Define optional exception classes

According to musl libc author:

"C99 requires the FE_ macros to be defined if and only if the exception they
correspond to is supported"

So we define these macros to 0 if they are not supported. Support for these FPU
exceptions is not necessary for correct functionality, but makes some tests less
effective.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=55771
Signed-off-by: Uli Schlachter <psychon@znc.in>
This commit is contained in:
Uli Schlachter 2012-10-16 17:09:42 +02:00
parent db488a1703
commit d5f9c694b9
3 changed files with 20 additions and 7 deletions

View file

@ -35,9 +35,6 @@
#include <stdlib.h>
#include <stdarg.h>
#include <ctype.h>
#if HAVE_FEENABLEEXCEPT
#include <fenv.h>
#endif
#include <assert.h>
#if HAVE_UNISTD_H
#include <unistd.h>

View file

@ -62,6 +62,26 @@ typedef unsigned __int64 uint64_t;
#endif
#if HAVE_FENV_H
# include <fenv.h>
#endif
/* The following are optional in C99, so define them if they aren't yet */
#ifndef FE_DIVBYZERO
#define FE_DIVBYZERO 0
#endif
#ifndef FE_INEXACT
#define FE_INEXACT 0
#endif
#ifndef FE_INVALID
#define FE_INVALID 0
#endif
#ifndef FE_OVERFLOW
#define FE_OVERFLOW 0
#endif
#ifndef FE_UNDERFLOW
#define FE_UNDERFLOW 0
#endif
#include <math.h>
static inline double

View file

@ -33,10 +33,6 @@
#define INFINITY HUGE_VAL
#endif
#if HAVE_FENV_H
# include <fenv.h>
#endif
static cairo_test_status_t
draw (cairo_t *cr, int width, int height)
{