tcc 0.1.0

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 (283) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE +35 -0
  3. data/README.md +196 -0
  4. data/ext/tcc/extconf.rb +25 -0
  5. data/ext/tcc/tcc-0.9.26.patch +30 -0
  6. data/ext/tcc/tcc-0.9.26/COPYING +504 -0
  7. data/ext/tcc/tcc-0.9.26/Changelog +396 -0
  8. data/ext/tcc/tcc-0.9.26/Makefile +349 -0
  9. data/ext/tcc/tcc-0.9.26/README +101 -0
  10. data/ext/tcc/tcc-0.9.26/TODO +93 -0
  11. data/ext/tcc/tcc-0.9.26/VERSION +1 -0
  12. data/ext/tcc/tcc-0.9.26/arm-gen.c +2005 -0
  13. data/ext/tcc/tcc-0.9.26/c67-gen.c +2560 -0
  14. data/ext/tcc/tcc-0.9.26/coff.h +446 -0
  15. data/ext/tcc/tcc-0.9.26/config.h +8 -0
  16. data/ext/tcc/tcc-0.9.26/config.mak +28 -0
  17. data/ext/tcc/tcc-0.9.26/config.texi +1 -0
  18. data/ext/tcc/tcc-0.9.26/configure +540 -0
  19. data/ext/tcc/tcc-0.9.26/conftest.c +71 -0
  20. data/ext/tcc/tcc-0.9.26/elf.h +1731 -0
  21. data/ext/tcc/tcc-0.9.26/examples/ex1.c +8 -0
  22. data/ext/tcc/tcc-0.9.26/examples/ex2.c +98 -0
  23. data/ext/tcc/tcc-0.9.26/examples/ex3.c +24 -0
  24. data/ext/tcc/tcc-0.9.26/examples/ex4.c +26 -0
  25. data/ext/tcc/tcc-0.9.26/examples/ex5.c +8 -0
  26. data/ext/tcc/tcc-0.9.26/i386-asm.c +1498 -0
  27. data/ext/tcc/tcc-0.9.26/i386-asm.h +473 -0
  28. data/ext/tcc/tcc-0.9.26/i386-gen.c +1096 -0
  29. data/ext/tcc/tcc-0.9.26/i386-tok.h +243 -0
  30. data/ext/tcc/tcc-0.9.26/il-gen.c +667 -0
  31. data/ext/tcc/tcc-0.9.26/il-opcodes.h +251 -0
  32. data/ext/tcc/tcc-0.9.26/include/float.h +57 -0
  33. data/ext/tcc/tcc-0.9.26/include/stdarg.h +41 -0
  34. data/ext/tcc/tcc-0.9.26/include/stdbool.h +10 -0
  35. data/ext/tcc/tcc-0.9.26/include/stddef.h +28 -0
  36. data/ext/tcc/tcc-0.9.26/include/tcclib.h +78 -0
  37. data/ext/tcc/tcc-0.9.26/include/varargs.h +12 -0
  38. data/ext/tcc/tcc-0.9.26/lib/Makefile +102 -0
  39. data/ext/tcc/tcc-0.9.26/lib/alloca86-bt.S +47 -0
  40. data/ext/tcc/tcc-0.9.26/lib/alloca86.S +35 -0
  41. data/ext/tcc/tcc-0.9.26/lib/alloca86_64.S +42 -0
  42. data/ext/tcc/tcc-0.9.26/lib/bcheck.c +875 -0
  43. data/ext/tcc/tcc-0.9.26/lib/libtcc1.c +691 -0
  44. data/ext/tcc/tcc-0.9.26/libtcc.c +1941 -0
  45. data/ext/tcc/tcc-0.9.26/libtcc.h +103 -0
  46. data/ext/tcc/tcc-0.9.26/stab.def +234 -0
  47. data/ext/tcc/tcc-0.9.26/stab.h +17 -0
  48. data/ext/tcc/tcc-0.9.26/tcc-doc.html +2332 -0
  49. data/ext/tcc/tcc-0.9.26/tcc-doc.info +1151 -0
  50. data/ext/tcc/tcc-0.9.26/tcc-doc.texi +1268 -0
  51. data/ext/tcc/tcc-0.9.26/tcc.1 +415 -0
  52. data/ext/tcc/tcc-0.9.26/tcc.c +352 -0
  53. data/ext/tcc/tcc-0.9.26/tcc.h +1379 -0
  54. data/ext/tcc/tcc-0.9.26/tccasm.c +1118 -0
  55. data/ext/tcc/tcc-0.9.26/tcccoff.c +948 -0
  56. data/ext/tcc/tcc-0.9.26/tccelf.c +3129 -0
  57. data/ext/tcc/tcc-0.9.26/tccgen.c +5841 -0
  58. data/ext/tcc/tcc-0.9.26/tccpe.c +1887 -0
  59. data/ext/tcc/tcc-0.9.26/tccpp.c +3128 -0
  60. data/ext/tcc/tcc-0.9.26/tccrun.c +737 -0
  61. data/ext/tcc/tcc-0.9.26/tcctok.h +278 -0
  62. data/ext/tcc/tcc-0.9.26/tests/Makefile +199 -0
  63. data/ext/tcc/tcc-0.9.26/tests/asmtest.S +609 -0
  64. data/ext/tcc/tcc-0.9.26/tests/boundtest.c +233 -0
  65. data/ext/tcc/tcc-0.9.26/tests/gcctestsuite.sh +33 -0
  66. data/ext/tcc/tcc-0.9.26/tests/libtcc_test.c +76 -0
  67. data/ext/tcc/tcc-0.9.26/tests/tcctest.c +2713 -0
  68. data/ext/tcc/tcc-0.9.26/tests/tests2/00_assignment.c +18 -0
  69. data/ext/tcc/tcc-0.9.26/tests/tests2/00_assignment.expect +3 -0
  70. data/ext/tcc/tcc-0.9.26/tests/tests2/01_comment.c +14 -0
  71. data/ext/tcc/tcc-0.9.26/tests/tests2/01_comment.expect +5 -0
  72. data/ext/tcc/tcc-0.9.26/tests/tests2/02_printf.c +18 -0
  73. data/ext/tcc/tcc-0.9.26/tests/tests2/02_printf.expect +15 -0
  74. data/ext/tcc/tcc-0.9.26/tests/tests2/03_struct.c +31 -0
  75. data/ext/tcc/tcc-0.9.26/tests/tests2/03_struct.expect +6 -0
  76. data/ext/tcc/tcc-0.9.26/tests/tests2/04_for.c +15 -0
  77. data/ext/tcc/tcc-0.9.26/tests/tests2/04_for.expect +10 -0
  78. data/ext/tcc/tcc-0.9.26/tests/tests2/05_array.c +21 -0
  79. data/ext/tcc/tcc-0.9.26/tests/tests2/05_array.expect +10 -0
  80. data/ext/tcc/tcc-0.9.26/tests/tests2/06_case.c +29 -0
  81. data/ext/tcc/tcc-0.9.26/tests/tests2/06_case.expect +8 -0
  82. data/ext/tcc/tcc-0.9.26/tests/tests2/07_function.c +30 -0
  83. data/ext/tcc/tcc-0.9.26/tests/tests2/07_function.expect +4 -0
  84. data/ext/tcc/tcc-0.9.26/tests/tests2/08_while.c +24 -0
  85. data/ext/tcc/tcc-0.9.26/tests/tests2/08_while.expect +11 -0
  86. data/ext/tcc/tcc-0.9.26/tests/tests2/09_do_while.c +24 -0
  87. data/ext/tcc/tcc-0.9.26/tests/tests2/09_do_while.expect +11 -0
  88. data/ext/tcc/tcc-0.9.26/tests/tests2/10_pointer.c +40 -0
  89. data/ext/tcc/tcc-0.9.26/tests/tests2/10_pointer.expect +8 -0
  90. data/ext/tcc/tcc-0.9.26/tests/tests2/11_precedence.c +40 -0
  91. data/ext/tcc/tcc-0.9.26/tests/tests2/11_precedence.expect +15 -0
  92. data/ext/tcc/tcc-0.9.26/tests/tests2/12_hashdefine.c +14 -0
  93. data/ext/tcc/tcc-0.9.26/tests/tests2/12_hashdefine.expect +2 -0
  94. data/ext/tcc/tcc-0.9.26/tests/tests2/13_integer_literals.c +20 -0
  95. data/ext/tcc/tcc-0.9.26/tests/tests2/13_integer_literals.expect +5 -0
  96. data/ext/tcc/tcc-0.9.26/tests/tests2/14_if.c +21 -0
  97. data/ext/tcc/tcc-0.9.26/tests/tests2/14_if.expect +2 -0
  98. data/ext/tcc/tcc-0.9.26/tests/tests2/15_recursion.c +21 -0
  99. data/ext/tcc/tcc-0.9.26/tests/tests2/15_recursion.expect +10 -0
  100. data/ext/tcc/tcc-0.9.26/tests/tests2/16_nesting.c +21 -0
  101. data/ext/tcc/tcc-0.9.26/tests/tests2/16_nesting.expect +18 -0
  102. data/ext/tcc/tcc-0.9.26/tests/tests2/17_enum.c +29 -0
  103. data/ext/tcc/tcc-0.9.26/tests/tests2/17_enum.expect +3 -0
  104. data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.c +12 -0
  105. data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.expect +3 -0
  106. data/ext/tcc/tcc-0.9.26/tests/tests2/18_include.h +1 -0
  107. data/ext/tcc/tcc-0.9.26/tests/tests2/19_pointer_arithmetic.c +28 -0
  108. data/ext/tcc/tcc-0.9.26/tests/tests2/19_pointer_arithmetic.expect +3 -0
  109. data/ext/tcc/tcc-0.9.26/tests/tests2/20_pointer_comparison.c +24 -0
  110. data/ext/tcc/tcc-0.9.26/tests/tests2/20_pointer_comparison.expect +6 -0
  111. data/ext/tcc/tcc-0.9.26/tests/tests2/21_char_array.c +33 -0
  112. data/ext/tcc/tcc-0.9.26/tests/tests2/21_char_array.expect +7 -0
  113. data/ext/tcc/tcc-0.9.26/tests/tests2/22_floating_point.c +50 -0
  114. data/ext/tcc/tcc-0.9.26/tests/tests2/22_floating_point.expect +16 -0
  115. data/ext/tcc/tcc-0.9.26/tests/tests2/23_type_coercion.c +54 -0
  116. data/ext/tcc/tcc-0.9.26/tests/tests2/23_type_coercion.expect +12 -0
  117. data/ext/tcc/tcc-0.9.26/tests/tests2/24_math_library.c +28 -0
  118. data/ext/tcc/tcc-0.9.26/tests/tests2/24_math_library.expect +18 -0
  119. data/ext/tcc/tcc-0.9.26/tests/tests2/25_quicksort.c +83 -0
  120. data/ext/tcc/tcc-0.9.26/tests/tests2/25_quicksort.expect +2 -0
  121. data/ext/tcc/tcc-0.9.26/tests/tests2/26_character_constants.c +17 -0
  122. data/ext/tcc/tcc-0.9.26/tests/tests2/26_character_constants.expect +8 -0
  123. data/ext/tcc/tcc-0.9.26/tests/tests2/27_sizeof.c +16 -0
  124. data/ext/tcc/tcc-0.9.26/tests/tests2/27_sizeof.expect +3 -0
  125. data/ext/tcc/tcc-0.9.26/tests/tests2/28_strings.c +46 -0
  126. data/ext/tcc/tcc-0.9.26/tests/tests2/28_strings.expect +19 -0
  127. data/ext/tcc/tcc-0.9.26/tests/tests2/29_array_address.c +13 -0
  128. data/ext/tcc/tcc-0.9.26/tests/tests2/29_array_address.expect +1 -0
  129. data/ext/tcc/tcc-0.9.26/tests/tests2/30_hanoi.c +122 -0
  130. data/ext/tcc/tcc-0.9.26/tests/tests2/30_hanoi.expect +71 -0
  131. data/ext/tcc/tcc-0.9.26/tests/tests2/31_args.c +14 -0
  132. data/ext/tcc/tcc-0.9.26/tests/tests2/31_args.expect +7 -0
  133. data/ext/tcc/tcc-0.9.26/tests/tests2/32_led.c +266 -0
  134. data/ext/tcc/tcc-0.9.26/tests/tests2/32_led.expect +4 -0
  135. data/ext/tcc/tcc-0.9.26/tests/tests2/33_ternary_op.c +15 -0
  136. data/ext/tcc/tcc-0.9.26/tests/tests2/33_ternary_op.expect +10 -0
  137. data/ext/tcc/tcc-0.9.26/tests/tests2/34_array_assignment.c +23 -0
  138. data/ext/tcc/tcc-0.9.26/tests/tests2/34_array_assignment.expect +2 -0
  139. data/ext/tcc/tcc-0.9.26/tests/tests2/35_sizeof.c +14 -0
  140. data/ext/tcc/tcc-0.9.26/tests/tests2/35_sizeof.expect +2 -0
  141. data/ext/tcc/tcc-0.9.26/tests/tests2/36_array_initialisers.c +21 -0
  142. data/ext/tcc/tcc-0.9.26/tests/tests2/36_array_initialisers.expect +20 -0
  143. data/ext/tcc/tcc-0.9.26/tests/tests2/37_sprintf.c +17 -0
  144. data/ext/tcc/tcc-0.9.26/tests/tests2/37_sprintf.expect +20 -0
  145. data/ext/tcc/tcc-0.9.26/tests/tests2/38_multiple_array_index.c +32 -0
  146. data/ext/tcc/tcc-0.9.26/tests/tests2/38_multiple_array_index.expect +4 -0
  147. data/ext/tcc/tcc-0.9.26/tests/tests2/39_typedef.c +31 -0
  148. data/ext/tcc/tcc-0.9.26/tests/tests2/39_typedef.expect +3 -0
  149. data/ext/tcc/tcc-0.9.26/tests/tests2/40_stdio.c +52 -0
  150. data/ext/tcc/tcc-0.9.26/tests/tests2/40_stdio.expect +27 -0
  151. data/ext/tcc/tcc-0.9.26/tests/tests2/41_hashif.c +85 -0
  152. data/ext/tcc/tcc-0.9.26/tests/tests2/41_hashif.expect +6 -0
  153. data/ext/tcc/tcc-0.9.26/tests/tests2/42_function_pointer.c +18 -0
  154. data/ext/tcc/tcc-0.9.26/tests/tests2/42_function_pointer.expect +2 -0
  155. data/ext/tcc/tcc-0.9.26/tests/tests2/43_void_param.c +15 -0
  156. data/ext/tcc/tcc-0.9.26/tests/tests2/43_void_param.expect +1 -0
  157. data/ext/tcc/tcc-0.9.26/tests/tests2/44_scoped_declarations.c +17 -0
  158. data/ext/tcc/tcc-0.9.26/tests/tests2/44_scoped_declarations.expect +1 -0
  159. data/ext/tcc/tcc-0.9.26/tests/tests2/45_empty_for.c +18 -0
  160. data/ext/tcc/tcc-0.9.26/tests/tests2/45_empty_for.expect +10 -0
  161. data/ext/tcc/tcc-0.9.26/tests/tests2/46_grep.c +564 -0
  162. data/ext/tcc/tcc-0.9.26/tests/tests2/47_switch_return.c +24 -0
  163. data/ext/tcc/tcc-0.9.26/tests/tests2/47_switch_return.expect +4 -0
  164. data/ext/tcc/tcc-0.9.26/tests/tests2/48_nested_break.c +26 -0
  165. data/ext/tcc/tcc-0.9.26/tests/tests2/48_nested_break.expect +1 -0
  166. data/ext/tcc/tcc-0.9.26/tests/tests2/49_bracket_evaluation.c +23 -0
  167. data/ext/tcc/tcc-0.9.26/tests/tests2/49_bracket_evaluation.expect +1 -0
  168. data/ext/tcc/tcc-0.9.26/tests/tests2/50_logical_second_arg.c +29 -0
  169. data/ext/tcc/tcc-0.9.26/tests/tests2/50_logical_second_arg.expect +20 -0
  170. data/ext/tcc/tcc-0.9.26/tests/tests2/51_static.c +30 -0
  171. data/ext/tcc/tcc-0.9.26/tests/tests2/51_static.expect +8 -0
  172. data/ext/tcc/tcc-0.9.26/tests/tests2/52_unnamed_enum.c +27 -0
  173. data/ext/tcc/tcc-0.9.26/tests/tests2/52_unnamed_enum.expect +9 -0
  174. data/ext/tcc/tcc-0.9.26/tests/tests2/54_goto.c +56 -0
  175. data/ext/tcc/tcc-0.9.26/tests/tests2/54_goto.expect +8 -0
  176. data/ext/tcc/tcc-0.9.26/tests/tests2/55_lshift_type.c +52 -0
  177. data/ext/tcc/tcc-0.9.26/tests/tests2/55_lshift_type.expect +1 -0
  178. data/ext/tcc/tcc-0.9.26/tests/tests2/LICENSE +37 -0
  179. data/ext/tcc/tcc-0.9.26/tests/tests2/Makefile +98 -0
  180. data/ext/tcc/tcc-0.9.26/texi2pod.pl +427 -0
  181. data/ext/tcc/tcc-0.9.26/win32/build-tcc.bat +60 -0
  182. data/ext/tcc/tcc-0.9.26/win32/examples/dll.c +12 -0
  183. data/ext/tcc/tcc-0.9.26/win32/examples/fib.c +23 -0
  184. data/ext/tcc/tcc-0.9.26/win32/examples/hello_dll.c +19 -0
  185. data/ext/tcc/tcc-0.9.26/win32/examples/hello_win.c +163 -0
  186. data/ext/tcc/tcc-0.9.26/win32/include/_mingw.h +139 -0
  187. data/ext/tcc/tcc-0.9.26/win32/include/assert.h +54 -0
  188. data/ext/tcc/tcc-0.9.26/win32/include/conio.h +409 -0
  189. data/ext/tcc/tcc-0.9.26/win32/include/ctype.h +281 -0
  190. data/ext/tcc/tcc-0.9.26/win32/include/dir.h +31 -0
  191. data/ext/tcc/tcc-0.9.26/win32/include/direct.h +68 -0
  192. data/ext/tcc/tcc-0.9.26/win32/include/dirent.h +135 -0
  193. data/ext/tcc/tcc-0.9.26/win32/include/dos.h +55 -0
  194. data/ext/tcc/tcc-0.9.26/win32/include/errno.h +75 -0
  195. data/ext/tcc/tcc-0.9.26/win32/include/excpt.h +123 -0
  196. data/ext/tcc/tcc-0.9.26/win32/include/fcntl.h +52 -0
  197. data/ext/tcc/tcc-0.9.26/win32/include/fenv.h +108 -0
  198. data/ext/tcc/tcc-0.9.26/win32/include/inttypes.h +297 -0
  199. data/ext/tcc/tcc-0.9.26/win32/include/io.h +418 -0
  200. data/ext/tcc/tcc-0.9.26/win32/include/limits.h +111 -0
  201. data/ext/tcc/tcc-0.9.26/win32/include/locale.h +91 -0
  202. data/ext/tcc/tcc-0.9.26/win32/include/malloc.h +175 -0
  203. data/ext/tcc/tcc-0.9.26/win32/include/math.h +777 -0
  204. data/ext/tcc/tcc-0.9.26/win32/include/mem.h +13 -0
  205. data/ext/tcc/tcc-0.9.26/win32/include/memory.h +40 -0
  206. data/ext/tcc/tcc-0.9.26/win32/include/process.h +176 -0
  207. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/conio_s.h +42 -0
  208. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/crtdbg_s.h +19 -0
  209. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/io_s.h +33 -0
  210. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/mbstring_s.h +52 -0
  211. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/search_s.h +25 -0
  212. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stdio_s.h +145 -0
  213. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stdlib_s.h +67 -0
  214. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/stralign_s.h +30 -0
  215. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/string_s.h +41 -0
  216. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/sys/timeb_s.h +34 -0
  217. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/tchar_s.h +266 -0
  218. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/time_s.h +61 -0
  219. data/ext/tcc/tcc-0.9.26/win32/include/sec_api/wchar_s.h +128 -0
  220. data/ext/tcc/tcc-0.9.26/win32/include/setjmp.h +160 -0
  221. data/ext/tcc/tcc-0.9.26/win32/include/share.h +28 -0
  222. data/ext/tcc/tcc-0.9.26/win32/include/signal.h +63 -0
  223. data/ext/tcc/tcc-0.9.26/win32/include/stdint.h +209 -0
  224. data/ext/tcc/tcc-0.9.26/win32/include/stdio.h +429 -0
  225. data/ext/tcc/tcc-0.9.26/win32/include/stdlib.h +580 -0
  226. data/ext/tcc/tcc-0.9.26/win32/include/string.h +164 -0
  227. data/ext/tcc/tcc-0.9.26/win32/include/sys/fcntl.h +13 -0
  228. data/ext/tcc/tcc-0.9.26/win32/include/sys/file.h +14 -0
  229. data/ext/tcc/tcc-0.9.26/win32/include/sys/locking.h +30 -0
  230. data/ext/tcc/tcc-0.9.26/win32/include/sys/stat.h +290 -0
  231. data/ext/tcc/tcc-0.9.26/win32/include/sys/time.h +69 -0
  232. data/ext/tcc/tcc-0.9.26/win32/include/sys/timeb.h +133 -0
  233. data/ext/tcc/tcc-0.9.26/win32/include/sys/types.h +118 -0
  234. data/ext/tcc/tcc-0.9.26/win32/include/sys/unistd.h +14 -0
  235. data/ext/tcc/tcc-0.9.26/win32/include/sys/utime.h +146 -0
  236. data/ext/tcc/tcc-0.9.26/win32/include/tchar.h +1102 -0
  237. data/ext/tcc/tcc-0.9.26/win32/include/time.h +287 -0
  238. data/ext/tcc/tcc-0.9.26/win32/include/vadefs.h +11 -0
  239. data/ext/tcc/tcc-0.9.26/win32/include/values.h +4 -0
  240. data/ext/tcc/tcc-0.9.26/win32/include/wchar.h +871 -0
  241. data/ext/tcc/tcc-0.9.26/win32/include/wctype.h +172 -0
  242. data/ext/tcc/tcc-0.9.26/win32/include/winapi/basetsd.h +149 -0
  243. data/ext/tcc/tcc-0.9.26/win32/include/winapi/basetyps.h +85 -0
  244. data/ext/tcc/tcc-0.9.26/win32/include/winapi/guiddef.h +151 -0
  245. data/ext/tcc/tcc-0.9.26/win32/include/winapi/intrin.h +11 -0
  246. data/ext/tcc/tcc-0.9.26/win32/include/winapi/poppack.h +8 -0
  247. data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack1.h +8 -0
  248. data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack2.h +8 -0
  249. data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack4.h +8 -0
  250. data/ext/tcc/tcc-0.9.26/win32/include/winapi/pshpack8.h +8 -0
  251. data/ext/tcc/tcc-0.9.26/win32/include/winapi/reason.h +80 -0
  252. data/ext/tcc/tcc-0.9.26/win32/include/winapi/specstrings.h +7 -0
  253. data/ext/tcc/tcc-0.9.26/win32/include/winapi/stralign.h +154 -0
  254. data/ext/tcc/tcc-0.9.26/win32/include/winapi/tvout.h +79 -0
  255. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winbase.h +2951 -0
  256. data/ext/tcc/tcc-0.9.26/win32/include/winapi/wincon.h +301 -0
  257. data/ext/tcc/tcc-0.9.26/win32/include/winapi/windef.h +293 -0
  258. data/ext/tcc/tcc-0.9.26/win32/include/winapi/windows.h +123 -0
  259. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winerror.h +3166 -0
  260. data/ext/tcc/tcc-0.9.26/win32/include/winapi/wingdi.h +4080 -0
  261. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnetwk.h +476 -0
  262. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnls.h +765 -0
  263. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winnt.h +5770 -0
  264. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winreg.h +272 -0
  265. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winuser.h +5651 -0
  266. data/ext/tcc/tcc-0.9.26/win32/include/winapi/winver.h +160 -0
  267. data/ext/tcc/tcc-0.9.26/win32/lib/chkstk.S +191 -0
  268. data/ext/tcc/tcc-0.9.26/win32/lib/crt1.c +34 -0
  269. data/ext/tcc/tcc-0.9.26/win32/lib/dllcrt1.c +13 -0
  270. data/ext/tcc/tcc-0.9.26/win32/lib/dllmain.c +9 -0
  271. data/ext/tcc/tcc-0.9.26/win32/lib/gdi32.def +337 -0
  272. data/ext/tcc/tcc-0.9.26/win32/lib/kernel32.def +765 -0
  273. data/ext/tcc/tcc-0.9.26/win32/lib/msvcrt.def +1399 -0
  274. data/ext/tcc/tcc-0.9.26/win32/lib/user32.def +654 -0
  275. data/ext/tcc/tcc-0.9.26/win32/lib/wincrt1.c +64 -0
  276. data/ext/tcc/tcc-0.9.26/win32/tcc-win32.txt +156 -0
  277. data/ext/tcc/tcc-0.9.26/win32/tools/tiny_impdef.c +243 -0
  278. data/ext/tcc/tcc-0.9.26/win32/tools/tiny_libmaker.c +258 -0
  279. data/ext/tcc/tcc-0.9.26/x86_64-asm.h +448 -0
  280. data/ext/tcc/tcc-0.9.26/x86_64-gen.c +1701 -0
  281. data/lib/tcc.rb +291 -0
  282. data/tcc.gemspec +15 -0
  283. metadata +343 -0
