inc.hpp 9.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321
  1. # /* Copyright (C) 2001
  2. # * Housemarque Oy
  3. # * http://www.housemarque.com
  4. # *
  5. # * Distributed under the Boost Software License, Version 1.0. (See
  6. # * accompanying file LICENSE_1_0.txt or copy at
  7. # * http://www.boost.org/LICENSE_1_0.txt)
  8. # */
  9. #
  10. # /* Revised by Paul Mensonides (2002) */
  11. # /* Revised by Edward Diener (2020) */
  12. #
  13. # /* See http://www.boost.org for most recent version. */
  14. #
  15. # ifndef BOOST_PREPROCESSOR_ARITHMETIC_INC_HPP
  16. # define BOOST_PREPROCESSOR_ARITHMETIC_INC_HPP
  17. #
  18. # include <boost/preprocessor/config/config.hpp>
  19. #
  20. # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_STRICT()
  21. #
  22. # /* BOOST_PP_INC */
  23. #
  24. # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
  25. # define BOOST_PP_INC(x) BOOST_PP_INC_I(x)
  26. # else
  27. # define BOOST_PP_INC(x) BOOST_PP_INC_OO((x))
  28. # define BOOST_PP_INC_OO(par) BOOST_PP_INC_I ## par
  29. # endif
  30. #
  31. # define BOOST_PP_INC_I(x) BOOST_PP_INC_ ## x
  32. #
  33. # define BOOST_PP_INC_0 1
  34. # define BOOST_PP_INC_1 2
  35. # define BOOST_PP_INC_2 3
  36. # define BOOST_PP_INC_3 4
  37. # define BOOST_PP_INC_4 5
  38. # define BOOST_PP_INC_5 6
  39. # define BOOST_PP_INC_6 7
  40. # define BOOST_PP_INC_7 8
  41. # define BOOST_PP_INC_8 9
  42. # define BOOST_PP_INC_9 10
  43. # define BOOST_PP_INC_10 11
  44. # define BOOST_PP_INC_11 12
  45. # define BOOST_PP_INC_12 13
  46. # define BOOST_PP_INC_13 14
  47. # define BOOST_PP_INC_14 15
  48. # define BOOST_PP_INC_15 16
  49. # define BOOST_PP_INC_16 17
  50. # define BOOST_PP_INC_17 18
  51. # define BOOST_PP_INC_18 19
  52. # define BOOST_PP_INC_19 20
  53. # define BOOST_PP_INC_20 21
  54. # define BOOST_PP_INC_21 22
  55. # define BOOST_PP_INC_22 23
  56. # define BOOST_PP_INC_23 24
  57. # define BOOST_PP_INC_24 25
  58. # define BOOST_PP_INC_25 26
  59. # define BOOST_PP_INC_26 27
  60. # define BOOST_PP_INC_27 28
  61. # define BOOST_PP_INC_28 29
  62. # define BOOST_PP_INC_29 30
  63. # define BOOST_PP_INC_30 31
  64. # define BOOST_PP_INC_31 32
  65. # define BOOST_PP_INC_32 33
  66. # define BOOST_PP_INC_33 34
  67. # define BOOST_PP_INC_34 35
  68. # define BOOST_PP_INC_35 36
  69. # define BOOST_PP_INC_36 37
  70. # define BOOST_PP_INC_37 38
  71. # define BOOST_PP_INC_38 39
  72. # define BOOST_PP_INC_39 40
  73. # define BOOST_PP_INC_40 41
  74. # define BOOST_PP_INC_41 42
  75. # define BOOST_PP_INC_42 43
  76. # define BOOST_PP_INC_43 44
  77. # define BOOST_PP_INC_44 45
  78. # define BOOST_PP_INC_45 46
  79. # define BOOST_PP_INC_46 47
  80. # define BOOST_PP_INC_47 48
  81. # define BOOST_PP_INC_48 49
  82. # define BOOST_PP_INC_49 50
  83. # define BOOST_PP_INC_50 51
  84. # define BOOST_PP_INC_51 52
  85. # define BOOST_PP_INC_52 53
  86. # define BOOST_PP_INC_53 54
  87. # define BOOST_PP_INC_54 55
  88. # define BOOST_PP_INC_55 56
  89. # define BOOST_PP_INC_56 57
  90. # define BOOST_PP_INC_57 58
  91. # define BOOST_PP_INC_58 59
  92. # define BOOST_PP_INC_59 60
  93. # define BOOST_PP_INC_60 61
  94. # define BOOST_PP_INC_61 62
  95. # define BOOST_PP_INC_62 63
  96. # define BOOST_PP_INC_63 64
  97. # define BOOST_PP_INC_64 65
  98. # define BOOST_PP_INC_65 66
  99. # define BOOST_PP_INC_66 67
  100. # define BOOST_PP_INC_67 68
  101. # define BOOST_PP_INC_68 69
  102. # define BOOST_PP_INC_69 70
  103. # define BOOST_PP_INC_70 71
  104. # define BOOST_PP_INC_71 72
  105. # define BOOST_PP_INC_72 73
  106. # define BOOST_PP_INC_73 74
  107. # define BOOST_PP_INC_74 75
  108. # define BOOST_PP_INC_75 76
  109. # define BOOST_PP_INC_76 77
  110. # define BOOST_PP_INC_77 78
  111. # define BOOST_PP_INC_78 79
  112. # define BOOST_PP_INC_79 80
  113. # define BOOST_PP_INC_80 81
  114. # define BOOST_PP_INC_81 82
  115. # define BOOST_PP_INC_82 83
  116. # define BOOST_PP_INC_83 84
  117. # define BOOST_PP_INC_84 85
  118. # define BOOST_PP_INC_85 86
  119. # define BOOST_PP_INC_86 87
  120. # define BOOST_PP_INC_87 88
  121. # define BOOST_PP_INC_88 89
  122. # define BOOST_PP_INC_89 90
  123. # define BOOST_PP_INC_90 91
  124. # define BOOST_PP_INC_91 92
  125. # define BOOST_PP_INC_92 93
  126. # define BOOST_PP_INC_93 94
  127. # define BOOST_PP_INC_94 95
  128. # define BOOST_PP_INC_95 96
  129. # define BOOST_PP_INC_96 97
  130. # define BOOST_PP_INC_97 98
  131. # define BOOST_PP_INC_98 99
  132. # define BOOST_PP_INC_99 100
  133. # define BOOST_PP_INC_100 101
  134. # define BOOST_PP_INC_101 102
  135. # define BOOST_PP_INC_102 103
  136. # define BOOST_PP_INC_103 104
  137. # define BOOST_PP_INC_104 105
  138. # define BOOST_PP_INC_105 106
  139. # define BOOST_PP_INC_106 107
  140. # define BOOST_PP_INC_107 108
  141. # define BOOST_PP_INC_108 109
  142. # define BOOST_PP_INC_109 110
  143. # define BOOST_PP_INC_110 111
  144. # define BOOST_PP_INC_111 112
  145. # define BOOST_PP_INC_112 113
  146. # define BOOST_PP_INC_113 114
  147. # define BOOST_PP_INC_114 115
  148. # define BOOST_PP_INC_115 116
  149. # define BOOST_PP_INC_116 117
  150. # define BOOST_PP_INC_117 118
  151. # define BOOST_PP_INC_118 119
  152. # define BOOST_PP_INC_119 120
  153. # define BOOST_PP_INC_120 121
  154. # define BOOST_PP_INC_121 122
  155. # define BOOST_PP_INC_122 123
  156. # define BOOST_PP_INC_123 124
  157. # define BOOST_PP_INC_124 125
  158. # define BOOST_PP_INC_125 126
  159. # define BOOST_PP_INC_126 127
  160. # define BOOST_PP_INC_127 128
  161. # define BOOST_PP_INC_128 129
  162. # define BOOST_PP_INC_129 130
  163. # define BOOST_PP_INC_130 131
  164. # define BOOST_PP_INC_131 132
  165. # define BOOST_PP_INC_132 133
  166. # define BOOST_PP_INC_133 134
  167. # define BOOST_PP_INC_134 135
  168. # define BOOST_PP_INC_135 136
  169. # define BOOST_PP_INC_136 137
  170. # define BOOST_PP_INC_137 138
  171. # define BOOST_PP_INC_138 139
  172. # define BOOST_PP_INC_139 140
  173. # define BOOST_PP_INC_140 141
  174. # define BOOST_PP_INC_141 142
  175. # define BOOST_PP_INC_142 143
  176. # define BOOST_PP_INC_143 144
  177. # define BOOST_PP_INC_144 145
  178. # define BOOST_PP_INC_145 146
  179. # define BOOST_PP_INC_146 147
  180. # define BOOST_PP_INC_147 148
  181. # define BOOST_PP_INC_148 149
  182. # define BOOST_PP_INC_149 150
  183. # define BOOST_PP_INC_150 151
  184. # define BOOST_PP_INC_151 152
  185. # define BOOST_PP_INC_152 153
  186. # define BOOST_PP_INC_153 154
  187. # define BOOST_PP_INC_154 155
  188. # define BOOST_PP_INC_155 156
  189. # define BOOST_PP_INC_156 157
  190. # define BOOST_PP_INC_157 158
  191. # define BOOST_PP_INC_158 159
  192. # define BOOST_PP_INC_159 160
  193. # define BOOST_PP_INC_160 161
  194. # define BOOST_PP_INC_161 162
  195. # define BOOST_PP_INC_162 163
  196. # define BOOST_PP_INC_163 164
  197. # define BOOST_PP_INC_164 165
  198. # define BOOST_PP_INC_165 166
  199. # define BOOST_PP_INC_166 167
  200. # define BOOST_PP_INC_167 168
  201. # define BOOST_PP_INC_168 169
  202. # define BOOST_PP_INC_169 170
  203. # define BOOST_PP_INC_170 171
  204. # define BOOST_PP_INC_171 172
  205. # define BOOST_PP_INC_172 173
  206. # define BOOST_PP_INC_173 174
  207. # define BOOST_PP_INC_174 175
  208. # define BOOST_PP_INC_175 176
  209. # define BOOST_PP_INC_176 177
  210. # define BOOST_PP_INC_177 178
  211. # define BOOST_PP_INC_178 179
  212. # define BOOST_PP_INC_179 180
  213. # define BOOST_PP_INC_180 181
  214. # define BOOST_PP_INC_181 182
  215. # define BOOST_PP_INC_182 183
  216. # define BOOST_PP_INC_183 184
  217. # define BOOST_PP_INC_184 185
  218. # define BOOST_PP_INC_185 186
  219. # define BOOST_PP_INC_186 187
  220. # define BOOST_PP_INC_187 188
  221. # define BOOST_PP_INC_188 189
  222. # define BOOST_PP_INC_189 190
  223. # define BOOST_PP_INC_190 191
  224. # define BOOST_PP_INC_191 192
  225. # define BOOST_PP_INC_192 193
  226. # define BOOST_PP_INC_193 194
  227. # define BOOST_PP_INC_194 195
  228. # define BOOST_PP_INC_195 196
  229. # define BOOST_PP_INC_196 197
  230. # define BOOST_PP_INC_197 198
  231. # define BOOST_PP_INC_198 199
  232. # define BOOST_PP_INC_199 200
  233. # define BOOST_PP_INC_200 201
  234. # define BOOST_PP_INC_201 202
  235. # define BOOST_PP_INC_202 203
  236. # define BOOST_PP_INC_203 204
  237. # define BOOST_PP_INC_204 205
  238. # define BOOST_PP_INC_205 206
  239. # define BOOST_PP_INC_206 207
  240. # define BOOST_PP_INC_207 208
  241. # define BOOST_PP_INC_208 209
  242. # define BOOST_PP_INC_209 210
  243. # define BOOST_PP_INC_210 211
  244. # define BOOST_PP_INC_211 212
  245. # define BOOST_PP_INC_212 213
  246. # define BOOST_PP_INC_213 214
  247. # define BOOST_PP_INC_214 215
  248. # define BOOST_PP_INC_215 216
  249. # define BOOST_PP_INC_216 217
  250. # define BOOST_PP_INC_217 218
  251. # define BOOST_PP_INC_218 219
  252. # define BOOST_PP_INC_219 220
  253. # define BOOST_PP_INC_220 221
  254. # define BOOST_PP_INC_221 222
  255. # define BOOST_PP_INC_222 223
  256. # define BOOST_PP_INC_223 224
  257. # define BOOST_PP_INC_224 225
  258. # define BOOST_PP_INC_225 226
  259. # define BOOST_PP_INC_226 227
  260. # define BOOST_PP_INC_227 228
  261. # define BOOST_PP_INC_228 229
  262. # define BOOST_PP_INC_229 230
  263. # define BOOST_PP_INC_230 231
  264. # define BOOST_PP_INC_231 232
  265. # define BOOST_PP_INC_232 233
  266. # define BOOST_PP_INC_233 234
  267. # define BOOST_PP_INC_234 235
  268. # define BOOST_PP_INC_235 236
  269. # define BOOST_PP_INC_236 237
  270. # define BOOST_PP_INC_237 238
  271. # define BOOST_PP_INC_238 239
  272. # define BOOST_PP_INC_239 240
  273. # define BOOST_PP_INC_240 241
  274. # define BOOST_PP_INC_241 242
  275. # define BOOST_PP_INC_242 243
  276. # define BOOST_PP_INC_243 244
  277. # define BOOST_PP_INC_244 245
  278. # define BOOST_PP_INC_245 246
  279. # define BOOST_PP_INC_246 247
  280. # define BOOST_PP_INC_247 248
  281. # define BOOST_PP_INC_248 249
  282. # define BOOST_PP_INC_249 250
  283. # define BOOST_PP_INC_250 251
  284. # define BOOST_PP_INC_251 252
  285. # define BOOST_PP_INC_252 253
  286. # define BOOST_PP_INC_253 254
  287. # define BOOST_PP_INC_254 255
  288. # define BOOST_PP_INC_255 256
  289. # define BOOST_PP_INC_256 256
  290. #
  291. # else
  292. #
  293. # /* BOOST_PP_INC */
  294. #
  295. # if ~BOOST_PP_CONFIG_FLAGS() & BOOST_PP_CONFIG_MWCC()
  296. # define BOOST_PP_INC(x) BOOST_PP_INC_I(x)
  297. # else
  298. # define BOOST_PP_INC(x) BOOST_PP_INC_OO((x))
  299. # define BOOST_PP_INC_OO(par) BOOST_PP_INC_I ## par
  300. # endif
  301. #
  302. # define BOOST_PP_INC_I(x) BOOST_PP_INC_ ## x
  303. #
  304. # include <boost/preprocessor/config/limits.hpp>
  305. #
  306. # if BOOST_PP_LIMIT_MAG == 256
  307. # include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
  308. # elif BOOST_PP_LIMIT_MAG == 512
  309. # include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
  310. # include <boost/preprocessor/arithmetic/limits/inc_512.hpp>
  311. # elif BOOST_PP_LIMIT_MAG == 1024
  312. # include <boost/preprocessor/arithmetic/limits/inc_256.hpp>
  313. # include <boost/preprocessor/arithmetic/limits/inc_512.hpp>
  314. # include <boost/preprocessor/arithmetic/limits/inc_1024.hpp>
  315. # else
  316. # error Incorrect value for the BOOST_PP_LIMIT_MAG limit
  317. # endif
  318. #
  319. # endif
  320. #
  321. # endif