@cpp-linter/clang-tidy-darwin-x64 13.0.0 → 16.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (203) hide show
  1. package/README.md +2 -2
  2. package/bin/clang-tidy +2 -2
  3. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_complex_builtins.h +3 -3
  4. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_intrinsics.h +38 -6
  5. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_libdevice_declares.h +6 -0
  6. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math.h +1 -1
  7. package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_runtime_wrapper.h +62 -7
  8. package/lib/clang/16/include/__clang_cuda_texture_intrinsics.h +742 -0
  9. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_libdevice_declares.h +5 -0
  10. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_math.h +10 -13
  11. package/lib/clang/{13.0.0 → 16}/include/__clang_hip_runtime_wrapper.h +18 -4
  12. package/lib/clang/16/include/__clang_hip_stdlib.h +43 -0
  13. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_aes.h +1 -1
  14. package/lib/clang/{13.0.0 → 16}/include/__wmmintrin_pclmul.h +10 -10
  15. package/lib/clang/{13.0.0 → 16}/include/altivec.h +691 -342
  16. package/lib/clang/{13.0.0 → 16}/include/ammintrin.h +4 -0
  17. package/lib/clang/16/include/amxfp16intrin.h +58 -0
  18. package/lib/clang/{13.0.0 → 16}/include/amxintrin.h +49 -18
  19. package/lib/clang/{13.0.0 → 16}/include/arm_acle.h +80 -73
  20. package/lib/clang/{13.0.0 → 16}/include/arm_fp16.h +90 -90
  21. package/lib/clang/{13.0.0 → 16}/include/arm_neon.h +28607 -28779
  22. package/lib/clang/16/include/arm_neon_sve_bridge.h +182 -0
  23. package/lib/clang/{13.0.0 → 16}/include/arm_sve.h +7848 -7996
  24. package/lib/clang/{13.0.0 → 16}/include/avx2intrin.h +189 -189
  25. package/lib/clang/{13.0.0 → 16}/include/avx512bf16intrin.h +21 -18
  26. package/lib/clang/{13.0.0 → 16}/include/avx512bwintrin.h +83 -83
  27. package/lib/clang/{13.0.0 → 16}/include/avx512dqintrin.h +365 -365
  28. package/lib/clang/{13.0.0 → 16}/include/avx512erintrin.h +102 -102
  29. package/lib/clang/{13.0.0 → 16}/include/avx512fintrin.h +1627 -1620
  30. package/lib/clang/16/include/avx512fp16intrin.h +3346 -0
  31. package/lib/clang/{13.0.0 → 16}/include/avx512ifmavlintrin.h +13 -27
  32. package/lib/clang/{13.0.0 → 16}/include/avx512vbmi2intrin.h +48 -48
  33. package/lib/clang/{13.0.0 → 16}/include/avx512vlbf16intrin.h +82 -41
  34. package/lib/clang/{13.0.0 → 16}/include/avx512vlbwintrin.h +454 -102
  35. package/lib/clang/{13.0.0 → 16}/include/avx512vldqintrin.h +134 -134
  36. package/lib/clang/16/include/avx512vlfp16intrin.h +2071 -0
  37. package/lib/clang/{13.0.0 → 16}/include/avx512vlintrin.h +596 -610
  38. package/lib/clang/{13.0.0 → 16}/include/avx512vlvbmi2intrin.h +96 -96
  39. package/lib/clang/{13.0.0 → 16}/include/avx512vlvnniintrin.h +24 -24
  40. package/lib/clang/16/include/avxifmaintrin.h +177 -0
  41. package/lib/clang/{13.0.0 → 16}/include/avxintrin.h +266 -224
  42. package/lib/clang/16/include/avxneconvertintrin.h +484 -0
  43. package/lib/clang/16/include/avxvnniint8intrin.h +471 -0
  44. package/lib/clang/{13.0.0 → 16}/include/avxvnniintrin.h +16 -16
  45. package/lib/clang/{13.0.0 → 16}/include/bmiintrin.h +6 -2
  46. package/lib/clang/{13.0.0 → 16}/include/cetintrin.h +20 -4
  47. package/lib/clang/16/include/cmpccxaddintrin.h +70 -0
  48. package/lib/clang/{13.0.0 → 16}/include/cpuid.h +14 -2
  49. package/lib/clang/16/include/crc32intrin.h +100 -0
  50. package/lib/clang/16/include/cuda_wrappers/cmath +90 -0
  51. package/lib/clang/{13.0.0 → 16}/include/emmintrin.h +573 -779
  52. package/lib/clang/{13.0.0 → 16}/include/f16cintrin.h +4 -4
  53. package/lib/clang/{13.0.0 → 16}/include/float.h +22 -6
  54. package/lib/clang/{13.0.0 → 16}/include/gfniintrin.h +54 -53
  55. package/lib/clang/{13.0.0 → 16}/include/hexagon_protos.h +0 -11
  56. package/lib/clang/{13.0.0 → 16}/include/hexagon_types.h +0 -32
  57. package/lib/clang/16/include/hlsl/hlsl_basic_types.h +67 -0
  58. package/lib/clang/16/include/hlsl/hlsl_intrinsics.h +223 -0
  59. package/lib/clang/16/include/hlsl.h +15 -0
  60. package/lib/clang/{13.0.0 → 16}/include/hresetintrin.h +2 -2
  61. package/lib/clang/{13.0.0 → 16}/include/hvx_hexagon_protos.h +1200 -409
  62. package/lib/clang/{13.0.0 → 16}/include/ia32intrin.h +17 -17
  63. package/lib/clang/{13.0.0 → 16}/include/immintrin.h +74 -24
  64. package/lib/clang/{13.0.0 → 16}/include/intrin.h +34 -35
  65. package/lib/clang/{13.0.0 → 16}/include/keylockerintrin.h +24 -30
  66. package/lib/clang/16/include/larchintrin.h +234 -0
  67. package/lib/clang/{13.0.0 → 16}/include/limits.h +22 -1
  68. package/lib/clang/{13.0.0 → 16}/include/mm_malloc.h +3 -3
  69. package/lib/clang/{13.0.0 → 16}/include/mmintrin.h +4 -0
  70. package/lib/clang/{13.0.0 → 16}/include/nmmintrin.h +4 -0
  71. package/lib/clang/{13.0.0 → 16}/include/opencl-c-base.h +98 -11
  72. package/lib/clang/{13.0.0 → 16}/include/opencl-c.h +7252 -6208
  73. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex +10 -1
  74. package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex.h +9 -0
  75. package/lib/clang/{13.0.0 → 16}/include/pmmintrin.h +5 -1
  76. package/lib/clang/16/include/ppc_wrappers/bmi2intrin.h +134 -0
  77. package/lib/clang/16/include/ppc_wrappers/bmiintrin.h +165 -0
  78. package/lib/clang/16/include/ppc_wrappers/emmintrin.h +2268 -0
  79. package/lib/clang/16/include/ppc_wrappers/immintrin.h +27 -0
  80. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mm_malloc.h +12 -17
  81. package/lib/clang/{13.0.0 → 16}/include/ppc_wrappers/mmintrin.h +389 -386
  82. package/lib/clang/16/include/ppc_wrappers/pmmintrin.h +145 -0
  83. package/lib/clang/16/include/ppc_wrappers/smmintrin.h +663 -0
  84. package/lib/clang/16/include/ppc_wrappers/tmmintrin.h +453 -0
  85. package/lib/clang/{13.0.0/include/stdnoreturn.h → 16/include/ppc_wrappers/x86gprintrin.h} +7 -6
  86. package/lib/clang/16/include/ppc_wrappers/x86intrin.h +28 -0
  87. package/lib/clang/16/include/ppc_wrappers/xmmintrin.h +1827 -0
  88. package/lib/clang/16/include/prfchiintrin.h +61 -0
  89. package/lib/clang/{13.0.0 → 16}/include/prfchwintrin.h +5 -2
  90. package/lib/clang/16/include/raointintrin.h +203 -0
  91. package/lib/clang/16/include/rdpruintrin.h +57 -0
  92. package/lib/clang/{13.0.0 → 16}/include/rdseedintrin.h +3 -3
  93. package/lib/clang/16/include/riscv_vector.h +211 -0
  94. package/lib/clang/{13.0.0 → 16}/include/rtmintrin.h +1 -1
  95. package/lib/clang/{13.0.0 → 16}/include/smmintrin.h +260 -362
  96. package/lib/clang/{13.0.0 → 16}/include/stdarg.h +23 -7
  97. package/lib/clang/{13.0.0 → 16}/include/stdatomic.h +14 -1
  98. package/lib/clang/{13.0.0 → 16}/include/stdbool.h +10 -7
  99. package/lib/clang/{13.0.0 → 16}/include/stddef.h +9 -2
  100. package/lib/clang/{13.0.0 → 16}/include/stdint.h +311 -25
  101. package/lib/clang/16/include/stdnoreturn.h +29 -0
  102. package/lib/clang/{13.0.0 → 16}/include/tmmintrin.h +10 -6
  103. package/lib/clang/{13.0.0 → 16}/include/uintrintrin.h +8 -8
  104. package/lib/clang/{13.0.0 → 16}/include/unwind.h +12 -7
  105. package/lib/clang/{13.0.0 → 16}/include/vaesintrin.h +1 -1
  106. package/lib/clang/16/include/velintrin.h +71 -0
  107. package/lib/clang/16/include/velintrin_approx.h +120 -0
  108. package/lib/clang/16/include/velintrin_gen.h +1257 -0
  109. package/lib/clang/{13.0.0 → 16}/include/vpclmulqdqintrin.h +6 -6
  110. package/lib/clang/{13.0.0 → 16}/include/wasm_simd128.h +169 -26
  111. package/lib/clang/{13.0.0 → 16}/include/wmmintrin.h +4 -0
  112. package/lib/clang/16/include/x86gprintrin.h +65 -0
  113. package/lib/clang/{13.0.0 → 16}/include/x86intrin.h +4 -0
  114. package/lib/clang/{13.0.0 → 16}/include/xmmintrin.h +19 -10
  115. package/lib/clang/{13.0.0 → 16}/include/xopintrin.h +31 -31
  116. package/package.json +6 -6
  117. package/lib/clang/13.0.0/include/ppc_wrappers/emmintrin.h +0 -2324
  118. package/lib/clang/13.0.0/include/ppc_wrappers/pmmintrin.h +0 -150
  119. package/lib/clang/13.0.0/include/ppc_wrappers/smmintrin.h +0 -109
  120. package/lib/clang/13.0.0/include/ppc_wrappers/tmmintrin.h +0 -495
  121. package/lib/clang/13.0.0/include/ppc_wrappers/xmmintrin.h +0 -1843
  122. package/lib/clang/13.0.0/include/riscv_vector.h +0 -123865
  123. package/lib/clang/13.0.0/include/x86gprintrin.h +0 -23
  124. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_builtin_vars.h +0 -0
  125. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_cmath.h +0 -0
  126. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_device_functions.h +0 -0
  127. /package/lib/clang/{13.0.0 → 16}/include/__clang_cuda_math_forward_declares.h +0 -0
  128. /package/lib/clang/{13.0.0 → 16}/include/__clang_hip_cmath.h +0 -0
  129. /package/lib/clang/{13.0.0 → 16}/include/__stddef_max_align_t.h +0 -0
  130. /package/lib/clang/{13.0.0 → 16}/include/adxintrin.h +0 -0
  131. /package/lib/clang/{13.0.0 → 16}/include/arm64intr.h +0 -0
  132. /package/lib/clang/{13.0.0 → 16}/include/arm_bf16.h +0 -0
  133. /package/lib/clang/{13.0.0 → 16}/include/arm_cde.h +0 -0
  134. /package/lib/clang/{13.0.0 → 16}/include/arm_cmse.h +0 -0
  135. /package/lib/clang/{13.0.0 → 16}/include/arm_mve.h +0 -0
  136. /package/lib/clang/{13.0.0 → 16}/include/armintr.h +0 -0
  137. /package/lib/clang/{13.0.0 → 16}/include/avx512bitalgintrin.h +0 -0
  138. /package/lib/clang/{13.0.0 → 16}/include/avx512cdintrin.h +0 -0
  139. /package/lib/clang/{13.0.0 → 16}/include/avx512ifmaintrin.h +0 -0
  140. /package/lib/clang/{13.0.0 → 16}/include/avx512pfintrin.h +0 -0
  141. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmiintrin.h +0 -0
  142. /package/lib/clang/{13.0.0 → 16}/include/avx512vbmivlintrin.h +0 -0
  143. /package/lib/clang/{13.0.0 → 16}/include/avx512vlbitalgintrin.h +0 -0
  144. /package/lib/clang/{13.0.0 → 16}/include/avx512vlcdintrin.h +0 -0
  145. /package/lib/clang/{13.0.0 → 16}/include/avx512vlvp2intersectintrin.h +0 -0
  146. /package/lib/clang/{13.0.0 → 16}/include/avx512vnniintrin.h +0 -0
  147. /package/lib/clang/{13.0.0 → 16}/include/avx512vp2intersectintrin.h +0 -0
  148. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqintrin.h +0 -0
  149. /package/lib/clang/{13.0.0 → 16}/include/avx512vpopcntdqvlintrin.h +0 -0
  150. /package/lib/clang/{13.0.0 → 16}/include/bmi2intrin.h +0 -0
  151. /package/lib/clang/{13.0.0 → 16}/include/builtins.h +0 -0
  152. /package/lib/clang/{13.0.0 → 16}/include/cet.h +0 -0
  153. /package/lib/clang/{13.0.0 → 16}/include/cldemoteintrin.h +0 -0
  154. /package/lib/clang/{13.0.0 → 16}/include/clflushoptintrin.h +0 -0
  155. /package/lib/clang/{13.0.0 → 16}/include/clwbintrin.h +0 -0
  156. /package/lib/clang/{13.0.0 → 16}/include/clzerointrin.h +0 -0
  157. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/algorithm +0 -0
  158. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/complex +0 -0
  159. /package/lib/clang/{13.0.0 → 16}/include/cuda_wrappers/new +0 -0
  160. /package/lib/clang/{13.0.0 → 16}/include/enqcmdintrin.h +0 -0
  161. /package/lib/clang/{13.0.0 → 16}/include/fma4intrin.h +0 -0
  162. /package/lib/clang/{13.0.0 → 16}/include/fmaintrin.h +0 -0
  163. /package/lib/clang/{13.0.0 → 16}/include/fxsrintrin.h +0 -0
  164. /package/lib/clang/{13.0.0 → 16}/include/hexagon_circ_brev_intrinsics.h +0 -0
  165. /package/lib/clang/{13.0.0 → 16}/include/htmintrin.h +0 -0
  166. /package/lib/clang/{13.0.0 → 16}/include/htmxlintrin.h +0 -0
  167. /package/lib/clang/{13.0.0 → 16}/include/inttypes.h +0 -0
  168. /package/lib/clang/{13.0.0 → 16}/include/invpcidintrin.h +0 -0
  169. /package/lib/clang/{13.0.0 → 16}/include/iso646.h +0 -0
  170. /package/lib/clang/{13.0.0 → 16}/include/lwpintrin.h +0 -0
  171. /package/lib/clang/{13.0.0 → 16}/include/lzcntintrin.h +0 -0
  172. /package/lib/clang/{13.0.0 → 16}/include/mm3dnow.h +0 -0
  173. /package/lib/clang/{13.0.0 → 16}/include/module.modulemap +0 -0
  174. /package/lib/clang/{13.0.0 → 16}/include/movdirintrin.h +0 -0
  175. /package/lib/clang/{13.0.0 → 16}/include/msa.h +0 -0
  176. /package/lib/clang/{13.0.0 → 16}/include/mwaitxintrin.h +0 -0
  177. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/__clang_openmp_device_functions.h +0 -0
  178. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/cmath +0 -0
  179. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/complex_cmath.h +0 -0
  180. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/math.h +0 -0
  181. /package/lib/clang/{13.0.0 → 16}/include/openmp_wrappers/new +0 -0
  182. /package/lib/clang/{13.0.0 → 16}/include/pconfigintrin.h +0 -0
  183. /package/lib/clang/{13.0.0 → 16}/include/pkuintrin.h +0 -0
  184. /package/lib/clang/{13.0.0 → 16}/include/popcntintrin.h +0 -0
  185. /package/lib/clang/{13.0.0 → 16}/include/ptwriteintrin.h +0 -0
  186. /package/lib/clang/{13.0.0 → 16}/include/s390intrin.h +0 -0
  187. /package/lib/clang/{13.0.0 → 16}/include/serializeintrin.h +0 -0
  188. /package/lib/clang/{13.0.0 → 16}/include/sgxintrin.h +0 -0
  189. /package/lib/clang/{13.0.0 → 16}/include/shaintrin.h +0 -0
  190. /package/lib/clang/{13.0.0 → 16}/include/stdalign.h +0 -0
  191. /package/lib/clang/{13.0.0 → 16}/include/tbmintrin.h +0 -0
  192. /package/lib/clang/{13.0.0 → 16}/include/tgmath.h +0 -0
  193. /package/lib/clang/{13.0.0 → 16}/include/tsxldtrkintrin.h +0 -0
  194. /package/lib/clang/{13.0.0 → 16}/include/vadefs.h +0 -0
  195. /package/lib/clang/{13.0.0 → 16}/include/varargs.h +0 -0
  196. /package/lib/clang/{13.0.0 → 16}/include/vecintrin.h +0 -0
  197. /package/lib/clang/{13.0.0 → 16}/include/waitpkgintrin.h +0 -0
  198. /package/lib/clang/{13.0.0 → 16}/include/wbnoinvdintrin.h +0 -0
  199. /package/lib/clang/{13.0.0 → 16}/include/xsavecintrin.h +0 -0
  200. /package/lib/clang/{13.0.0 → 16}/include/xsaveintrin.h +0 -0
  201. /package/lib/clang/{13.0.0 → 16}/include/xsaveoptintrin.h +0 -0
  202. /package/lib/clang/{13.0.0 → 16}/include/xsavesintrin.h +0 -0
  203. /package/lib/clang/{13.0.0 → 16}/include/xtestintrin.h +0 -0