@@ -0,0 +1,287 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _TIME_H_
7
+ #define _TIME_H_
8
+
9
+ #include <_mingw.h>
10
+
11
+ #ifndef _WIN32
12
+ #error Only Win32 target is supported!
13
+ #endif
14
+
15
+ #pragma pack(push,_CRT_PACKING)
16
+
17
+ #ifdef __cplusplus
18
+ extern "C" {
19
+ #endif
20
+
21
+ #ifndef _CRTIMP
22
+ #define _CRTIMP __declspec(dllimport)
23
+ #endif
24
+
25
+ #ifndef _WCHAR_T_DEFINED
26
+ #define _WCHAR_T_DEFINED
27
+ typedef unsigned short wchar_t;
28
+ #endif
29
+
30
+ #ifndef _TIME32_T_DEFINED
31
+ #define _TIME32_T_DEFINED
32
+ typedef long __time32_t;
33
+ #endif
34
+
35
+ #ifndef _TIME64_T_DEFINED
36
+ #define _TIME64_T_DEFINED
37
+ #if _INTEGRAL_MAX_BITS >= 64
38
+ #if defined(__GNUC__) && defined(__STRICT_ANSI__)
39
+ typedef int _time64_t __attribute__ ((mode (DI)));
40
+ #else
41
+ typedef __int64 __time64_t;
42
+ #endif
43
+ #endif
44
+ #endif
45
+
46
+ #ifndef _TIME_T_DEFINED
47
+ #define _TIME_T_DEFINED
48
+ #ifdef _USE_32BIT_TIME_T
49
+ typedef __time32_t time_t;
50
+ #else
51
+ typedef __time64_t time_t;
52
+ #endif
53
+ #endif
54
+
55
+ #ifndef _CLOCK_T_DEFINED
56
+ #define _CLOCK_T_DEFINED
57
+ typedef long clock_t;
58
+ #endif
59
+
60
+ #ifndef _SIZE_T_DEFINED
61
+ #define _SIZE_T_DEFINED
62
+ #undef size_t
63
+ #ifdef _WIN64
64
+ #if defined(__GNUC__) && defined(__STRICT_ANSI__)
65
+ typedef unsigned int size_t __attribute__ ((mode (DI)));
66
+ #else
67
+ typedef unsigned __int64 size_t;
68
+ #endif
69
+ #else
70
+ typedef unsigned int size_t;
71
+ #endif
72
+ #endif
73
+
74
+ #ifndef _SSIZE_T_DEFINED
75
+ #define _SSIZE_T_DEFINED
76
+ #undef ssize_t
77
+ #ifdef _WIN64
78
+ #if defined(__GNUC__) && defined(__STRICT_ANSI__)
79
+ typedef int ssize_t __attribute__ ((mode (DI)));
80
+ #else
81
+ typedef __int64 ssize_t;
82
+ #endif
83
+ #else
84
+ typedef int ssize_t;
85
+ #endif
86
+ #endif
87
+
88
+ #ifndef NULL
89
+ #ifdef __cplusplus
90
+ #define NULL 0
91
+ #else
92
+ #define NULL ((void *)0)
93
+ #endif
94
+ #endif
95
+
96
+ #ifdef _USE_32BIT_TIME_T
97
+ #define _localtime32 localtime
98
+ #define _difftime32 difftime
99
+ #define _ctime32 ctime
100
+ #define _gmtime32 gmtime
101
+ #define _mktime32 mktime
102
+ #define _time32 time
103
+ #endif
104
+
105
+ #ifndef _TM_DEFINED
106
+ #define _TM_DEFINED
107
+ struct tm {
108
+ int tm_sec;
109
+ int tm_min;
110
+ int tm_hour;
111
+ int tm_mday;
112
+ int tm_mon;
113
+ int tm_year;
114
+ int tm_wday;
115
+ int tm_yday;
116
+ int tm_isdst;
117
+ };
118
+ #endif
119
+
120
+ #define CLOCKS_PER_SEC 1000
121
+
122
+ __MINGW_IMPORT int _daylight;
123
+ __MINGW_IMPORT long _dstbias;
124
+ __MINGW_IMPORT long _timezone;
125
+ __MINGW_IMPORT char * _tzname[2];
126
+ _CRTIMP errno_t __cdecl _get_daylight(int *_Daylight);
127
+ _CRTIMP errno_t __cdecl _get_dstbias(long *_Daylight_savings_bias);
128
+ _CRTIMP errno_t __cdecl _get_timezone(long *_Timezone);
129
+ _CRTIMP errno_t __cdecl _get_tzname(size_t *_ReturnValue,char *_Buffer,size_t _SizeInBytes,int _Index);
130
+ char *__cdecl asctime(const struct tm *_Tm);
131
+ _CRTIMP char *__cdecl _ctime32(const __time32_t *_Time);
132
+ clock_t __cdecl clock(void);
133
+ _CRTIMP double __cdecl _difftime32(__time32_t _Time1,__time32_t _Time2);
134
+ _CRTIMP struct tm *__cdecl _gmtime32(const __time32_t *_Time);
135
+ _CRTIMP struct tm *__cdecl _localtime32(const __time32_t *_Time);
136
+ size_t __cdecl strftime(char *_Buf,size_t _SizeInBytes,const char *_Format,const struct tm *_Tm);
137
+ _CRTIMP size_t __cdecl _strftime_l(char *_Buf,size_t _Max_size,const char *_Format,const struct tm *_Tm,_locale_t _Locale);
138
+ _CRTIMP char *__cdecl _strdate(char *_Buffer);
139
+ _CRTIMP char *__cdecl _strtime(char *_Buffer);
140
+ _CRTIMP __time32_t __cdecl _time32(__time32_t *_Time);
141
+ _CRTIMP __time32_t __cdecl _mktime32(struct tm *_Tm);
142
+ _CRTIMP __time32_t __cdecl _mkgmtime32(struct tm *_Tm);
143
+ #if defined (_POSIX_) || defined(__GNUC__)
144
+ void __cdecl tzset(void);
145
+ #else
146
+ _CRTIMP void __cdecl _tzset(void);
147
+ #endif
148
+
149
+ #if _INTEGRAL_MAX_BITS >= 64
150
+ double __cdecl _difftime64(__time64_t _Time1,__time64_t _Time2);
151
+ _CRTIMP char *__cdecl _ctime64(const __time64_t *_Time);
152
+ _CRTIMP struct tm *__cdecl _gmtime64(const __time64_t *_Time);
153
+ _CRTIMP struct tm *__cdecl _localtime64(const __time64_t *_Time);
154
+ _CRTIMP __time64_t __cdecl _mktime64(struct tm *_Tm);
155
+ _CRTIMP __time64_t __cdecl _mkgmtime64(struct tm *_Tm);
156
+ _CRTIMP __time64_t __cdecl _time64(__time64_t *_Time);
157
+ #endif
158
+ unsigned __cdecl _getsystime(struct tm *_Tm);
159
+ unsigned __cdecl _setsystime(struct tm *_Tm,unsigned _MilliSec);
160
+
161
+ #ifndef _SIZE_T_DEFINED
162
+ #define _SIZE_T_DEFINED
163
+ #ifdef _WIN64
164
+ #if defined(__GNUC__) && defined(__STRICT_ANSI__)
165
+ typedef unsigned int size_t __attribute__ ((mode (DI)));
166
+ #else
167
+ typedef unsigned __int64 size_t;
168
+ #endif
169
+ #else
170
+ typedef unsigned long size_t;
171
+ #endif
172
+ #endif
173
+
174
+ #ifndef _SSIZE_T_DEFINED
175
+ #define _SSIZE_T_DEFINED
176
+ #ifdef _WIN64
177
+ #if defined(__GNUC__) && defined(__STRICT_ANSI__)
178
+ typedef int ssize_t __attribute__ ((mode (DI)));
179
+ #else
180
+ typedef __int64 ssize_t;
181
+ #endif
182
+ #else
183
+ typedef long ssize_t;
184
+ #endif
185
+ #endif
186
+
187
+ #ifndef _WTIME_DEFINED
188
+ _CRTIMP wchar_t *__cdecl _wasctime(const struct tm *_Tm);
189
+ _CRTIMP wchar_t *__cdecl _wctime32(const __time32_t *_Time);
190
+ size_t __cdecl wcsftime(wchar_t *_Buf,size_t _SizeInWords,const wchar_t *_Format,const struct tm *_Tm);
191
+ _CRTIMP size_t __cdecl _wcsftime_l(wchar_t *_Buf,size_t _SizeInWords,const wchar_t *_Format,const struct tm *_Tm,_locale_t _Locale);
192
+ _CRTIMP wchar_t *__cdecl _wstrdate(wchar_t *_Buffer);
193
+ _CRTIMP wchar_t *__cdecl _wstrtime(wchar_t *_Buffer);
194
+ #if _INTEGRAL_MAX_BITS >= 64
195
+ _CRTIMP wchar_t *__cdecl _wctime64(const __time64_t *_Time);
196
+ #endif
197
+
198
+ #if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL)
199
+ #define _INC_WTIME_INL
200
+ #ifdef _USE_32BIT_TIME_T
201
+ __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime32(_Time); }
202
+ #else
203
+ __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime64(_Time); }
204
+ #endif
205
+ #endif
206
+
207
+ #define _WTIME_DEFINED
208
+ #endif
209
+
210
+ #ifndef RC_INVOKED
211
+ double __cdecl difftime(time_t _Time1,time_t _Time2);
212
+ char *__cdecl ctime(const time_t *_Time);
213
+ struct tm *__cdecl gmtime(const time_t *_Time);
214
+ struct tm *__cdecl localtime(const time_t *_Time);
215
+ struct tm *__cdecl localtime_r(const time_t *_Time,struct tm *);
216
+
217
+ time_t __cdecl mktime(struct tm *_Tm);
218
+ time_t __cdecl _mkgmtime(struct tm *_Tm);
219
+ time_t __cdecl time(time_t *_Time);
220
+
221
+ #ifdef _USE_32BIT_TIME_T
222
+ #if 0
223
+ __CRT_INLINE double __cdecl difftime(time_t _Time1,time_t _Time2) { return _difftime32(_Time1,_Time2); }
224
+ __CRT_INLINE char *__cdecl ctime(const time_t *_Time) { return _ctime32(_Time); }
225
+ __CRT_INLINE struct tm *__cdecl gmtime(const time_t *_Time) { return _gmtime32(_Time); }
226
+ __CRT_INLINE struct tm *__cdecl localtime(const time_t *_Time) { return _localtime32(_Time); }
227
+ __CRT_INLINE time_t __cdecl mktime(struct tm *_Tm) { return _mktime32(_Tm); }
228
+ __CRT_INLINE time_t __cdecl _mkgmtime(struct tm *_Tm) { return _mkgmtime32(_Tm); }
229
+ __CRT_INLINE time_t __cdecl time(time_t *_Time) { return _time32(_Time); }
230
+ #endif
231
+ #else
232
+ __CRT_INLINE double __cdecl difftime(time_t _Time1,time_t _Time2) { return _difftime64(_Time1,_Time2); }
233
+ __CRT_INLINE char *__cdecl ctime(const time_t *_Time) { return _ctime64(_Time); }
234
+ __CRT_INLINE struct tm *__cdecl gmtime(const time_t *_Time) { return _gmtime64(_Time); }
235
+ __CRT_INLINE struct tm *__cdecl localtime(const time_t *_Time) { return _localtime64(_Time); }
236
+ __CRT_INLINE time_t __cdecl mktime(struct tm *_Tm) { return _mktime64(_Tm); }
237
+ __CRT_INLINE time_t __cdecl _mkgmtime(struct tm *_Tm) { return _mkgmtime64(_Tm); }
238
+ __CRT_INLINE time_t __cdecl time(time_t *_Time) { return _time64(_Time); }
239
+ #endif
240
+ #endif
241
+
242
+ #if !defined(NO_OLDNAMES) || defined(_POSIX)
243
+ #define CLK_TCK CLOCKS_PER_SEC
244
+
245
+ __MINGW_IMPORT int daylight;
246
+ __MINGW_IMPORT long dstbias;
247
+ __MINGW_IMPORT long timezone;
248
+ __MINGW_IMPORT char *tzname[2];
249
+ void __cdecl tzset(void);
250
+ #endif
251
+
252
+ #ifndef _TIMEVAL_DEFINED /* also in winsock[2].h */
253
+ #define _TIMEVAL_DEFINED
254
+ struct timeval {
255
+ long tv_sec;
256
+ long tv_usec;
257
+ };
258
+ #define timerisset(tvp) ((tvp)->tv_sec || (tvp)->tv_usec)
259
+ #define timercmp(tvp,uvp,cmp) ((tvp)->tv_sec cmp (uvp)->tv_sec || (tvp)->tv_sec==(uvp)->tv_sec && (tvp)->tv_usec cmp (uvp)->tv_usec)
260
+ #define timerclear(tvp) (tvp)->tv_sec = (tvp)->tv_usec = 0
261
+ #endif /* _TIMEVAL_DEFINED */
262
+
263
+ #ifndef __STRICT_ANSI__
264
+ #ifndef _TIMEZONE_DEFINED /* also in sys/time.h */
265
+ #define _TIMEZONE_DEFINED
266
+ struct timezone {
267
+ int tz_minuteswest;
268
+ int tz_dsttime;
269
+ };
270
+
271
+ extern int __cdecl mingw_gettimeofday (struct timeval *p, struct timezone *z);
272
+ #endif
273
+ #endif /* __STRICT_ANSI__ */
274
+
275
+ #ifdef __cplusplus
276
+ }
277
+ #endif
278
+
279
+ #pragma pack(pop)
280
+
281
+ #include <sec_api/time_s.h>
282
+
283
+ /* Adding timespec definition. */
284
+ #include <sys/timeb.h>
285
+
286
+ #endif /* End _TIME_H_ */
287
+
@@ -0,0 +1,11 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_VADEFS
7
+ #define _INC_VADEFS
8
+
9
+ //!__TINYC__: GNUC specific stuff removed
10
+
11
+ #endif
@@ -0,0 +1,4 @@
1
+ /*
2
+ * TODO: Nothing here yet. Should provide UNIX compatibility constants
3
+ * comparible to those in limits.h and float.h.
4
+ */
@@ -0,0 +1,871 @@
1
+ /**
2
+ * This file has no copyright assigned and is placed in the Public Domain.
3
+ * This file is part of the w64 mingw-runtime package.
4
+ * No warranty is given; refer to the file DISCLAIMER within this package.
5
+ */
6
+ #ifndef _INC_WCHAR
7
+ #define _INC_WCHAR
8
+
9
+ #include <_mingw.h>
10
+
11
+ #pragma pack(push,_CRT_PACKING)
12
+
13
+ #ifdef __cplusplus
14
+ extern "C" {
15
+ #endif
16
+
17
+ #define WCHAR_MIN 0
18
+ #define WCHAR_MAX ((wchar_t) -1) /* UINT16_MAX */
19
+
20
+ #ifndef __GNUC_VA_LIST
21
+ #define __GNUC_VA_LIST
22
+ typedef __builtin_va_list __gnuc_va_list;
23
+ #endif
24
+
25
+ #ifndef _VA_LIST_DEFINED
26
+ #define _VA_LIST_DEFINED
27
+ typedef __gnuc_va_list va_list;
28
+ #endif
29
+
30
+ #ifndef WEOF
31
+ #define WEOF (wint_t)(0xFFFF)
32
+ #endif
33
+
34
+ #ifndef _FILE_DEFINED
35
+ struct _iobuf {
36
+ char *_ptr;
37
+ int _cnt;
38
+ char *_base;
39
+ int _flag;
40
+ int _file;
41
+ int _charbuf;
42
+ int _bufsiz;
43
+ char *_tmpfname;
44
+ };
45
+ typedef struct _iobuf FILE;
46
+ #define _FILE_DEFINED
47
+ #endif
48
+
49
+ #ifndef _STDIO_DEFINED
50
+ #ifdef _WIN64
51
+ _CRTIMP FILE *__cdecl __iob_func(void);
52
+ #else
53
+ #ifdef _MSVCRT_
54
+ extern FILE _iob[]; /* A pointer to an array of FILE */
55
+ #define __iob_func() (_iob)
56
+ #else
57
+ extern FILE (*_imp___iob)[]; /* A pointer to an array of FILE */
58
+ #define __iob_func() (*_imp___iob)
59
+ #define _iob __iob_func()
60
+ #endif
61
+ #endif
62
+
63
+ #define _iob __iob_func()
64
+ #endif
65
+
66
+ #ifndef _STDSTREAM_DEFINED
67
+ #define stdin (&__iob_func()[0])
68
+ #define stdout (&__iob_func()[1])
69
+ #define stderr (&__iob_func()[2])
70
+ #define _STDSTREAM_DEFINED
71
+ #endif
72
+
73
+ #ifndef _FSIZE_T_DEFINED
74
+ typedef unsigned long _fsize_t;
75
+ #define _FSIZE_T_DEFINED
76
+ #endif
77
+
78
+ #ifndef _WFINDDATA_T_DEFINED
79
+ struct _wfinddata32_t {
80
+ unsigned attrib;
81
+ __time32_t time_create;
82
+ __time32_t time_access;
83
+ __time32_t time_write;
84
+ _fsize_t size;
85
+ wchar_t name[260];
86
+ };
87
+
88
+ /* #if _INTEGRAL_MAX_BITS >= 64 */
89
+
90
+ struct _wfinddata32i64_t {
91
+ unsigned attrib;
92
+ __time32_t time_create;
93
+ __time32_t time_access;
94
+ __time32_t time_write;
95
+ __int64 size;
96
+ wchar_t name[260];
97
+ };
98
+
99
+ struct _wfinddata64i32_t {
100
+ unsigned attrib;
101
+ __time64_t time_create;
102
+ __time64_t time_access;
103
+ __time64_t time_write;
104
+ _fsize_t size;
105
+ wchar_t name[260];
106
+ };
107
+
108
+ struct _wfinddata64_t {
109
+ unsigned attrib;
110
+ __time64_t time_create;
111
+ __time64_t time_access;
112
+ __time64_t time_write;
113
+ __int64 size;
114
+ wchar_t name[260];
115
+ };
116
+ /* #endif */
117
+
118
+ #ifdef _USE_32BIT_TIME_T
119
+ #define _wfinddata_t _wfinddata32_t
120
+ #define _wfinddatai64_t _wfinddata32i64_t
121
+
122
+ #define _wfindfirst _wfindfirst32
123
+ #define _wfindnext _wfindnext32
124
+ #define _wfindfirsti64 _wfindfirst32i64
125
+ #define _wfindnexti64 _wfindnext32i64
126
+ #else
127
+ #define _wfinddata_t _wfinddata64i32_t
128
+ #define _wfinddatai64_t _wfinddata64_t
129
+
130
+ #define _wfindfirst _wfindfirst64i32
131
+ #define _wfindnext _wfindnext64i32
132
+ #define _wfindfirsti64 _wfindfirst64
133
+ #define _wfindnexti64 _wfindnext64
134
+ #endif
135
+
136
+ #define _WFINDDATA_T_DEFINED
137
+ #endif
138
+
139
+ #ifndef NULL
140
+ #ifdef __cplusplus
141
+ #define NULL 0
142
+ #else
143
+ #define NULL ((void *)0)
144
+ #endif
145
+ #endif
146
+
147
+ #ifndef _CONST_RETURN
148
+ #define _CONST_RETURN
149
+ #endif
150
+
151
+ #define _WConst_return _CONST_RETURN
152
+
153
+ #ifndef _CRT_CTYPEDATA_DEFINED
154
+ #define _CRT_CTYPEDATA_DEFINED
155
+ #ifndef _CTYPE_DISABLE_MACROS
156
+
157
+ #ifndef __PCTYPE_FUNC
158
+ #define __PCTYPE_FUNC __pctype_func()
159
+ #ifdef _MSVCRT_
160
+ #define __pctype_func() (_pctype)
161
+ #else
162
+ #define __pctype_func() (*_imp___pctype)
163
+ #endif
164
+ #endif
165
+
166
+ #ifndef _pctype
167
+ #ifdef _MSVCRT_
168
+ extern unsigned short *_pctype;
169
+ #else
170
+ extern unsigned short **_imp___pctype;
171
+ #define _pctype (*_imp___pctype)
172
+ #endif
173
+ #endif
174
+ #endif
175
+ #endif
176
+
177
+ #ifndef _CRT_WCTYPEDATA_DEFINED
178
+ #define _CRT_WCTYPEDATA_DEFINED
179
+ #ifndef _CTYPE_DISABLE_MACROS
180
+ #ifndef _wctype
181
+ #ifdef _MSVCRT_
182
+ extern unsigned short *_wctype;
183
+ #else
184
+ extern unsigned short **_imp___wctype;
185
+ #define _wctype (*_imp___wctype)
186
+ #endif
187
+ #endif
188
+
189
+ #ifdef _MSVCRT_
190
+ #define __pwctype_func() (_pwctype)
191
+ #else
192
+ #define __pwctype_func() (*_imp___pwctype)
193
+ #endif
194
+
195
+ #ifndef _pwctype
196
+ #ifdef _MSVCRT_
197
+ extern unsigned short *_pwctype;
198
+ #else
199
+ extern unsigned short **_imp___pwctype;
200
+ #define _pwctype (*_imp___pwctype)
201
+ #endif
202
+ #endif
203
+
204
+ #endif
205
+ #endif
206
+
207
+ #define _UPPER 0x1
208
+ #define _LOWER 0x2
209
+ #define _DIGIT 0x4
210
+ #define _SPACE 0x8
211
+
212
+ #define _PUNCT 0x10
213
+ #define _CONTROL 0x20
214
+ #define _BLANK 0x40
215
+ #define _HEX 0x80
216
+
217
+ #define _LEADBYTE 0x8000
218
+ #define _ALPHA (0x0100|_UPPER|_LOWER)
219
+
220
+ #ifndef _WCTYPE_DEFINED
221
+ #define _WCTYPE_DEFINED
222
+
223
+ int __cdecl iswalpha(wint_t _C);
224
+ _CRTIMP int __cdecl _iswalpha_l(wint_t _C,_locale_t _Locale);
225
+ int __cdecl iswupper(wint_t _C);
226
+ _CRTIMP int __cdecl _iswupper_l(wint_t _C,_locale_t _Locale);
227
+ int __cdecl iswlower(wint_t _C);
228
+ _CRTIMP int __cdecl _iswlower_l(wint_t _C,_locale_t _Locale);
229
+ int __cdecl iswdigit(wint_t _C);
230
+ _CRTIMP int __cdecl _iswdigit_l(wint_t _C,_locale_t _Locale);
231
+ int __cdecl iswxdigit(wint_t _C);
232
+ _CRTIMP int __cdecl _iswxdigit_l(wint_t _C,_locale_t _Locale);
233
+ int __cdecl iswspace(wint_t _C);
234
+ _CRTIMP int __cdecl _iswspace_l(wint_t _C,_locale_t _Locale);
235
+ int __cdecl iswpunct(wint_t _C);
236
+ _CRTIMP int __cdecl _iswpunct_l(wint_t _C,_locale_t _Locale);
237
+ int __cdecl iswalnum(wint_t _C);
238
+ _CRTIMP int __cdecl _iswalnum_l(wint_t _C,_locale_t _Locale);
239
+ int __cdecl iswprint(wint_t _C);
240
+ _CRTIMP int __cdecl _iswprint_l(wint_t _C,_locale_t _Locale);
241
+ int __cdecl iswgraph(wint_t _C);
242
+ _CRTIMP int __cdecl _iswgraph_l(wint_t _C,_locale_t _Locale);
243
+ int __cdecl iswcntrl(wint_t _C);
244
+ _CRTIMP int __cdecl _iswcntrl_l(wint_t _C,_locale_t _Locale);
245
+ int __cdecl iswascii(wint_t _C);
246
+ int __cdecl isleadbyte(int _C);
247
+ _CRTIMP int __cdecl _isleadbyte_l(int _C,_locale_t _Locale);
248
+ wint_t __cdecl towupper(wint_t _C);
249
+ _CRTIMP wint_t __cdecl _towupper_l(wint_t _C,_locale_t _Locale);
250
+ wint_t __cdecl towlower(wint_t _C);
251
+ _CRTIMP wint_t __cdecl _towlower_l(wint_t _C,_locale_t _Locale);
252
+ int __cdecl iswctype(wint_t _C,wctype_t _Type);
253
+ _CRTIMP int __cdecl _iswctype_l(wint_t _C,wctype_t _Type,_locale_t _Locale);
254
+ _CRTIMP int __cdecl __iswcsymf(wint_t _C);
255
+ _CRTIMP int __cdecl _iswcsymf_l(wint_t _C,_locale_t _Locale);
256
+ _CRTIMP int __cdecl __iswcsym(wint_t _C);
257
+ _CRTIMP int __cdecl _iswcsym_l(wint_t _C,_locale_t _Locale);
258
+ int __cdecl is_wctype(wint_t _C,wctype_t _Type);
259
+ #endif
260
+
261
+ #ifndef _WDIRECT_DEFINED
262
+ #define _WDIRECT_DEFINED
263
+
264
+ _CRTIMP wchar_t *__cdecl _wgetcwd(wchar_t *_DstBuf,int _SizeInWords);
265
+ _CRTIMP wchar_t *__cdecl _wgetdcwd(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
266
+ wchar_t *__cdecl _wgetdcwd_nolock(int _Drive,wchar_t *_DstBuf,int _SizeInWords);
267
+ _CRTIMP int __cdecl _wchdir(const wchar_t *_Path);
268
+ _CRTIMP int __cdecl _wmkdir(const wchar_t *_Path);
269
+ _CRTIMP int __cdecl _wrmdir(const wchar_t *_Path);
270
+ #endif
271
+
272
+ #ifndef _WIO_DEFINED
273
+ #define _WIO_DEFINED
274
+
275
+ _CRTIMP int __cdecl _waccess(const wchar_t *_Filename,int _AccessMode);
276
+ _CRTIMP int __cdecl _wchmod(const wchar_t *_Filename,int _Mode);
277
+ _CRTIMP int __cdecl _wcreat(const wchar_t *_Filename,int _PermissionMode);
278
+ _CRTIMP intptr_t __cdecl _wfindfirst32(const wchar_t *_Filename,struct _wfinddata32_t *_FindData);
279
+ _CRTIMP int __cdecl _wfindnext32(intptr_t _FindHandle,struct _wfinddata32_t *_FindData);
280
+ _CRTIMP int __cdecl _wunlink(const wchar_t *_Filename);
281
+ _CRTIMP int __cdecl _wrename(const wchar_t *_NewFilename,const wchar_t *_OldFilename);
282
+ _CRTIMP wchar_t *__cdecl _wmktemp(wchar_t *_TemplateName);
283
+ #if _INTEGRAL_MAX_BITS >= 64
284
+ _CRTIMP intptr_t __cdecl _wfindfirst32i64(const wchar_t *_Filename,struct _wfinddata32i64_t *_FindData);
285
+ intptr_t __cdecl _wfindfirst64i32(const wchar_t *_Filename,struct _wfinddata64i32_t *_FindData);
286
+ _CRTIMP intptr_t __cdecl _wfindfirst64(const wchar_t *_Filename,struct _wfinddata64_t *_FindData);
287
+ _CRTIMP int __cdecl _wfindnext32i64(intptr_t _FindHandle,struct _wfinddata32i64_t *_FindData);
288
+ int __cdecl _wfindnext64i32(intptr_t _FindHandle,struct _wfinddata64i32_t *_FindData);
289
+ _CRTIMP int __cdecl _wfindnext64(intptr_t _FindHandle,struct _wfinddata64_t *_FindData);
290
+ #endif
291
+ _CRTIMP errno_t __cdecl _wsopen_s(int *_FileHandle,const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,int _PermissionFlag);
292
+ #if !defined(__cplusplus) || !(defined(_X86_) && !defined(__x86_64))
293
+ _CRTIMP int __cdecl _wopen(const wchar_t *_Filename,int _OpenFlag,...);
294
+ _CRTIMP int __cdecl _wsopen(const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,...);
295
+ #else
296
+ extern "C++" _CRTIMP int __cdecl _wopen(const wchar_t *_Filename,int _OpenFlag,int _PermissionMode = 0);
297
+ extern "C++" _CRTIMP int __cdecl _wsopen(const wchar_t *_Filename,int _OpenFlag,int _ShareFlag,int _PermissionMode = 0);
298
+ #endif
299
+ #endif
300
+
301
+ #ifndef _WLOCALE_DEFINED
302
+ #define _WLOCALE_DEFINED
303
+ _CRTIMP wchar_t *__cdecl _wsetlocale(int _Category,const wchar_t *_Locale);
304
+ #endif
305
+
306
+ #ifndef _WPROCESS_DEFINED
307
+ #define _WPROCESS_DEFINED
308
+
309
+ _CRTIMP intptr_t __cdecl _wexecl(const wchar_t *_Filename,const wchar_t *_ArgList,...);
310
+ _CRTIMP intptr_t __cdecl _wexecle(const wchar_t *_Filename,const wchar_t *_ArgList,...);
311
+ _CRTIMP intptr_t __cdecl _wexeclp(const wchar_t *_Filename,const wchar_t *_ArgList,...);
312
+ _CRTIMP intptr_t __cdecl _wexeclpe(const wchar_t *_Filename,const wchar_t *_ArgList,...);
313
+ _CRTIMP intptr_t __cdecl _wexecv(const wchar_t *_Filename,const wchar_t *const *_ArgList);
314
+ _CRTIMP intptr_t __cdecl _wexecve(const wchar_t *_Filename,const wchar_t *const *_ArgList,const wchar_t *const *_Env);
315
+ _CRTIMP intptr_t __cdecl _wexecvp(const wchar_t *_Filename,const wchar_t *const *_ArgList);
316
+ _CRTIMP intptr_t __cdecl _wexecvpe(const wchar_t *_Filename,const wchar_t *const *_ArgList,const wchar_t *const *_Env);
317
+ _CRTIMP intptr_t __cdecl _wspawnl(int _Mode,const wchar_t *_Filename,const wchar_t *_ArgList,...);
318
+ _CRTIMP intptr_t __cdecl _wspawnle(int _Mode,const wchar_t *_Filename,const wchar_t *_ArgList,...);
319
+ _CRTIMP intptr_t __cdecl _wspawnlp(int _Mode,const wchar_t *_Filename,const wchar_t *_ArgList,...);
320
+ _CRTIMP intptr_t __cdecl _wspawnlpe(int _Mode,const wchar_t *_Filename,const wchar_t *_ArgList,...);
321
+ _CRTIMP intptr_t __cdecl _wspawnv(int _Mode,const wchar_t *_Filename,const wchar_t *const *_ArgList);
322
+ _CRTIMP intptr_t __cdecl _wspawnve(int _Mode,const wchar_t *_Filename,const wchar_t *const *_ArgList,const wchar_t *const *_Env);
323
+ _CRTIMP intptr_t __cdecl _wspawnvp(int _Mode,const wchar_t *_Filename,const wchar_t *const *_ArgList);
324
+ _CRTIMP intptr_t __cdecl _wspawnvpe(int _Mode,const wchar_t *_Filename,const wchar_t *const *_ArgList,const wchar_t *const *_Env);
325
+ #ifndef _CRT_WSYSTEM_DEFINED
326
+ #define _CRT_WSYSTEM_DEFINED
327
+ _CRTIMP int __cdecl _wsystem(const wchar_t *_Command);
328
+ #endif
329
+ #endif
330
+
331
+ #ifndef _WCTYPE_INLINE_DEFINED
332
+ #undef _CRT_WCTYPE_NOINLINE
333
+ #if !defined(__cplusplus) || defined(_CRT_WCTYPE_NOINLINE)
334
+ #define iswalpha(_c) (iswctype(_c,_ALPHA))
335
+ #define iswupper(_c) (iswctype(_c,_UPPER))
336
+ #define iswlower(_c) (iswctype(_c,_LOWER))
337
+ #define iswdigit(_c) (iswctype(_c,_DIGIT))
338
+ #define iswxdigit(_c) (iswctype(_c,_HEX))
339
+ #define iswspace(_c) (iswctype(_c,_SPACE))
340
+ #define iswpunct(_c) (iswctype(_c,_PUNCT))
341
+ #define iswalnum(_c) (iswctype(_c,_ALPHA|_DIGIT))
342
+ #define iswprint(_c) (iswctype(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT))
343
+ #define iswgraph(_c) (iswctype(_c,_PUNCT|_ALPHA|_DIGIT))
344
+ #define iswcntrl(_c) (iswctype(_c,_CONTROL))
345
+ #define iswascii(_c) ((unsigned)(_c) < 0x80)
346
+
347
+ #define _iswalpha_l(_c,_p) (_iswctype_l(_c,_ALPHA,_p))
348
+ #define _iswupper_l(_c,_p) (_iswctype_l(_c,_UPPER,_p))
349
+ #define _iswlower_l(_c,_p) (_iswctype_l(_c,_LOWER,_p))
350
+ #define _iswdigit_l(_c,_p) (_iswctype_l(_c,_DIGIT,_p))
351
+ #define _iswxdigit_l(_c,_p) (_iswctype_l(_c,_HEX,_p))
352
+ #define _iswspace_l(_c,_p) (_iswctype_l(_c,_SPACE,_p))
353
+ #define _iswpunct_l(_c,_p) (_iswctype_l(_c,_PUNCT,_p))
354
+ #define _iswalnum_l(_c,_p) (_iswctype_l(_c,_ALPHA|_DIGIT,_p))
355
+ #define _iswprint_l(_c,_p) (_iswctype_l(_c,_BLANK|_PUNCT|_ALPHA|_DIGIT,_p))
356
+ #define _iswgraph_l(_c,_p) (_iswctype_l(_c,_PUNCT|_ALPHA|_DIGIT,_p))
357
+ #define _iswcntrl_l(_c,_p) (_iswctype_l(_c,_CONTROL,_p))
358
+ #ifndef _CTYPE_DISABLE_MACROS
359
+ #define isleadbyte(_c) (__PCTYPE_FUNC[(unsigned char)(_c)] & _LEADBYTE)
360
+ #endif
361
+ #endif
362
+ #define _WCTYPE_INLINE_DEFINED
363
+ #endif
364
+
365
+ #if !defined(_POSIX_) || defined(__GNUC__)
366
+ #ifndef _INO_T_DEFINED
367
+ #define _INO_T_DEFINED
368
+ typedef unsigned short _ino_t;
369
+ #ifndef NO_OLDNAMES
370
+ typedef unsigned short ino_t;
371
+ #endif
372
+ #endif
373
+
374
+ #ifndef _DEV_T_DEFINED
375
+ #define _DEV_T_DEFINED
376
+ typedef unsigned int _dev_t;
377
+ #ifndef NO_OLDNAMES
378
+ typedef unsigned int dev_t;
379
+ #endif
380
+ #endif
381
+
382
+ #ifndef _OFF_T_DEFINED
383
+ #define _OFF_T_DEFINED
384
+ #ifndef _OFF_T_
385
+ #define _OFF_T_
386
+ typedef long _off_t;
387
+ #if !defined(NO_OLDNAMES) || defined(_POSIX)
388
+ typedef long off_t;
389
+ #endif
390
+ #endif
391
+ #endif
392
+
393
+ #ifndef _OFF64_T_DEFINED
394
+ #define _OFF64_T_DEFINED
395
+ typedef long long _off64_t;
396
+ #if !defined(NO_OLDNAMES) || defined(_POSIX)
397
+ typedef long long off64_t;
398
+ #endif
399
+ #endif
400
+
401
+ #ifndef _STAT_DEFINED
402
+ #define _STAT_DEFINED
403
+
404
+ #ifdef _USE_32BIT_TIME_T
405
+ #ifdef WIN64
406
+ #define _fstat _fstat32
407
+ #define _stat _stat32
408
+ #define _wstat _wstat32
409
+ #else
410
+ #define _fstat32 _fstat
411
+ #define _stat32 _stat
412
+ #define _wstat32 _wstat
413
+ #endif
414
+ #define _fstati64 _fstat32i64
415
+ #define _stati64 _stat32i64
416
+ #define _wstati64 _wstat32i64
417
+ #else
418
+ #define _fstat _fstat64i32
419
+ #define _fstati64 _fstat64
420
+ #define _stat _stat64i32
421
+ #define _stati64 _stat64
422
+ #define _wstat _wstat64i32
423
+ #define _wstati64 _wstat64
424
+ #endif
425
+
426
+ struct _stat32 {
427
+ _dev_t st_dev;
428
+ _ino_t st_ino;
429
+ unsigned short st_mode;
430
+ short st_nlink;
431
+ short st_uid;
432
+ short st_gid;
433
+ _dev_t st_rdev;
434
+ _off_t st_size;
435
+ __time32_t st_atime;
436
+ __time32_t st_mtime;
437
+ __time32_t st_ctime;
438
+ };
439
+
440
+ #ifndef NO_OLDNAMES
441
+ struct stat {
442
+ _dev_t st_dev;
443
+ _ino_t st_ino;
444
+ unsigned short st_mode;
445
+ short st_nlink;
446
+ short st_uid;
447
+ short st_gid;
448
+ _dev_t st_rdev;
449
+ _off_t st_size;
450
+ time_t st_atime;
451
+ time_t st_mtime;
452
+ time_t st_ctime;
453
+ };
454
+ #endif
455
+
456
+ #if _INTEGRAL_MAX_BITS >= 64
457
+
458
+ struct _stat32i64 {
459
+ _dev_t st_dev;
460
+ _ino_t st_ino;
461
+ unsigned short st_mode;
462
+ short st_nlink;
463
+ short st_uid;
464
+ short st_gid;
465
+ _dev_t st_rdev;
466
+ __int64 st_size;
467
+ __time32_t st_atime;
468
+ __time32_t st_mtime;
469
+ __time32_t st_ctime;
470
+ };
471
+
472
+ struct _stat64i32 {
473
+ _dev_t st_dev;
474
+ _ino_t st_ino;
475
+ unsigned short st_mode;
476
+ short st_nlink;
477
+ short st_uid;
478
+ short st_gid;
479
+ _dev_t st_rdev;
480
+ _off_t st_size;
481
+ __time64_t st_atime;
482
+ __time64_t st_mtime;
483
+ __time64_t st_ctime;
484
+ };
485
+
486
+ struct _stat64 {
487
+ _dev_t st_dev;
488
+ _ino_t st_ino;
489
+ unsigned short st_mode;
490
+ short st_nlink;
491
+ short st_uid;
492
+ short st_gid;
493
+ _dev_t st_rdev;
494
+ __int64 st_size;
495
+ __time64_t st_atime;
496
+ __time64_t st_mtime;
497
+ __time64_t st_ctime;
498
+ };
499
+ #endif
500
+
501
+ #define __stat64 _stat64
502
+
503
+ #endif
504
+
505
+ #ifndef _WSTAT_DEFINED
506
+ #define _WSTAT_DEFINED
507
+
508
+ _CRTIMP int __cdecl _wstat32(const wchar_t *_Name,struct _stat32 *_Stat);
509
+ #if _INTEGRAL_MAX_BITS >= 64
510
+ _CRTIMP int __cdecl _wstat32i64(const wchar_t *_Name,struct _stat32i64 *_Stat);
511
+ int __cdecl _wstat64i32(const wchar_t *_Name,struct _stat64i32 *_Stat);
512
+ _CRTIMP int __cdecl _wstat64(const wchar_t *_Name,struct _stat64 *_Stat);
513
+ #endif
514
+ #endif
515
+ #endif
516
+
517
+ #ifndef _WCONIO_DEFINED
518
+ #define _WCONIO_DEFINED
519
+
520
+ #ifndef WEOF
521
+ #define WEOF (wint_t)(0xFFFF)
522
+ #endif
523
+
524
+ _CRTIMP wchar_t *_cgetws(wchar_t *_Buffer);
525
+ _CRTIMP wint_t __cdecl _getwch(void);
526
+ _CRTIMP wint_t __cdecl _getwche(void);
527
+ _CRTIMP wint_t __cdecl _putwch(wchar_t _WCh);
528
+ _CRTIMP wint_t __cdecl _ungetwch(wint_t _WCh);
529
+ _CRTIMP int __cdecl _cputws(const wchar_t *_String);
530
+ _CRTIMP int __cdecl _cwprintf(const wchar_t *_Format,...);
531
+ _CRTIMP int __cdecl _cwscanf(const wchar_t *_Format,...);
532
+ _CRTIMP int __cdecl _cwscanf_l(const wchar_t *_Format,_locale_t _Locale,...);
533
+ _CRTIMP int __cdecl _vcwprintf(const wchar_t *_Format,va_list _ArgList);
534
+ _CRTIMP int __cdecl _cwprintf_p(const wchar_t *_Format,...);
535
+ _CRTIMP int __cdecl _vcwprintf_p(const wchar_t *_Format,va_list _ArgList);
536
+
537
+ _CRTIMP int __cdecl _cwprintf_l(const wchar_t *_Format,_locale_t _Locale,...);
538
+ _CRTIMP int __cdecl _vcwprintf_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
539
+ _CRTIMP int __cdecl _cwprintf_p_l(const wchar_t *_Format,_locale_t _Locale,...);
540
+ _CRTIMP int __cdecl _vcwprintf_p_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
541
+ wint_t __cdecl _putwch_nolock(wchar_t _WCh);
542
+ wint_t __cdecl _getwch_nolock(void);
543
+ wint_t __cdecl _getwche_nolock(void);
544
+ wint_t __cdecl _ungetwch_nolock(wint_t _WCh);
545
+ #endif
546
+
547
+ #ifndef _WSTDIO_DEFINED
548
+ #define _WSTDIO_DEFINED
549
+
550
+ #ifndef WEOF
551
+ #define WEOF (wint_t)(0xFFFF)
552
+ #endif
553
+
554
+ #ifdef _POSIX_
555
+ _CRTIMP FILE *__cdecl _wfsopen(const wchar_t *_Filename,const wchar_t *_Mode);
556
+ #else
557
+ _CRTIMP FILE *__cdecl _wfsopen(const wchar_t *_Filename,const wchar_t *_Mode,int _ShFlag);
558
+ #endif
559
+
560
+ wint_t __cdecl fgetwc(FILE *_File);
561
+ _CRTIMP wint_t __cdecl _fgetwchar(void);
562
+ wint_t __cdecl fputwc(wchar_t _Ch,FILE *_File);
563
+ _CRTIMP wint_t __cdecl _fputwchar(wchar_t _Ch);
564
+ wint_t __cdecl getwc(FILE *_File);
565
+ wint_t __cdecl getwchar(void);
566
+ wint_t __cdecl putwc(wchar_t _Ch,FILE *_File);
567
+ wint_t __cdecl putwchar(wchar_t _Ch);
568
+ wint_t __cdecl ungetwc(wint_t _Ch,FILE *_File);
569
+ wchar_t *__cdecl fgetws(wchar_t *_Dst,int _SizeInWords,FILE *_File);
570
+ int __cdecl fputws(const wchar_t *_Str,FILE *_File);
571
+ _CRTIMP wchar_t *__cdecl _getws(wchar_t *_String);
572
+ _CRTIMP int __cdecl _putws(const wchar_t *_Str);
573
+ int __cdecl fwprintf(FILE *_File,const wchar_t *_Format,...);
574
+ int __cdecl wprintf(const wchar_t *_Format,...);
575
+ _CRTIMP int __cdecl _scwprintf(const wchar_t *_Format,...);
576
+ int __cdecl vfwprintf(FILE *_File,const wchar_t *_Format,va_list _ArgList);
577
+ int __cdecl vwprintf(const wchar_t *_Format,va_list _ArgList);
578
+ _CRTIMP int __cdecl swprintf(wchar_t*, const wchar_t*, ...);
579
+ _CRTIMP int __cdecl vswprintf(wchar_t*, const wchar_t*,va_list);
580
+ _CRTIMP int __cdecl _swprintf_c(wchar_t *_DstBuf,size_t _SizeInWords,const wchar_t *_Format,...);
581
+ _CRTIMP int __cdecl _vswprintf_c(wchar_t *_DstBuf,size_t _SizeInWords,const wchar_t *_Format,va_list _ArgList);
582
+ _CRTIMP int __cdecl _snwprintf(wchar_t *_Dest,size_t _Count,const wchar_t *_Format,...);
583
+ _CRTIMP int __cdecl _vsnwprintf(wchar_t *_Dest,size_t _Count,const wchar_t *_Format,va_list _Args);
584
+ #ifndef __NO_ISOCEXT /* externs in libmingwex.a */
585
+ int __cdecl snwprintf (wchar_t *s, size_t n, const wchar_t * format, ...);
586
+ __CRT_INLINE int __cdecl vsnwprintf (wchar_t *s, size_t n, const wchar_t *format, va_list arg) { return _vsnwprintf(s,n,format,arg); }
587
+ int __cdecl vwscanf (const wchar_t *, va_list);
588
+ int __cdecl vfwscanf (FILE *,const wchar_t *,va_list);
589
+ int __cdecl vswscanf (const wchar_t *,const wchar_t *,va_list);
590
+ #endif
591
+ _CRTIMP int __cdecl _fwprintf_p(FILE *_File,const wchar_t *_Format,...);
592
+ _CRTIMP int __cdecl _wprintf_p(const wchar_t *_Format,...);
593
+ _CRTIMP int __cdecl _vfwprintf_p(FILE *_File,const wchar_t *_Format,va_list _ArgList);
594
+ _CRTIMP int __cdecl _vwprintf_p(const wchar_t *_Format,va_list _ArgList);
595
+ _CRTIMP int __cdecl _swprintf_p(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,...);
596
+ _CRTIMP int __cdecl _vswprintf_p(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,va_list _ArgList);
597
+ _CRTIMP int __cdecl _scwprintf_p(const wchar_t *_Format,...);
598
+ _CRTIMP int __cdecl _vscwprintf_p(const wchar_t *_Format,va_list _ArgList);
599
+ _CRTIMP int __cdecl _wprintf_l(const wchar_t *_Format,_locale_t _Locale,...);
600
+ _CRTIMP int __cdecl _wprintf_p_l(const wchar_t *_Format,_locale_t _Locale,...);
601
+ _CRTIMP int __cdecl _vwprintf_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
602
+ _CRTIMP int __cdecl _vwprintf_p_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
603
+ _CRTIMP int __cdecl _fwprintf_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...);
604
+ _CRTIMP int __cdecl _fwprintf_p_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...);
605
+ _CRTIMP int __cdecl _vfwprintf_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
606
+ _CRTIMP int __cdecl _vfwprintf_p_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
607
+ _CRTIMP int __cdecl _swprintf_c_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
608
+ _CRTIMP int __cdecl _swprintf_p_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
609
+ _CRTIMP int __cdecl _vswprintf_c_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
610
+ _CRTIMP int __cdecl _vswprintf_p_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
611
+ _CRTIMP int __cdecl _scwprintf_l(const wchar_t *_Format,_locale_t _Locale,...);
612
+ _CRTIMP int __cdecl _scwprintf_p_l(const wchar_t *_Format,_locale_t _Locale,...);
613
+ _CRTIMP int __cdecl _vscwprintf_p_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
614
+ _CRTIMP int __cdecl _snwprintf_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
615
+ _CRTIMP int __cdecl _vsnwprintf_l(wchar_t *_DstBuf,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
616
+ _CRTIMP int __cdecl _swprintf(wchar_t *_Dest,const wchar_t *_Format,...);
617
+ _CRTIMP int __cdecl _vswprintf(wchar_t *_Dest,const wchar_t *_Format,va_list _Args);
618
+ _CRTIMP int __cdecl __swprintf_l(wchar_t *_Dest,const wchar_t *_Format,_locale_t _Plocinfo,...);
619
+ _CRTIMP int __cdecl __vswprintf_l(wchar_t *_Dest,const wchar_t *_Format,_locale_t _Plocinfo,va_list _Args);
620
+ #ifndef RC_INVOKED
621
+ #include <vadefs.h>
622
+ #endif
623
+
624
+ #ifdef _CRT_NON_CONFORMING_SWPRINTFS
625
+ #ifndef __cplusplus
626
+ #define swprintf _swprintf
627
+ #define vswprintf _vswprintf
628
+ #define _swprintf_l __swprintf_l
629
+ #define _vswprintf_l __vswprintf_l
630
+ #endif
631
+ #endif
632
+
633
+ _CRTIMP wchar_t *__cdecl _wtempnam(const wchar_t *_Directory,const wchar_t *_FilePrefix);
634
+ _CRTIMP int __cdecl _vscwprintf(const wchar_t *_Format,va_list _ArgList);
635
+ _CRTIMP int __cdecl _vscwprintf_l(const wchar_t *_Format,_locale_t _Locale,va_list _ArgList);
636
+ int __cdecl fwscanf(FILE *_File,const wchar_t *_Format,...);
637
+ _CRTIMP int __cdecl _fwscanf_l(FILE *_File,const wchar_t *_Format,_locale_t _Locale,...);
638
+ int __cdecl swscanf(const wchar_t *_Src,const wchar_t *_Format,...);
639
+ _CRTIMP int __cdecl _swscanf_l(const wchar_t *_Src,const wchar_t *_Format,_locale_t _Locale,...);
640
+ _CRTIMP int __cdecl _snwscanf(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,...);
641
+ _CRTIMP int __cdecl _snwscanf_l(const wchar_t *_Src,size_t _MaxCount,const wchar_t *_Format,_locale_t _Locale,...);
642
+ int __cdecl wscanf(const wchar_t *_Format,...);
643
+ _CRTIMP int __cdecl _wscanf_l(const wchar_t *_Format,_locale_t _Locale,...);
644
+ _CRTIMP FILE *__cdecl _wfdopen(int _FileHandle ,const wchar_t *_Mode);
645
+ _CRTIMP FILE *__cdecl _wfopen(const wchar_t *_Filename,const wchar_t *_Mode);
646
+ _CRTIMP FILE *__cdecl _wfreopen(const wchar_t *_Filename,const wchar_t *_Mode,FILE *_OldFile);
647
+
648
+ #ifndef _CRT_WPERROR_DEFINED
649
+ #define _CRT_WPERROR_DEFINED
650
+ _CRTIMP void __cdecl _wperror(const wchar_t *_ErrMsg);
651
+ #endif
652
+ _CRTIMP FILE *__cdecl _wpopen(const wchar_t *_Command,const wchar_t *_Mode);
653
+ #if !defined(NO_OLDNAMES) && !defined(wpopen)
654
+ #define wpopen _wpopen
655
+ #endif
656
+ _CRTIMP int __cdecl _wremove(const wchar_t *_Filename);
657
+ _CRTIMP wchar_t *__cdecl _wtmpnam(wchar_t *_Buffer);
658
+ _CRTIMP wint_t __cdecl _fgetwc_nolock(FILE *_File);
659
+ _CRTIMP wint_t __cdecl _fputwc_nolock(wchar_t _Ch,FILE *_File);
660
+ _CRTIMP wint_t __cdecl _ungetwc_nolock(wint_t _Ch,FILE *_File);
661
+
662
+ #undef _CRT_GETPUTWCHAR_NOINLINE
663
+
664
+ #if !defined(__cplusplus) || defined(_CRT_GETPUTWCHAR_NOINLINE)
665
+ #define getwchar() fgetwc(stdin)
666
+ #define putwchar(_c) fputwc((_c),stdout)
667
+ #else
668
+ __CRT_INLINE wint_t __cdecl getwchar() {return (fgetwc(stdin)); }
669
+ __CRT_INLINE wint_t __cdecl putwchar(wchar_t _C) {return (fputwc(_C,stdout)); }
670
+ #endif
671
+
672
+ #define getwc(_stm) fgetwc(_stm)
673
+ #define putwc(_c,_stm) fputwc(_c,_stm)
674
+ #define _putwc_nolock(_c,_stm) _fputwc_nolock(_c,_stm)
675
+ #define _getwc_nolock(_c) _fgetwc_nolock(_c)
676
+ #endif
677
+
678
+ #ifndef _WSTDLIB_DEFINED
679
+ #define _WSTDLIB_DEFINED
680
+
681
+ _CRTIMP wchar_t *__cdecl _itow(int _Value,wchar_t *_Dest,int _Radix);
682
+ _CRTIMP wchar_t *__cdecl _ltow(long _Value,wchar_t *_Dest,int _Radix);
683
+ _CRTIMP wchar_t *__cdecl _ultow(unsigned long _Value,wchar_t *_Dest,int _Radix);
684
+ double __cdecl wcstod(const wchar_t *_Str,wchar_t **_EndPtr);
685
+ _CRTIMP double __cdecl _wcstod_l(const wchar_t *_Str,wchar_t **_EndPtr,_locale_t _Locale);
686
+ float __cdecl wcstof( const wchar_t *nptr, wchar_t **endptr);
687
+ #if !defined __NO_ISOCEXT /* in libmingwex.a */
688
+ float __cdecl wcstof (const wchar_t * __restrict__, wchar_t ** __restrict__);
689
+ long double __cdecl wcstold (const wchar_t * __restrict__, wchar_t ** __restrict__);
690
+ #endif /* __NO_ISOCEXT */
691
+ long __cdecl wcstol(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
692
+ _CRTIMP long __cdecl _wcstol_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
693
+ unsigned long __cdecl wcstoul(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
694
+ _CRTIMP unsigned long __cdecl _wcstoul_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
695
+ _CRTIMP wchar_t *__cdecl _wgetenv(const wchar_t *_VarName);
696
+ #ifndef _CRT_WSYSTEM_DEFINED
697
+ #define _CRT_WSYSTEM_DEFINED
698
+ _CRTIMP int __cdecl _wsystem(const wchar_t *_Command);
699
+ #endif
700
+ _CRTIMP double __cdecl _wtof(const wchar_t *_Str);
701
+ _CRTIMP double __cdecl _wtof_l(const wchar_t *_Str,_locale_t _Locale);
702
+ _CRTIMP int __cdecl _wtoi(const wchar_t *_Str);
703
+ _CRTIMP int __cdecl _wtoi_l(const wchar_t *_Str,_locale_t _Locale);
704
+ _CRTIMP long __cdecl _wtol(const wchar_t *_Str);
705
+ _CRTIMP long __cdecl _wtol_l(const wchar_t *_Str,_locale_t _Locale);
706
+
707
+ #if _INTEGRAL_MAX_BITS >= 64
708
+ _CRTIMP wchar_t *__cdecl _i64tow(__int64 _Val,wchar_t *_DstBuf,int _Radix);
709
+ _CRTIMP wchar_t *__cdecl _ui64tow(unsigned __int64 _Val,wchar_t *_DstBuf,int _Radix);
710
+ _CRTIMP __int64 __cdecl _wtoi64(const wchar_t *_Str);
711
+ _CRTIMP __int64 __cdecl _wtoi64_l(const wchar_t *_Str,_locale_t _Locale);
712
+ _CRTIMP __int64 __cdecl _wcstoi64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
713
+ _CRTIMP __int64 __cdecl _wcstoi64_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
714
+ _CRTIMP unsigned __int64 __cdecl _wcstoui64(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix);
715
+ _CRTIMP unsigned __int64 __cdecl _wcstoui64_l(const wchar_t *_Str,wchar_t **_EndPtr,int _Radix,_locale_t _Locale);
716
+ #endif
717
+ #endif
718
+
719
+ #ifndef _POSIX_
720
+ #ifndef _WSTDLIBP_DEFINED
721
+ #define _WSTDLIBP_DEFINED
722
+ _CRTIMP wchar_t *__cdecl _wfullpath(wchar_t *_FullPath,const wchar_t *_Path,size_t _SizeInWords);
723
+ _CRTIMP void __cdecl _wmakepath(wchar_t *_ResultPath,const wchar_t *_Drive,const wchar_t *_Dir,const wchar_t *_Filename,const wchar_t *_Ext);
724
+ #ifndef _CRT_WPERROR_DEFINED
725
+ #define _CRT_WPERROR_DEFINED
726
+ _CRTIMP void __cdecl _wperror(const wchar_t *_ErrMsg);
727
+ #endif
728
+ _CRTIMP int __cdecl _wputenv(const wchar_t *_EnvString);
729
+ _CRTIMP void __cdecl _wsearchenv(const wchar_t *_Filename,const wchar_t *_EnvVar,wchar_t *_ResultPath);
730
+ _CRTIMP void __cdecl _wsplitpath(const wchar_t *_FullPath,wchar_t *_Drive,wchar_t *_Dir,wchar_t *_Filename,wchar_t *_Ext);
731
+ #endif
732
+ #endif
733
+
734
+ #ifndef _WSTRING_DEFINED
735
+ #define _WSTRING_DEFINED
736
+ _CRTIMP wchar_t *__cdecl _wcsdup(const wchar_t *_Str);
737
+ wchar_t *__cdecl wcscat(wchar_t *_Dest,const wchar_t *_Source);
738
+ _CONST_RETURN wchar_t *__cdecl wcschr(const wchar_t *_Str,wchar_t _Ch);
739
+ int __cdecl wcscmp(const wchar_t *_Str1,const wchar_t *_Str2);
740
+ wchar_t *__cdecl wcscpy(wchar_t *_Dest,const wchar_t *_Source);
741
+ size_t __cdecl wcscspn(const wchar_t *_Str,const wchar_t *_Control);
742
+ size_t __cdecl wcslen(const wchar_t *_Str);
743
+ size_t __cdecl wcsnlen(const wchar_t *_Src,size_t _MaxCount);
744
+ wchar_t *__cdecl wcsncat(wchar_t *_Dest,const wchar_t *_Source,size_t _Count);
745
+ int __cdecl wcsncmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
746
+ wchar_t *__cdecl wcsncpy(wchar_t *_Dest,const wchar_t *_Source,size_t _Count);
747
+ _CONST_RETURN wchar_t *__cdecl wcspbrk(const wchar_t *_Str,const wchar_t *_Control);
748
+ _CONST_RETURN wchar_t *__cdecl wcsrchr(const wchar_t *_Str,wchar_t _Ch);
749
+ size_t __cdecl wcsspn(const wchar_t *_Str,const wchar_t *_Control);
750
+ _CONST_RETURN wchar_t *__cdecl wcsstr(const wchar_t *_Str,const wchar_t *_SubStr);
751
+ wchar_t *__cdecl wcstok(wchar_t *_Str,const wchar_t *_Delim);
752
+ _CRTIMP wchar_t *__cdecl _wcserror(int _ErrNum);
753
+ _CRTIMP wchar_t *__cdecl __wcserror(const wchar_t *_Str);
754
+ _CRTIMP int __cdecl _wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2);
755
+ _CRTIMP int __cdecl _wcsicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
756
+ _CRTIMP int __cdecl _wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
757
+ _CRTIMP int __cdecl _wcsnicmp_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
758
+ _CRTIMP wchar_t *__cdecl _wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount);
759
+ _CRTIMP wchar_t *__cdecl _wcsrev(wchar_t *_Str);
760
+ _CRTIMP wchar_t *__cdecl _wcsset(wchar_t *_Str,wchar_t _Val);
761
+ _CRTIMP wchar_t *__cdecl _wcslwr(wchar_t *_String);
762
+ _CRTIMP wchar_t *_wcslwr_l(wchar_t *_String,_locale_t _Locale);
763
+ _CRTIMP wchar_t *__cdecl _wcsupr(wchar_t *_String);
764
+ _CRTIMP wchar_t *_wcsupr_l(wchar_t *_String,_locale_t _Locale);
765
+ size_t __cdecl wcsxfrm(wchar_t *_Dst,const wchar_t *_Src,size_t _MaxCount);
766
+ _CRTIMP size_t __cdecl _wcsxfrm_l(wchar_t *_Dst,const wchar_t *_Src,size_t _MaxCount,_locale_t _Locale);
767
+ int __cdecl wcscoll(const wchar_t *_Str1,const wchar_t *_Str2);
768
+ _CRTIMP int __cdecl _wcscoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
769
+ _CRTIMP int __cdecl _wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
770
+ _CRTIMP int __cdecl _wcsicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,_locale_t _Locale);
771
+ _CRTIMP int __cdecl _wcsncoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
772
+ _CRTIMP int __cdecl _wcsncoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
773
+ _CRTIMP int __cdecl _wcsnicoll(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
774
+ _CRTIMP int __cdecl _wcsnicoll_l(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount,_locale_t _Locale);
775
+
776
+ #ifndef NO_OLDNAMES
777
+ wchar_t *__cdecl wcsdup(const wchar_t *_Str);
778
+ #define wcswcs wcsstr
779
+ int __cdecl wcsicmp(const wchar_t *_Str1,const wchar_t *_Str2);
780
+ int __cdecl wcsnicmp(const wchar_t *_Str1,const wchar_t *_Str2,size_t _MaxCount);
781
+ wchar_t *__cdecl wcsnset(wchar_t *_Str,wchar_t _Val,size_t _MaxCount);
782
+ wchar_t *__cdecl wcsrev(wchar_t *_Str);
783
+ wchar_t *__cdecl wcsset(wchar_t *_Str,wchar_t _Val);
784
+ wchar_t *__cdecl wcslwr(wchar_t *_Str);
785
+ wchar_t *__cdecl wcsupr(wchar_t *_Str);
786
+ int __cdecl wcsicoll(const wchar_t *_Str1,const wchar_t *_Str2);
787
+ #endif
788
+ #endif
789
+
790
+ #ifndef _TM_DEFINED
791
+ #define _TM_DEFINED
792
+ struct tm {
793
+ int tm_sec;
794
+ int tm_min;
795
+ int tm_hour;
796
+ int tm_mday;
797
+ int tm_mon;
798
+ int tm_year;
799
+ int tm_wday;
800
+ int tm_yday;
801
+ int tm_isdst;
802
+ };
803
+ #endif
804
+
805
+ #ifndef _WTIME_DEFINED
806
+ #define _WTIME_DEFINED
807
+
808
+ _CRTIMP wchar_t *__cdecl _wasctime(const struct tm *_Tm);
809
+ _CRTIMP wchar_t *__cdecl _wctime32(const __time32_t *_Time);
810
+ size_t __cdecl wcsftime(wchar_t *_Buf,size_t _SizeInWords,const wchar_t *_Format,const struct tm *_Tm);
811
+ _CRTIMP size_t __cdecl _wcsftime_l(wchar_t *_Buf,size_t _SizeInWords,const wchar_t *_Format,const struct tm *_Tm,_locale_t _Locale);
812
+ _CRTIMP wchar_t *__cdecl _wstrdate(wchar_t *_Buffer);
813
+ _CRTIMP wchar_t *__cdecl _wstrtime(wchar_t *_Buffer);
814
+ #if _INTEGRAL_MAX_BITS >= 64
815
+ _CRTIMP wchar_t *__cdecl _wctime64(const __time64_t *_Time);
816
+ #endif
817
+
818
+ #if !defined (RC_INVOKED) && !defined (_INC_WTIME_INL)
819
+ #define _INC_WTIME_INL
820
+ #ifdef _USE_32BIT_TIME_T
821
+ __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime32(_Time); }
822
+ #else
823
+ __CRT_INLINE wchar_t *__cdecl _wctime(const time_t *_Time) { return _wctime64(_Time); }
824
+ #endif
825
+ #endif
826
+ #endif
827
+
828
+ typedef int mbstate_t;
829
+ typedef wchar_t _Wint_t;
830
+
831
+ wint_t __cdecl btowc(int);
832
+ size_t __cdecl mbrlen(const char *_Ch,size_t _SizeInBytes,mbstate_t *_State);
833
+ size_t __cdecl mbrtowc(wchar_t *_DstCh,const char *_SrcCh,size_t _SizeInBytes,mbstate_t *_State);
834
+ size_t __cdecl mbsrtowcs(wchar_t *_Dest,const char **_PSrc,size_t _Count,mbstate_t *_State);
835
+ size_t __cdecl wcrtomb(char *_Dest,wchar_t _Source,mbstate_t *_State);
836
+ size_t __cdecl wcsrtombs(char *_Dest,const wchar_t **_PSource,size_t _Count,mbstate_t *_State);
837
+ int __cdecl wctob(wint_t _WCh);
838
+
839
+ #ifndef __NO_ISOCEXT /* these need static lib libmingwex.a */
840
+ wchar_t *__cdecl wmemset(wchar_t *s, wchar_t c, size_t n);
841
+ _CONST_RETURN wchar_t *__cdecl wmemchr(const wchar_t *s, wchar_t c, size_t n);
842
+ int wmemcmp(const wchar_t *s1, const wchar_t *s2,size_t n);
843
+ wchar_t *__cdecl wmemcpy(wchar_t *s1,const wchar_t *s2,size_t n);
844
+ wchar_t *__cdecl wmemmove(wchar_t *s1, const wchar_t *s2, size_t n);
845
+ long long __cdecl wcstoll(const wchar_t *nptr,wchar_t **endptr, int base);
846
+ unsigned long long __cdecl wcstoull(const wchar_t *nptr,wchar_t **endptr, int base);
847
+ #endif /* __NO_ISOCEXT */
848
+
849
+ void *__cdecl memmove(void *_Dst,const void *_Src,size_t _MaxCount);
850
+ void *__cdecl memcpy(void *_Dst,const void *_Src,size_t _MaxCount);
851
+ __CRT_INLINE int __cdecl fwide(FILE *_F,int _M) { (void)_F; return (_M); }
852
+ __CRT_INLINE int __cdecl mbsinit(const mbstate_t *_P) { return (!_P || *_P==0); }
853
+ __CRT_INLINE _CONST_RETURN wchar_t *__cdecl wmemchr(const wchar_t *_S,wchar_t _C,size_t _N) { for (;0<_N;++_S,--_N) if (*_S==_C) return (_CONST_RETURN wchar_t *)(_S); return (0); }
854
+ __CRT_INLINE int __cdecl wmemcmp(const wchar_t *_S1,const wchar_t *_S2,size_t _N) { for (; 0 < _N; ++_S1,++_S2,--_N) if (*_S1!=*_S2) return (*_S1 < *_S2 ? -1 : +1); return (0); }
855
+ __CRT_INLINE wchar_t *__cdecl wmemcpy(wchar_t *_S1,const wchar_t *_S2,size_t _N) { return (wchar_t *)memcpy(_S1,_S2,_N*sizeof(wchar_t)); }
856
+ __CRT_INLINE wchar_t *__cdecl wmemmove(wchar_t *_S1,const wchar_t *_S2,size_t _N) { return (wchar_t *)memmove(_S1,_S2,_N*sizeof(wchar_t)); }
857
+ __CRT_INLINE wchar_t *__cdecl wmemset(wchar_t *_S,wchar_t _C,size_t _N) {
858
+ wchar_t *_Su = _S;
859
+ for (;0<_N;++_Su,--_N) {
860
+ *_Su = _C;
861
+ }
862
+ return (_S);
863
+ }
864
+ #ifdef __cplusplus
865
+ }
866
+ #endif
867
+
868
+ #pragma pack(pop)
869
+
870
+ #include <sec_api/wchar_s.h>
871
+ #endif