1 //===----------------------------------------------------------------------===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 // AIX system headers need stdint.h to be re-enterable when macro _STD_TYPES_T 10 // is defined. This test case tests that after including sys/types.h which 11 // defines macro _STD_TYPES_T, includes stdint.h, and then undefines 12 // _STD_TYPES_T, stdint.h can be entered to get to macros like UINT32_MAX. 13 // 14 // REQUIRES: aix 15 // RUN: %compile -c 16 // RUN: %compile -c -D_XOPEN_SOURCE=700 17 18 // test <stdint.h> 19 // 20 // Test that limits macros are available when <stdint.h> is included with 21 // or without macro _XOPEN_SOURCE=700. 22 23 #include <sys/types.h> 24 #include <stdint.h> 25 26 #ifndef INT8_MIN 27 #error INT8_MIN not defined 28 #endif 29 30 #ifndef INT16_MIN 31 #error INT16_MIN not defined 32 #endif 33 34 #ifndef INT32_MIN 35 #error INT32_MIN not defined 36 #endif 37 38 #ifndef INT64_MIN 39 #error INT64_MIN not defined 40 #endif 41 42 #ifndef INT8_MAX 43 #error INT8_MAX not defined 44 #endif 45 46 #ifndef INT16_MAX 47 #error INT16_MAX not defined 48 #endif 49 50 #ifndef INT32_MAX 51 #error INT32_MAX not defined 52 #endif 53 54 #ifndef INT64_MAX 55 #error INT64_MAX not defined 56 #endif 57 58 #ifndef UINT8_MAX 59 #error UINT8_MAX not defined 60 #endif 61 62 #ifndef UINT16_MAX 63 #error UINT16_MAX not defined 64 #endif 65 66 #ifndef UINT32_MAX 67 #error UINT32_MAX not defined 68 #endif 69 70 #ifndef UINT64_MAX 71 #error UINT64_MAX not defined 72 #endif 73 74 #ifndef INT_LEAST8_MIN 75 #error INT_LEAST8_MIN not defined 76 #endif 77 78 #ifndef INT_LEAST16_MIN 79 #error INT_LEAST16_MIN not defined 80 #endif 81 82 #ifndef INT_LEAST32_MIN 83 #error INT_LEAST32_MIN not defined 84 #endif 85 86 #ifndef INT_LEAST64_MIN 87 #error INT_LEAST64_MIN not defined 88 #endif 89 90 #ifndef INT_LEAST8_MAX 91 #error INT_LEAST8_MAX not defined 92 #endif 93 94 #ifndef INT_LEAST16_MAX 95 #error INT_LEAST16_MAX not defined 96 #endif 97 98 #ifndef INT_LEAST32_MAX 99 #error INT_LEAST32_MAX not defined 100 #endif 101 102 #ifndef INT_LEAST64_MAX 103 #error INT_LEAST64_MAX not defined 104 #endif 105 106 #ifndef UINT_LEAST8_MAX 107 #error UINT_LEAST8_MAX not defined 108 #endif 109 110 #ifndef UINT_LEAST16_MAX 111 #error UINT_LEAST16_MAX not defined 112 #endif 113 114 #ifndef UINT_LEAST32_MAX 115 #error UINT_LEAST32_MAX not defined 116 #endif 117 118 #ifndef UINT_LEAST64_MAX 119 #error UINT_LEAST64_MAX not defined 120 #endif 121 122 #ifndef INT_FAST8_MIN 123 #error INT_FAST8_MIN not defined 124 #endif 125 126 #ifndef INT_FAST16_MIN 127 #error INT_FAST16_MIN not defined 128 #endif 129 130 #ifndef INT_FAST32_MIN 131 #error INT_FAST32_MIN not defined 132 #endif 133 134 #ifndef INT_FAST64_MIN 135 #error INT_FAST64_MIN not defined 136 #endif 137 138 #ifndef INT_FAST8_MAX 139 #error INT_FAST8_MAX not defined 140 #endif 141 142 #ifndef INT_FAST16_MAX 143 #error INT_FAST16_MAX not defined 144 #endif 145 146 #ifndef INT_FAST32_MAX 147 #error INT_FAST32_MAX not defined 148 #endif 149 150 #ifndef INT_FAST64_MAX 151 #error INT_FAST64_MAX not defined 152 #endif 153 154 #ifndef UINT_FAST8_MAX 155 #error UINT_FAST8_MAX not defined 156 #endif 157 158 #ifndef UINT_FAST16_MAX 159 #error UINT_FAST16_MAX not defined 160 #endif 161 162 #ifndef UINT_FAST32_MAX 163 #error UINT_FAST32_MAX not defined 164 #endif 165 166 #ifndef UINT_FAST64_MAX 167 #error UINT_FAST64_MAX not defined 168 #endif 169 170 #ifndef INTPTR_MIN 171 #error INTPTR_MIN not defined 172 #endif 173 174 #ifndef INTPTR_MAX 175 #error INTPTR_MAX not defined 176 #endif 177 178 #ifndef UINTPTR_MAX 179 #error UINTPTR_MAX not defined 180 #endif 181 182 #ifndef INTMAX_MIN 183 #error INTMAX_MIN not defined 184 #endif 185 186 #ifndef INTMAX_MAX 187 #error INTMAX_MAX not defined 188 #endif 189 190 #ifndef UINTMAX_MAX 191 #error UINTMAX_MAX not defined 192 #endif 193 194 #ifndef PTRDIFF_MIN 195 #error PTRDIFF_MIN not defined 196 #endif 197 198 #ifndef PTRDIFF_MAX 199 #error PTRDIFF_MAX not defined 200 #endif 201 202 #ifndef SIG_ATOMIC_MIN 203 #error SIG_ATOMIC_MIN not defined 204 #endif 205 206 #ifndef SIG_ATOMIC_MAX 207 #error SIG_ATOMIC_MAX not defined 208 #endif 209 210 #ifndef SIZE_MAX 211 #error SIZE_MAX not defined 212 #endif 213 214 #ifndef WCHAR_MIN 215 #error WCHAR_MIN not defined 216 #endif 217 218 #ifndef WCHAR_MAX 219 #error WCHAR_MAX not defined 220 #endif 221 222 #ifndef WINT_MIN 223 #error WINT_MIN not defined 224 #endif 225 226 #ifndef WINT_MAX 227 #error WINT_MAX not defined 228 #endif 229 230 #ifndef INT8_C 231 #error INT8_C not defined 232 #endif 233 234 #ifndef INT16_C 235 #error INT16_C not defined 236 #endif 237 238 #ifndef INT32_C 239 #error INT32_C not defined 240 #endif 241 242 #ifndef INT64_C 243 #error INT64_C not defined 244 #endif 245 246 #ifndef UINT8_C 247 #error UINT8_C not defined 248 #endif 249 250 #ifndef UINT16_C 251 #error UINT16_C not defined 252 #endif 253 254 #ifndef UINT32_C 255 #error UINT32_C not defined 256 #endif 257 258 #ifndef UINT64_C 259 #error UINT64_C not defined 260 #endif 261 262 #ifndef INTMAX_C 263 #error INTMAX_C not defined 264 #endif 265 266 #ifndef UINTMAX_C 267 #error UINTMAX_C not defined 268 #endif 269