@@ -96,13 +96,21 @@
96
96
  typedef __INT64_TYPE__ int64_t;
97
97
  # endif /* __int8_t_defined */
98
98
  typedef __UINT64_TYPE__ uint64_t;
99
+ # undef __int_least64_t
99
100
  # define __int_least64_t int64_t
101
+ # undef __uint_least64_t
100
102
  # define __uint_least64_t uint64_t
103
+ # undef __int_least32_t
101
104
  # define __int_least32_t int64_t
105
+ # undef __uint_least32_t
102
106
  # define __uint_least32_t uint64_t
107
+ # undef __int_least16_t
103
108
  # define __int_least16_t int64_t
109
+ # undef __uint_least16_t
104
110
  # define __uint_least16_t uint64_t
111
+ # undef __int_least8_t
105
112
  # define __int_least8_t int64_t
113
+ # undef __uint_least8_t
106
114
  # define __uint_least8_t uint64_t
107
115
  #endif /* __INT64_TYPE__ */
108
116
 
@@ -120,11 +128,17 @@ typedef int56_t int_least56_t;
120
128
  typedef uint56_t uint_least56_t;
121
129
  typedef int56_t int_fast56_t;
122
130
  typedef uint56_t uint_fast56_t;
131
+ # undef __int_least32_t
123
132
  # define __int_least32_t int56_t
