]> git.saurik.com Git - redis.git/blame - src/solarisfixes.h
diskstore bug fixing and negative cache proper implementation
[redis.git] / src / solarisfixes.h
CommitLineData
5043dff3 1/* Solaris specific fixes */
2
0bc1b2f6 3#if defined(__GNUC__)
abe18d0e 4#include <math.h>
5043dff3 5#undef isnan
6#define isnan(x) \
7 __extension__({ __typeof (x) __x_a = (x); \
8 __builtin_expect(__x_a != __x_a, 0); })
9
10#undef isfinite
11#define isfinite(x) \
12 __extension__ ({ __typeof (x) __x_f = (x); \
13 __builtin_expect(!isnan(__x_f - __x_f), 1); })
14
15#undef isinf
16#define isinf(x) \
17 __extension__ ({ __typeof (x) __x_i = (x); \
18 __builtin_expect(!isnan(__x_i) && !isfinite(__x_i), 0); })
9caf1a20 19
20#define u_int uint
9b883415 21#define u_int32_t uint32_t
0bc1b2f6 22#endif /* __GNUC__ */