3#if defined(HAVE_TYPE_SIG_ATOMIC_T)
7#if defined(HAVE_TYPE_WINT_T) || defined(HAVE_TYPE_WCTRANS_T) || defined(HAVE_TYPE_WCTYPE_T)
18#define DEFINE(type, size) rb_hash_aset(s, rb_str_new_cstr(#type), INT2FIX(SIZEOF_##size))
19#define DEFINE_SIZE(type) rb_hash_aset(s, rb_str_new_cstr(#type), INT2FIX(sizeof(type)))
30#if SIZEOF_LONG_LONG != 0 && defined(HAVE_TRUE_LONG_LONG)
33#if SIZEOF___INT64 != 0
36#ifdef HAVE_TYPE___INT128
54#if SIZEOF_CLOCK_T != 0
60#if SIZEOF_PTRDIFF_T != 0
66#if SIZEOF_UINT8_T != 0
69#if SIZEOF_INT16_T != 0
72#if SIZEOF_UINT16_T != 0
75#if SIZEOF_INT32_T != 0
78#if SIZEOF_UINT32_T != 0
81#if SIZEOF_INT64_T != 0
84#if SIZEOF_UINT64_T != 0
87#if SIZEOF_INT128_T != 0
90#if SIZEOF_UINT128_T != 0
93#if SIZEOF_INTPTR_T != 0
96#if SIZEOF_UINTPTR_T != 0
99#if SIZEOF_SSIZE_T != 0
102#ifdef HAVE_TYPE_INT_LEAST8_T
105#ifdef HAVE_TYPE_INT_LEAST16_T
108#ifdef HAVE_TYPE_INT_LEAST32_T
111#ifdef HAVE_TYPE_INT_LEAST64_T
114#ifdef HAVE_TYPE_INT_FAST8_T
117#ifdef HAVE_TYPE_INT_FAST16_T
120#ifdef HAVE_TYPE_INT_FAST32_T
123#ifdef HAVE_TYPE_INT_FAST64_T
126#ifdef HAVE_TYPE_INTMAX_T
129#ifdef HAVE_TYPE_SIG_ATOMIC_T
132#ifdef HAVE_TYPE_WCHAR_T
135#ifdef HAVE_TYPE_WINT_T
138#ifdef HAVE_TYPE_WCTRANS_T
141#ifdef HAVE_TYPE_WCTYPE_T
144#ifdef HAVE_TYPE__BOOL
147#ifdef HAVE_TYPE_LONG_DOUBLE
150#ifdef HAVE_TYPE_FLOAT__COMPLEX
153#ifdef HAVE_TYPE_DOUBLE__COMPLEX
156#ifdef HAVE_TYPE_LONG_DOUBLE__COMPLEX
159#ifdef HAVE_TYPE_FLOAT__IMAGINARY
162#ifdef HAVE_TYPE_DOUBLE__IMAGINARY
165#ifdef HAVE_TYPE_LONG_DOUBLE__IMAGINARY
168#ifdef HAVE_TYPE___INT128
171#ifdef HAVE_TYPE___FLOAT128
174#ifdef HAVE_TYPE__DECIMAL32
177#ifdef HAVE_TYPE__DECIMAL64
180#ifdef HAVE_TYPE__DECIMAL128
183#ifdef HAVE_TYPE___M64
186#ifdef HAVE_TYPE___M128
189#ifdef HAVE_TYPE___FLOAT80
VALUE rb_define_module(const char *)
#define DEFINE_SIZE(type)
#define DEFINE(type, size)