133
+ # undef __uint_least32_t
124
134
  # define __uint_least32_t uint56_t
135
+ # undef __int_least16_t
125
136
  # define __int_least16_t int56_t
137
+ # undef __uint_least16_t
126
138
  # define __uint_least16_t uint56_t
139
+ # undef __int_least8_t
127
140
  # define __int_least8_t int56_t
141
+ # undef __uint_least8_t
128
142
  # define __uint_least8_t uint56_t
129
143
  #endif /* __INT56_TYPE__ */
130
144
 
@@ -136,11 +150,17 @@ typedef int48_t int_least48_t;
136
150
  typedef uint48_t uint_least48_t;
137
151
  typedef int48_t int_fast48_t;
138
152
  typedef uint48_t uint_fast48_t;
153
+ # undef __int_least32_t
139
154
  # define __int_least32_t int48_t
155
+ # undef __uint_least32_t
140
156
  # define __uint_least32_t uint48_t
157
+ # undef __int_least16_t
141
158
  # define __int_least16_t int48_t
159
+ # undef __uint_least16_t
142
160
  # define __uint_least16_t uint48_t
161
+ # undef __int_least8_t
143
162
  # define __int_least8_t int48_t
163
+ # undef __uint_least8_t
144
164
  # define __uint_least8_t uint48_t
145
165
  #endif /* __INT48_TYPE__ */
146
166
 
@@ -152,11 +172,17 @@ typedef int40_t int_least40_t;
152
172
  typedef uint40_t uint_least40_t;
153
173
  typedef int40_t int_fast40_t;
154
174
  typedef uint40_t uint_fast40_t;
