60
#if defined __GNUC__ && __GNUC__ >= 4
61
#pragma GCC visibility push(default)
52
64
#define xmalloc ruby_xmalloc
53
65
#define xmalloc2 ruby_xmalloc2
54
66
#define xcalloc ruby_xcalloc
82
94
# define SIZEOF_BDIGITS SIZEOF_INT
83
95
# define BDIGIT_DBL unsigned LONG_LONG
84
96
# define BDIGIT_DBL_SIGNED LONG_LONG
97
# define PRI_BDIGIT_PREFIX ""
98
# define PRI_BDIGIT_DBL_PREFIX PRI_LL_PREFIX
85
99
#elif SIZEOF_INT*2 <= SIZEOF_LONG
86
100
# define BDIGIT unsigned int
87
101
# define SIZEOF_BDIGITS SIZEOF_INT
88
102
# define BDIGIT_DBL unsigned long
89
103
# define BDIGIT_DBL_SIGNED long
104
# define PRI_BDIGIT_PREFIX ""
105
# define PRI_BDIGIT_DBL_PREFIX "l"
90
106
#elif SIZEOF_SHORT*2 <= SIZEOF_LONG
91
107
# define BDIGIT unsigned short
92
108
# define SIZEOF_BDIGITS SIZEOF_SHORT
93
109
# define BDIGIT_DBL unsigned long
94
110
# define BDIGIT_DBL_SIGNED long
111
# define PRI_BDIGIT_PREFIX "h"
112
# define PRI_BDIGIT_DBL_PREFIX "l"
96
114
# define BDIGIT unsigned short
97
115
# define SIZEOF_BDIGITS (SIZEOF_LONG/2)
98
116
# define BDIGIT_DBL unsigned long
99
117
# define BDIGIT_DBL_SIGNED long
103
# define HAVE_INFINITY
106
extern const unsigned char rb_infinity[];
107
# define INFINITY (*(float *)rb_infinity)
114
extern const unsigned char rb_nan[];
115
# define NAN (*(float *)rb_nan)
118
# define PRI_BDIGIT_PREFIX "h"
119
# define PRI_BDIGIT_DBL_PREFIX "l"
122
#define PRIdBDIGIT PRI_BDIGIT_PREFIX"d"
123
#define PRIiBDIGIT PRI_BDIGIT_PREFIX"i"
124
#define PRIoBDIGIT PRI_BDIGIT_PREFIX"o"
125
#define PRIuBDIGIT PRI_BDIGIT_PREFIX"u"
126
#define PRIxBDIGIT PRI_BDIGIT_PREFIX"x"
127
#define PRIXBDIGIT PRI_BDIGIT_PREFIX"X"
129
#define PRIdBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"d"
130
#define PRIiBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"i"
131
#define PRIoBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"o"
132
#define PRIuBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"u"
133
#define PRIxBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"x"
134
#define PRIXBDIGIT_DBL PRI_BDIGIT_DBL_PREFIX"X"
118
136
#ifdef __CYGWIN__