1*c2c66affSColin Finck #include <cstdio>
2*c2c66affSColin Finck #include <cwchar>
3*c2c66affSColin Finck #include <climits>
4*c2c66affSColin Finck 
5*c2c66affSColin Finck #if !defined (CHAR_BIT)
6*c2c66affSColin Finck #  error Missing CHAR_BIT definition.
7*c2c66affSColin Finck #endif
8*c2c66affSColin Finck 
9*c2c66affSColin Finck #if (CHAR_BIT < 0)
10*c2c66affSColin Finck #  error Weird WCHAR_BIT value.
11*c2c66affSColin Finck #endif
12*c2c66affSColin Finck 
13*c2c66affSColin Finck #if !defined (CHAR_MAX)
14*c2c66affSColin Finck #  error Missing CHAR_MAX definition.
15*c2c66affSColin Finck #endif
16*c2c66affSColin Finck 
17*c2c66affSColin Finck #if !defined (CHAR_MIN)
18*c2c66affSColin Finck #  error Missing CHAR_MIN definition.
19*c2c66affSColin Finck #endif
20*c2c66affSColin Finck 
21*c2c66affSColin Finck #if !(CHAR_MIN < CHAR_MAX)
22*c2c66affSColin Finck #  error Weird CHAR_MIN or CHAR_MAX macro values.
23*c2c66affSColin Finck #endif
24*c2c66affSColin Finck 
25*c2c66affSColin Finck #if !defined (INT_MAX)
26*c2c66affSColin Finck #  error Missing INT_MAX definition.
27*c2c66affSColin Finck #endif
28*c2c66affSColin Finck 
29*c2c66affSColin Finck #if !defined (INT_MIN)
30*c2c66affSColin Finck #  error Missing INT_MIN definition.
31*c2c66affSColin Finck #endif
32*c2c66affSColin Finck 
33*c2c66affSColin Finck #if !(INT_MIN < INT_MAX)
34*c2c66affSColin Finck #  error Weird INT_MIN or INT_MAX macro values.
35*c2c66affSColin Finck #endif
36*c2c66affSColin Finck 
37*c2c66affSColin Finck #if !defined (LONG_MAX)
38*c2c66affSColin Finck #  error Missing LONG_MAX definition.
39*c2c66affSColin Finck #endif
40*c2c66affSColin Finck 
41*c2c66affSColin Finck #if !defined (LONG_MIN)
42*c2c66affSColin Finck #  error Missing LONG_MIN definition.
43*c2c66affSColin Finck #endif
44*c2c66affSColin Finck 
45*c2c66affSColin Finck #if !(LONG_MIN < LONG_MAX)
46*c2c66affSColin Finck #  error Weird LONG_MIN or LONG_MAX macro values.
47*c2c66affSColin Finck #endif
48*c2c66affSColin Finck 
49*c2c66affSColin Finck #if !defined (SCHAR_MAX)
50*c2c66affSColin Finck #  error Missing SCHAR_MAX definition.
51*c2c66affSColin Finck #endif
52*c2c66affSColin Finck 
53*c2c66affSColin Finck #if !defined (SCHAR_MIN)
54*c2c66affSColin Finck #  error Missing SCHAR_MIN definition.
55*c2c66affSColin Finck #endif
56*c2c66affSColin Finck 
57*c2c66affSColin Finck #if !(SCHAR_MIN < SCHAR_MAX)
58*c2c66affSColin Finck #  error Weird SCHAR_MIN or SCHAR_MAX macro values.
59*c2c66affSColin Finck #endif
60*c2c66affSColin Finck 
61*c2c66affSColin Finck #if !defined (SHRT_MAX)
62*c2c66affSColin Finck #  error Missing SHRT_MAX definition.
63*c2c66affSColin Finck #endif
64*c2c66affSColin Finck 
65*c2c66affSColin Finck #if !defined (SHRT_MIN)
66*c2c66affSColin Finck #  error Missing SHRT_MIN definition.
67*c2c66affSColin Finck #endif
68*c2c66affSColin Finck 
69*c2c66affSColin Finck #if !(SHRT_MIN < SHRT_MAX)
70*c2c66affSColin Finck #  error Weird SHRT_MIN or SHRT_MAX macro values.
71*c2c66affSColin Finck #endif
72*c2c66affSColin Finck 
73*c2c66affSColin Finck #if !defined (WCHAR_MIN)
74*c2c66affSColin Finck #  error Missing WCHAR_MIN definition.
75*c2c66affSColin Finck #endif
76*c2c66affSColin Finck 
77*c2c66affSColin Finck #if !defined (WCHAR_MAX)
78*c2c66affSColin Finck #  error Missing WCHAR_MAX definition.
79*c2c66affSColin Finck #endif
80*c2c66affSColin Finck 
81*c2c66affSColin Finck #if !(WCHAR_MIN < WCHAR_MAX)
82*c2c66affSColin Finck #  error Weird WCHAR_MIN or WCHAR_MAX macro value.
83*c2c66affSColin Finck #endif
84*c2c66affSColin Finck 
85*c2c66affSColin Finck #if !defined (UCHAR_MAX)
86*c2c66affSColin Finck #  error Missing UCHAR_MAX definition.
87*c2c66affSColin Finck #endif
88*c2c66affSColin Finck 
89*c2c66affSColin Finck #if (UCHAR_MAX < 0)
90*c2c66affSColin Finck #  error Weird UCHAR_MAX macro value.
91*c2c66affSColin Finck #endif
92*c2c66affSColin Finck 
93*c2c66affSColin Finck #if !defined (UINT_MAX)
94*c2c66affSColin Finck #  error Missing UINT_MAX definition.
95*c2c66affSColin Finck #endif
96*c2c66affSColin Finck 
97*c2c66affSColin Finck #if (UINT_MAX < 0)
98*c2c66affSColin Finck #  error Weird UINT_MAX macro value.
99*c2c66affSColin Finck #endif
100*c2c66affSColin Finck 
101*c2c66affSColin Finck #if !defined (ULONG_MAX)
102*c2c66affSColin Finck #  error Missing ULONG_MAX definition.
103*c2c66affSColin Finck #endif
104*c2c66affSColin Finck 
105*c2c66affSColin Finck #if (ULONG_MAX < 0)
106*c2c66affSColin Finck #  error Weird ULONG_MAX macro value.
107*c2c66affSColin Finck #endif
108*c2c66affSColin Finck 
109*c2c66affSColin Finck #if !defined (USHRT_MAX)
110*c2c66affSColin Finck #  error Missing USHRT_MAX definition.
111*c2c66affSColin Finck #endif
112*c2c66affSColin Finck 
113*c2c66affSColin Finck #if (USHRT_MAX < 0)
114*c2c66affSColin Finck #  error Weird USHRT_MAX macro value.
115*c2c66affSColin Finck #endif
116