175
+ # undef __int_least32_t
155
176
  # define __int_least32_t int40_t
177
+ # undef __uint_least32_t
156
178
  # define __uint_least32_t uint40_t
179
+ # undef __int_least16_t
157
180
  # define __int_least16_t int40_t
181
+ # undef __uint_least16_t
158
182
  # define __uint_least16_t uint40_t
183
+ # undef __int_least8_t
159
184
  # define __int_least8_t int40_t
185
+ # undef __uint_least8_t
160
186
  # define __uint_least8_t uint40_t
161
187
  #endif /* __INT40_TYPE__ */
162
188
 
@@ -172,11 +198,17 @@ typedef __INT32_TYPE__ int32_t;
172
198
  typedef __UINT32_TYPE__ uint32_t;
173
199
  # endif /* __uint32_t_defined */
174
200
 
201
+ # undef __int_least32_t
175
202
  # define __int_least32_t int32_t
203
+ # undef __uint_least32_t
176
204
  # define __uint_least32_t uint32_t
205
+ # undef __int_least16_t
177
206
  # define __int_least16_t int32_t
207
+ # undef __uint_least16_t
178
208
  # define __uint_least16_t uint32_t
209
+ # undef __int_least8_t
179
210
  # define __int_least8_t int32_t
211
+ # undef __uint_least8_t
180
212
  # define __uint_least8_t uint32_t
181
213
  #endif /* __INT32_TYPE__ */
182
214
 
@@ -194,9 +226,13 @@ typedef int24_t int_least24_t;
194
226
  typedef uint24_t uint_least24_t;
195
227
  typedef int24_t int_fast24_t;
196
228
  typedef uint24_t uint_fast24_t;
229
+ # undef __int_least16_t
197
230
  # define __int_least16_t int24_t
231
+ # undef __uint_least16_t
198
232
  # define __uint_least16_t uint24_t
233
+ # undef __int_least8_t
199
234
  # define __int_least8_t int24_t
235
+ # undef __uint_least8_t
200
236
  # define __uint_least8_t uint24_t
201
237
  #endif /* __INT24_TYPE__ */
202
238
 
@@ -205,9 +241,13 @@ typedef uint24_t uint_fast24_t;
205
241
  typedef __INT16_TYPE__ int16_t;
206
242
  #endif /* __int8_t_defined */
207
243
  typedef __UINT16_TYPE__ uint16_t;
244
+ # undef __int_least16_t
208
245
  # define __int_least16_t int16_t
246
+ # undef __uint_least16_t
209
247
  # define __uint_least16_t uint16_t
248
+ # undef __int_least8_t
210
249
  # define __int_least8_t int16_t
250
+ # undef __uint_least8_t
211
251
  # define __uint_least8_t uint16_t
212
252
  #endif /* __INT16_TYPE__ */
213
253
 
@@ -224,7 +264,9 @@ typedef __uint_least16_t uint_fast16_t;
224
264
  typedef __INT8_TYPE__ int8_t;
225
265
  #endif /* __int8_t_defined */
226
266
  typedef __UINT8_TYPE__ uint8_t;
267
+ # undef __int_least8_t
227
268
  # define __int_least8_t int8_t
269
+ # undef __uint_least8_t
228
270
  # define __uint_least8_t uint8_t
229
271
  #endif /* __INT8_TYPE__ */
230
272
 
@@ -285,16 +327,15 @@ typedef __UINTMAX_TYPE__ uintmax_t;
285
327
 
286
328
 
287
329
  #ifdef __INT64_TYPE__
330
+ # undef __int64_c_suffix
331
+ # undef __int32_c_suffix
332
+ # undef __int16_c_suffix
333
+ # undef __int8_c_suffix
288
334
  # ifdef __INT64_C_SUFFIX__
289
335
  # define __int64_c_suffix __INT64_C_SUFFIX__
290
336
  # define __int32_c_suffix __INT64_C_SUFFIX__
291
337
  # define __int16_c_suffix __INT64_C_SUFFIX__
292
338
  # define __int8_c_suffix __INT64_C_SUFFIX__
293
- # else
294
- # undef __int64_c_suffix
295
- # undef __int32_c_suffix
296
- # undef __int16_c_suffix
297
- # undef __int8_c_suffix
298
339
  # endif /* __INT64_C_SUFFIX__ */
299
340
  #endif /* __INT64_TYPE__ */
300
341
 
@@ -310,6 +351,9 @@ typedef __UINTMAX_TYPE__ uintmax_t;
310
351
 
311
352
 
312
353
  #ifdef __INT56_TYPE__
354
+ # undef __int32_c_suffix
355
+ # undef __int16_c_suffix
356
+ # undef __int8_c_suffix
313
357
  # ifdef __INT56_C_SUFFIX__
314
358
  # define INT56_C(v) __int_c(v, __INT56_C_SUFFIX__)
315
359
  # define UINT56_C(v) __uint_c(v, __INT56_C_SUFFIX__)
@@ -319,14 +363,14 @@ typedef __UINTMAX_TYPE__ uintmax_t;
319
363
  # else
320
364
  # define INT56_C(v) v
321
365
  # define UINT56_C(v) v ## U
322
- # undef __int32_c_suffix
323
- # undef __int16_c_suffix
324
- # undef __int8_c_suffix
325
366
  # endif /* __INT56_C_SUFFIX__ */
326
367
  #endif /* __INT56_TYPE__ */
327
368
 
328
369
 
329
370
  #ifdef __INT48_TYPE__
371
+ # undef __int32_c_suffix
372
+ # undef __int16_c_suffix
373
+ # undef __int8_c_suffix
330
374
  # ifdef __INT48_C_SUFFIX__
331
375
  # define INT48_C(v) __int_c(v, __INT48_C_SUFFIX__)
332
376
  # define UINT48_C(v) __uint_c(v, __INT48_C_SUFFIX__)
@@ -336,14 +380,14 @@ typedef __UINTMAX_TYPE__ uintmax_t;
336
380
  # else
337
381
  # define INT48_C(v) v
338
382
  # define UINT48_C(v) v ## U
339
- # undef __int32_c_suffix
340
- # undef __int16_c_suffix
341
- # undef __int8_c_suffix
342
383
  # endif /* __INT48_C_SUFFIX__ */
343
384
  #endif /* __INT48_TYPE__ */
344
385
 
345
386
 
346
387
  #ifdef __INT40_TYPE__
388
+ # undef __int32_c_suffix
389
+ # undef __int16_c_suffix
390
+ # undef __int8_c_suffix
347
391
  # ifdef __INT40_C_SUFFIX__
348
392
  # define INT40_C(v) __int_c(v, __INT40_C_SUFFIX__)
349
393
  # define UINT40_C(v) __uint_c(v, __INT40_C_SUFFIX__)
@@ -353,22 +397,18 @@ typedef __UINTMAX_TYPE__ uintmax_t;
353
397
  # else
354
398
  # define INT40_C(v) v
355
399
  # define UINT40_C(v) v ## U
356
- # undef __int32_c_suffix
357
- # undef __int16_c_suffix
358
- # undef __int8_c_suffix
359
400
  # endif /* __INT40_C_SUFFIX__ */
360
401
  #endif /* __INT40_TYPE__ */
361
402
 
362
403
 
363
404
  #ifdef __INT32_TYPE__
405
+ # undef __int32_c_suffix
406
+ # undef __int16_c_suffix
407
+ # undef __int8_c_suffix
364
408
  # ifdef __INT32_C_SUFFIX__
365
409
  # define __int32_c_suffix __INT32_C_SUFFIX__
366
410
  # define __int16_c_suffix __INT32_C_SUFFIX__
367
411
  # define __int8_c_suffix __INT32_C_SUFFIX__
368
- #else
369
- # undef __int32_c_suffix
370
- # undef __int16_c_suffix
371
- # undef __int8_c_suffix
372
412
  # endif /* __INT32_C_SUFFIX__ */
373
413
  #endif /* __INT32_TYPE__ */
374
414
 
@@ -384,6 +424,8 @@ typedef __UINTMAX_TYPE__ uintmax_t;
384
424
 
385
425
 
386
426
  #ifdef __INT24_TYPE__
427
+ # undef __int16_c_suffix
428
+ # undef __int8_c_suffix
387
429
  # ifdef __INT24_C_SUFFIX__
388
430
  # define INT24_C(v) __int_c(v, __INT24_C_SUFFIX__)
389
431
  # define UINT24_C(v) __uint_c(v, __INT24_C_SUFFIX__)
@@ -392,19 +434,16 @@ typedef __UINTMAX_TYPE__ uintmax_t;
392
434
  # else
393
435
  # define INT24_C(v) v
394
436
  # define UINT24_C(v) v ## U
395
- # undef __int16_c_suffix
396
- # undef __int8_c_suffix
397
437
  # endif /* __INT24_C_SUFFIX__ */
398
438
  #endif /* __INT24_TYPE__ */
399
439
 
400
440
 
401
441
  #ifdef __INT16_TYPE__
442
+ # undef __int16_c_suffix
443
+ # undef __int8_c_suffix
402
444
  # ifdef __INT16_C_SUFFIX__
403
445
  # define __int16_c_suffix __INT16_C_SUFFIX__
404
446
  # define __int8_c_suffix __INT16_C_SUFFIX__
405
- #else
406
- # undef __int16_c_suffix
407
- # undef __int8_c_suffix
408
447
  # endif /* __INT16_C_SUFFIX__ */
409
448
  #endif /* __INT16_TYPE__ */
410
449
 
@@ -420,10 +459,9 @@ typedef __UINTMAX_TYPE__ uintmax_t;
420
459
 
421
460
 
422
461
  #ifdef __INT8_TYPE__
462
+ # undef __int8_c_suffix
423
463
  # ifdef __INT8_C_SUFFIX__
424
464
  # define __int8_c_suffix __INT8_C_SUFFIX__
425
- #else
426
- # undef __int8_c_suffix
427
465
  # endif /* __INT8_C_SUFFIX__ */
428
466
  #endif /* __INT8_TYPE__ */
429
467
 
@@ -461,17 +499,41 @@ typedef __UINTMAX_TYPE__ uintmax_t;
461
499
  # define INT64_MAX INT64_C( 9223372036854775807)
462
500
  # define INT64_MIN (-INT64_C( 9223372036854775807)-1)
463
501
  # define UINT64_MAX UINT64_C(18446744073709551615)
502
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
503
+ in C2x mode; switch to the correct values once they've been published. */
504
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
505
+ # define UINT64_WIDTH 64
506
+ # define INT64_WIDTH UINT64_WIDTH
507
+
508
+ # define __UINT_LEAST64_WIDTH UINT64_WIDTH
509
+ # undef __UINT_LEAST32_WIDTH
510
+ # define __UINT_LEAST32_WIDTH UINT64_WIDTH
511
+ # undef __UINT_LEAST16_WIDTH
512
+ # define __UINT_LEAST16_WIDTH UINT64_WIDTH
513
+ # undef __UINT_LEAST8_MAX
514
+ # define __UINT_LEAST8_MAX UINT64_MAX
515
+ #endif /* __STDC_VERSION__ */
516
+
464
517
  # define __INT_LEAST64_MIN INT64_MIN
465
518
  # define __INT_LEAST64_MAX INT64_MAX
466
519
  # define __UINT_LEAST64_MAX UINT64_MAX
520
+ # undef __INT_LEAST32_MIN
467
521
  # define __INT_LEAST32_MIN INT64_MIN
522
+ # undef __INT_LEAST32_MAX
468
523
  # define __INT_LEAST32_MAX INT64_MAX
524
+ # undef __UINT_LEAST32_MAX
469
525
  # define __UINT_LEAST32_MAX UINT64_MAX
526
+ # undef __INT_LEAST16_MIN
470
527
  # define __INT_LEAST16_MIN INT64_MIN
528
+ # undef __INT_LEAST16_MAX
471
529
  # define __INT_LEAST16_MAX INT64_MAX
530
+ # undef __UINT_LEAST16_MAX
472
531
  # define __UINT_LEAST16_MAX UINT64_MAX
532
+ # undef __INT_LEAST8_MIN
473
533
  # define __INT_LEAST8_MIN INT64_MIN
534
+ # undef __INT_LEAST8_MAX
474
535
  # define __INT_LEAST8_MAX INT64_MAX
536
+ # undef __UINT_LEAST8_MAX
475
537
  # define __UINT_LEAST8_MAX UINT64_MAX
476
538
  #endif /* __INT64_TYPE__ */
477
539
 
@@ -482,6 +544,15 @@ typedef __UINTMAX_TYPE__ uintmax_t;
482
544
  # define INT_FAST64_MIN __INT_LEAST64_MIN
483
545
  # define INT_FAST64_MAX __INT_LEAST64_MAX
484
546
  # define UINT_FAST64_MAX __UINT_LEAST64_MAX
547
+
548
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
549
+ in C2x mode; switch to the correct values once they've been published. */
550
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
551
+ # define UINT_LEAST64_WIDTH __UINT_LEAST64_WIDTH
552
+ # define INT_LEAST64_WIDTH UINT_LEAST64_WIDTH
553
+ # define UINT_FAST64_WIDTH __UINT_LEAST64_WIDTH
554
+ # define INT_FAST64_WIDTH UINT_FAST64_WIDTH
555
+ #endif /* __STDC_VERSION__ */
485
556
  #endif /* __INT_LEAST64_MIN */
486
557
 
487
558
 
@@ -495,15 +566,42 @@ typedef __UINTMAX_TYPE__ uintmax_t;
495
566
  # define INT_FAST56_MIN INT56_MIN
496
567
  # define INT_FAST56_MAX INT56_MAX
497
568
  # define UINT_FAST56_MAX UINT56_MAX
569
+
570
+ # undef __INT_LEAST32_MIN
498
571
  # define __INT_LEAST32_MIN INT56_MIN
572
+ # undef __INT_LEAST32_MAX
499
573
  # define __INT_LEAST32_MAX INT56_MAX
574
+ # undef __UINT_LEAST32_MAX
500
575
  # define __UINT_LEAST32_MAX UINT56_MAX
576
+ # undef __INT_LEAST16_MIN
501
577
  # define __INT_LEAST16_MIN INT56_MIN
578
+ # undef __INT_LEAST16_MAX
502
579
  # define __INT_LEAST16_MAX INT56_MAX
580
+ # undef __UINT_LEAST16_MAX
503
581
  # define __UINT_LEAST16_MAX UINT56_MAX
582
+ # undef __INT_LEAST8_MIN
504
583
  # define __INT_LEAST8_MIN INT56_MIN
584
+ # undef __INT_LEAST8_MAX
505
585
  # define __INT_LEAST8_MAX INT56_MAX
586
+ # undef __UINT_LEAST8_MAX
506
587
  # define __UINT_LEAST8_MAX UINT56_MAX
588
+
589
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
590
+ in C2x mode; switch to the correct values once they've been published. */
591
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
592
+ # define UINT56_WIDTH 56
593
+ # define INT56_WIDTH UINT56_WIDTH
594
+ # define UINT_LEAST56_WIDTH UINT56_WIDTH
595
+ # define INT_LEAST56_WIDTH UINT_LEAST56_WIDTH
596
+ # define UINT_FAST56_WIDTH UINT56_WIDTH
597
+ # define INT_FAST56_WIDTH UINT_FAST56_WIDTH
598
+ # undef __UINT_LEAST32_WIDTH
599
+ # define __UINT_LEAST32_WIDTH UINT56_WIDTH
600
+ # undef __UINT_LEAST16_WIDTH
601
+ # define __UINT_LEAST16_WIDTH UINT56_WIDTH
602
+ # undef __UINT_LEAST8_WIDTH
603
+ # define __UINT_LEAST8_WIDTH UINT56_WIDTH
604
+ #endif /* __STDC_VERSION__ */
507
605
  #endif /* __INT56_TYPE__ */
508
606
 
509
607
 
@@ -517,15 +615,42 @@ typedef __UINTMAX_TYPE__ uintmax_t;
517
615
  # define INT_FAST48_MIN INT48_MIN
518
616
  # define INT_FAST48_MAX INT48_MAX
519
617
  # define UINT_FAST48_MAX UINT48_MAX
618
+
619
+ # undef __INT_LEAST32_MIN
520
620
  # define __INT_LEAST32_MIN INT48_MIN
621
+ # undef __INT_LEAST32_MAX
521
622
  # define __INT_LEAST32_MAX INT48_MAX
623
+ # undef __UINT_LEAST32_MAX
522
624
  # define __UINT_LEAST32_MAX UINT48_MAX
625
+ # undef __INT_LEAST16_MIN
523
626
  # define __INT_LEAST16_MIN INT48_MIN
627
+ # undef __INT_LEAST16_MAX
524
628
  # define __INT_LEAST16_MAX INT48_MAX
629
+ # undef __UINT_LEAST16_MAX
525
630
  # define __UINT_LEAST16_MAX UINT48_MAX
631
+ # undef __INT_LEAST8_MIN
526
632
  # define __INT_LEAST8_MIN INT48_MIN
633
+ # undef __INT_LEAST8_MAX
527
634
  # define __INT_LEAST8_MAX INT48_MAX
635
+ # undef __UINT_LEAST8_MAX
528
636
  # define __UINT_LEAST8_MAX UINT48_MAX
637
+
638
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
639
+ in C2x mode; switch to the correct values once they've been published. */
640
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
641
+ #define UINT48_WIDTH 48
642
+ #define INT48_WIDTH UINT48_WIDTH
643
+ #define UINT_LEAST48_WIDTH UINT48_WIDTH
644
+ #define INT_LEAST48_WIDTH UINT_LEAST48_WIDTH
645
+ #define UINT_FAST48_WIDTH UINT48_WIDTH
646
+ #define INT_FAST48_WIDTH UINT_FAST48_WIDTH
647
+ #undef __UINT_LEAST32_WIDTH
648
+ #define __UINT_LEAST32_WIDTH UINT48_WIDTH
649
+ # undef __UINT_LEAST16_WIDTH
650
+ #define __UINT_LEAST16_WIDTH UINT48_WIDTH
651
+ # undef __UINT_LEAST8_WIDTH
652
+ #define __UINT_LEAST8_WIDTH UINT48_WIDTH
653
+ #endif /* __STDC_VERSION__ */
529
654
  #endif /* __INT48_TYPE__ */
530
655
 
531
656
 
@@ -539,15 +664,42 @@ typedef __UINTMAX_TYPE__ uintmax_t;
539
664
  # define INT_FAST40_MIN INT40_MIN
540
665
  # define INT_FAST40_MAX INT40_MAX
541
666
  # define UINT_FAST40_MAX UINT40_MAX
667
+
668
+ # undef __INT_LEAST32_MIN
542
669
  # define __INT_LEAST32_MIN INT40_MIN
670
+ # undef __INT_LEAST32_MAX
543
671
  # define __INT_LEAST32_MAX INT40_MAX
672
+ # undef __UINT_LEAST32_MAX
544
673
  # define __UINT_LEAST32_MAX UINT40_MAX
674
+ # undef __INT_LEAST16_MIN
545
675
  # define __INT_LEAST16_MIN INT40_MIN
676
+ # undef __INT_LEAST16_MAX
546
677
  # define __INT_LEAST16_MAX INT40_MAX
678
+ # undef __UINT_LEAST16_MAX
547
679
  # define __UINT_LEAST16_MAX UINT40_MAX
680
+ # undef __INT_LEAST8_MIN
548
681
  # define __INT_LEAST8_MIN INT40_MIN
682
+ # undef __INT_LEAST8_MAX
549
683
  # define __INT_LEAST8_MAX INT40_MAX
684
+ # undef __UINT_LEAST8_MAX
550
685
  # define __UINT_LEAST8_MAX UINT40_MAX
686
+
687
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
688
+ in C2x mode; switch to the correct values once they've been published. */
689
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
690
+ # define UINT40_WIDTH 40
691
+ # define INT40_WIDTH UINT40_WIDTH
692
+ # define UINT_LEAST40_WIDTH UINT40_WIDTH
693
+ # define INT_LEAST40_WIDTH UINT_LEAST40_WIDTH
694
+ # define UINT_FAST40_WIDTH UINT40_WIDTH
695
+ # define INT_FAST40_WIDTH UINT_FAST40_WIDTH
696
+ # undef __UINT_LEAST32_WIDTH
697
+ # define __UINT_LEAST32_WIDTH UINT40_WIDTH
698
+ # undef __UINT_LEAST16_WIDTH
699
+ # define __UINT_LEAST16_WIDTH UINT40_WIDTH
700
+ # undef __UINT_LEAST8_WIDTH
701
+ # define __UINT_LEAST8_WIDTH UINT40_WIDTH
702
+ #endif /* __STDC_VERSION__ */
551
703
  #endif /* __INT40_TYPE__ */
552
704
 
553
705
 
@@ -555,15 +707,38 @@ typedef __UINTMAX_TYPE__ uintmax_t;
555
707
  # define INT32_MAX INT32_C(2147483647)
556
708
  # define INT32_MIN (-INT32_C(2147483647)-1)
557
709
  # define UINT32_MAX UINT32_C(4294967295)
710
+
711
+ # undef __INT_LEAST32_MIN
558
712
  # define __INT_LEAST32_MIN INT32_MIN
713
+ # undef __INT_LEAST32_MAX
559
714
  # define __INT_LEAST32_MAX INT32_MAX
715
+ # undef __UINT_LEAST32_MAX
560
716
  # define __UINT_LEAST32_MAX UINT32_MAX
717
+ # undef __INT_LEAST16_MIN
561
718
  # define __INT_LEAST16_MIN INT32_MIN
719
+ # undef __INT_LEAST16_MAX
562
720
  # define __INT_LEAST16_MAX INT32_MAX
721
+ # undef __UINT_LEAST16_MAX
563
722
  # define __UINT_LEAST16_MAX UINT32_MAX
723
+ # undef __INT_LEAST8_MIN
564
724
  # define __INT_LEAST8_MIN INT32_MIN
725
+ # undef __INT_LEAST8_MAX
565
726
  # define __INT_LEAST8_MAX INT32_MAX
727
+ # undef __UINT_LEAST8_MAX
566
728
  # define __UINT_LEAST8_MAX UINT32_MAX
729
+
730
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
731
+ in C2x mode; switch to the correct values once they've been published. */
732
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
733
+ # define UINT32_WIDTH 32
734
+ # define INT32_WIDTH UINT32_WIDTH
735
+ # undef __UINT_LEAST32_WIDTH
736
+ # define __UINT_LEAST32_WIDTH UINT32_WIDTH
737
+ # undef __UINT_LEAST16_WIDTH
738
+ # define __UINT_LEAST16_WIDTH UINT32_WIDTH
739
+ # undef __UINT_LEAST8_WIDTH
740
+ # define __UINT_LEAST8_WIDTH UINT32_WIDTH
741
+ #endif /* __STDC_VERSION__ */
567
742
  #endif /* __INT32_TYPE__ */
568
743
 
569
744
  #ifdef __INT_LEAST32_MIN
@@ -573,6 +748,15 @@ typedef __UINTMAX_TYPE__ uintmax_t;
573
748
  # define INT_FAST32_MIN __INT_LEAST32_MIN
574
749
  # define INT_FAST32_MAX __INT_LEAST32_MAX
575
750
  # define UINT_FAST32_MAX __UINT_LEAST32_MAX
751
+
752
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
753
+ in C2x mode; switch to the correct values once they've been published. */
754
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
755
+ # define UINT_LEAST32_WIDTH __UINT_LEAST32_WIDTH
756
+ # define INT_LEAST32_WIDTH UINT_LEAST32_WIDTH
757
+ # define UINT_FAST32_WIDTH __UINT_LEAST32_WIDTH
758
+ # define INT_FAST32_WIDTH UINT_FAST32_WIDTH
759
+ #endif /* __STDC_VERSION__ */
576
760
  #endif /* __INT_LEAST32_MIN */
577
761
 
578
762
 
@@ -586,12 +770,34 @@ typedef __UINTMAX_TYPE__ uintmax_t;
586
770
  # define INT_FAST24_MIN INT24_MIN
587
771
  # define INT_FAST24_MAX INT24_MAX
588
772
  # define UINT_FAST24_MAX UINT24_MAX
773
+
774
+ # undef __INT_LEAST16_MIN
589
775
  # define __INT_LEAST16_MIN INT24_MIN
776
+ # undef __INT_LEAST16_MAX
590
777
  # define __INT_LEAST16_MAX INT24_MAX
778
+ # undef __UINT_LEAST16_MAX
591
779
  # define __UINT_LEAST16_MAX UINT24_MAX
780
+ # undef __INT_LEAST8_MIN
592
781
  # define __INT_LEAST8_MIN INT24_MIN
782
+ # undef __INT_LEAST8_MAX
593
783
  # define __INT_LEAST8_MAX INT24_MAX
784
+ # undef __UINT_LEAST8_MAX
594
785
  # define __UINT_LEAST8_MAX UINT24_MAX
786
+
787
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
788
+ in C2x mode; switch to the correct values once they've been published. */
789
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
790
+ # define UINT24_WIDTH 24
791
+ # define INT24_WIDTH UINT24_WIDTH
792
+ # define UINT_LEAST24_WIDTH UINT24_WIDTH
793
+ # define INT_LEAST24_WIDTH UINT_LEAST24_WIDTH
794
+ # define UINT_FAST24_WIDTH UINT24_WIDTH
795
+ # define INT_FAST24_WIDTH UINT_FAST24_WIDTH
796
+ # undef __UINT_LEAST16_WIDTH
797
+ # define __UINT_LEAST16_WIDTH UINT24_WIDTH
798
+ # undef __UINT_LEAST8_WIDTH
799
+ # define __UINT_LEAST8_WIDTH UINT24_WIDTH
800
+ #endif /* __STDC_VERSION__ */
595
801
  #endif /* __INT24_TYPE__ */
596
802
 
597
803
 
@@ -599,12 +805,30 @@ typedef __UINTMAX_TYPE__ uintmax_t;
599
805
  #define INT16_MAX INT16_C(32767)
600
806
  #define INT16_MIN (-INT16_C(32767)-1)
601
807
  #define UINT16_MAX UINT16_C(65535)
808
+
809
+ # undef __INT_LEAST16_MIN
602
810
  # define __INT_LEAST16_MIN INT16_MIN
811
+ # undef __INT_LEAST16_MAX
603
812
  # define __INT_LEAST16_MAX INT16_MAX
813
+ # undef __UINT_LEAST16_MAX
604
814
  # define __UINT_LEAST16_MAX UINT16_MAX
815
+ # undef __INT_LEAST8_MIN
605
816
  # define __INT_LEAST8_MIN INT16_MIN
817
+ # undef __INT_LEAST8_MAX
606
818
  # define __INT_LEAST8_MAX INT16_MAX
819
+ # undef __UINT_LEAST8_MAX
607
820
  # define __UINT_LEAST8_MAX UINT16_MAX
821
+
822
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
823
+ in C2x mode; switch to the correct values once they've been published. */
824
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
825
+ # define UINT16_WIDTH 16
826
+ # define INT16_WIDTH UINT16_WIDTH
827
+ # undef __UINT_LEAST16_WIDTH
828
+ # define __UINT_LEAST16_WIDTH UINT16_WIDTH
829
+ # undef __UINT_LEAST8_WIDTH
830
+ # define __UINT_LEAST8_WIDTH UINT16_WIDTH
831
+ #endif /* __STDC_VERSION__ */
608
832
  #endif /* __INT16_TYPE__ */
609
833
 
610
834
  #ifdef __INT_LEAST16_MIN
@@ -614,6 +838,15 @@ typedef __UINTMAX_TYPE__ uintmax_t;
614
838
  # define INT_FAST16_MIN __INT_LEAST16_MIN
615
839
  # define INT_FAST16_MAX __INT_LEAST16_MAX
616
840
  # define UINT_FAST16_MAX __UINT_LEAST16_MAX
841
+
842
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
843
+ in C2x mode; switch to the correct values once they've been published. */
844
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
845
+ # define UINT_LEAST16_WIDTH __UINT_LEAST16_WIDTH
846
+ # define INT_LEAST16_WIDTH UINT_LEAST16_WIDTH
847
+ # define UINT_FAST16_WIDTH __UINT_LEAST16_WIDTH
848
+ # define INT_FAST16_WIDTH UINT_FAST16_WIDTH
849
+ #endif /* __STDC_VERSION__ */
617
850
  #endif /* __INT_LEAST16_MIN */
618
851
 
619
852
 
@@ -621,9 +854,22 @@ typedef __UINTMAX_TYPE__ uintmax_t;
621
854
  # define INT8_MAX INT8_C(127)
622
855
  # define INT8_MIN (-INT8_C(127)-1)
623
856
  # define UINT8_MAX UINT8_C(255)
857
+
858
+ # undef __INT_LEAST8_MIN
624
859
  # define __INT_LEAST8_MIN INT8_MIN
860
+ # undef __INT_LEAST8_MAX
625
861
  # define __INT_LEAST8_MAX INT8_MAX
862
+ # undef __UINT_LEAST8_MAX
626
863
  # define __UINT_LEAST8_MAX UINT8_MAX
864
+
865
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
866
+ in C2x mode; switch to the correct values once they've been published. */
867
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
868
+ # define UINT8_WIDTH 8
869
+ # define INT8_WIDTH UINT8_WIDTH
870
+ # undef __UINT_LEAST8_WIDTH
871
+ # define __UINT_LEAST8_WIDTH UINT8_WIDTH
872
+ #endif /* __STDC_VERSION__ */
627
873
  #endif /* __INT8_TYPE__ */
628
874
 
629
875
  #ifdef __INT_LEAST8_MIN
@@ -633,6 +879,15 @@ typedef __UINTMAX_TYPE__ uintmax_t;
633
879
  # define INT_FAST8_MIN __INT_LEAST8_MIN
634
880
  # define INT_FAST8_MAX __INT_LEAST8_MAX
635
881
  # define UINT_FAST8_MAX __UINT_LEAST8_MAX
882
+
883
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
884
+ in C2x mode; switch to the correct values once they've been published. */
885
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
886
+ # define UINT_LEAST8_WIDTH __UINT_LEAST8_WIDTH
887
+ # define INT_LEAST8_WIDTH UINT_LEAST8_WIDTH
888
+ # define UINT_FAST8_WIDTH __UINT_LEAST8_WIDTH
889
+ # define INT_FAST8_WIDTH UINT_FAST8_WIDTH
890
+ #endif /* __STDC_VERSION__ */
636
891
  #endif /* __INT_LEAST8_MIN */
637
892
 
638
893
  /* Some utility macros */
@@ -652,6 +907,16 @@ typedef __UINTMAX_TYPE__ uintmax_t;
652
907
  #define PTRDIFF_MAX __PTRDIFF_MAX__
653
908
  #define SIZE_MAX __SIZE_MAX__
654
909
 
910
+ /* C2x 7.20.2.4 Width of integer types capable of holding object pointers. */
911
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
912
+ in C2x mode; switch to the correct values once they've been published. */
913
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
914
+ /* NB: The C standard requires that these be the same value, but the compiler
915
+ exposes separate internal width macros. */
916
+ #define INTPTR_WIDTH __INTPTR_WIDTH__
917
+ #define UINTPTR_WIDTH __UINTPTR_WIDTH__
918
+ #endif
919
+
655
920
  /* ISO9899:2011 7.20 (C11 Annex K): Define RSIZE_MAX if __STDC_WANT_LIB_EXT1__
656
921
  * is enabled. */
657
922
  #if defined(__STDC_WANT_LIB_EXT1__) && __STDC_WANT_LIB_EXT1__ >= 1
@@ -663,6 +928,16 @@ typedef __UINTMAX_TYPE__ uintmax_t;
663
928
  #define INTMAX_MAX __INTMAX_MAX__
664
929
  #define UINTMAX_MAX __UINTMAX_MAX__
665
930
 
931
+ /* C2x 7.20.2.5 Width of greatest-width integer types. */
932
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
933
+ in C2x mode; switch to the correct values once they've been published. */
934
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
935
+ /* NB: The C standard requires that these be the same value, but the compiler
936
+ exposes separate internal width macros. */
937
+ #define INTMAX_WIDTH __INTMAX_WIDTH__
938
+ #define UINTMAX_WIDTH __UINTMAX_WIDTH__
939
+ #endif
940
+
666
941
  /* C99 7.18.3 Limits of other integer types. */
667
942
  #define SIG_ATOMIC_MIN __INTN_MIN(__SIG_ATOMIC_WIDTH__)
668
943
  #define SIG_ATOMIC_MAX __INTN_MAX(__SIG_ATOMIC_WIDTH__)
@@ -689,5 +964,16 @@ typedef __UINTMAX_TYPE__ uintmax_t;
689
964
  #define INTMAX_C(v) __int_c(v, __INTMAX_C_SUFFIX__)
690
965
  #define UINTMAX_C(v) __int_c(v, __UINTMAX_C_SUFFIX__)
691
966
 
967
+ /* C2x 7.20.3.x Width of other integer types. */
968
+ /* FIXME: This is using the placeholder dates Clang produces for these macros
969
+ in C2x mode; switch to the correct values once they've been published. */
970
+ #if defined(__STDC_VERSION__) && __STDC_VERSION__ >= 202000L
971
+ #define PTRDIFF_WIDTH __PTRDIFF_WIDTH__
972
+ #define SIG_ATOMIC_WIDTH __SIG_ATOMIC_WIDTH__
973
+ #define SIZE_WIDTH __SIZE_WIDTH__
974
+ #define WCHAR_WIDTH __WCHAR_WIDTH__
975
+ #define WINT_WIDTH __WINT_WIDTH__
976
+ #endif
977
+
692
978
  #endif /* __STDC_HOSTED__ */
693
979
  #endif /* __CLANG_STDINT_H */
@@ -0,0 +1,29 @@
1
+ /*===---- stdnoreturn.h - Standard header for noreturn macro ---------------===
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
+
10
+ #ifndef __STDNORETURN_H
11
+ #define __STDNORETURN_H
12
+
13
+ #define noreturn _Noreturn
14
+ #define __noreturn_is_defined 1
15
+
16
+ #if (defined(__STDC_VERSION__) && __STDC_VERSION__ > 201710L) && \
17
+ !defined(_CLANG_DISABLE_CRT_DEPRECATION_WARNINGS)
18
+ /* The noreturn macro is deprecated in C2x. We do not mark it as such because
19
+ including the header file in C2x is also deprecated and we do not want to
20
+ issue a confusing diagnostic for code which includes <stdnoreturn.h>
21
+ followed by code that writes [[noreturn]]. The issue with such code is not
22
+ with the attribute, or the use of 'noreturn', but the inclusion of the
23
+ header. */
24
+ /* FIXME: We should be issuing a deprecation warning here, but cannot yet due
25
+ * to system headers which include this header file unconditionally.
26
+ */
27
+ #endif
28
+
29
+ #endif /* __STDNORETURN_H */