@zigc/lib 0.17.0-dev.56 → 0.17.0-dev.607

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 (1259) hide show
  1. package/c/fcntl.zig +5 -0
  2. package/c/inttypes.zig +0 -10
  3. package/c/math.zig +25 -96
  4. package/c/pthread.zig +57 -0
  5. package/c/search.zig +1 -27
  6. package/c/stdlib/drand48.zig +0 -57
  7. package/c/stdlib.zig +31 -121
  8. package/c/string.zig +20 -7
  9. package/c/strings.zig +0 -38
  10. package/c/unistd.zig +28 -26
  11. package/c/wchar.zig +10 -0
  12. package/c.zig +2 -2
  13. package/{std/Build → compiler/Maker}/Fuzz.zig +177 -89
  14. package/compiler/Maker/Graph.zig +85 -0
  15. package/compiler/Maker/PkgConfig.zig +114 -0
  16. package/compiler/Maker/ScannedConfig.zig +370 -0
  17. package/compiler/Maker/Step/CheckFile.zig +63 -0
  18. package/compiler/Maker/Step/Compile.zig +1390 -0
  19. package/compiler/Maker/Step/ConfigHeader.zig +610 -0
  20. package/compiler/Maker/Step/FindProgram.zig +120 -0
  21. package/compiler/Maker/Step/Fmt.zig +65 -0
  22. package/compiler/Maker/Step/InstallArtifact.zig +141 -0
  23. package/compiler/Maker/Step/InstallDir.zig +99 -0
  24. package/compiler/Maker/Step/InstallFile.zig +26 -0
  25. package/compiler/Maker/Step/ObjCopy.zig +173 -0
  26. package/compiler/Maker/Step/Options.zig +104 -0
  27. package/compiler/Maker/Step/Run.zig +2372 -0
  28. package/compiler/Maker/Step/TranslateC.zig +152 -0
  29. package/compiler/Maker/Step/UpdateSourceFiles.zig +89 -0
  30. package/compiler/Maker/Step/WriteFile.zig +294 -0
  31. package/compiler/Maker/Step.zig +863 -0
  32. package/{std/Build → compiler/Maker}/Watch/FsEvents.zig +33 -24
  33. package/{std/Build → compiler/Maker}/Watch.zig +89 -68
  34. package/{std/Build → compiler/Maker}/WebServer.zig +145 -118
  35. package/compiler/Maker.zig +2051 -0
  36. package/compiler/aro/aro/CodeGen.zig +7 -8
  37. package/compiler/aro/aro/Compilation.zig +17 -17
  38. package/compiler/aro/aro/Driver.zig +18 -16
  39. package/compiler/aro/aro/Parser.zig +20 -15
  40. package/compiler/aro/aro/Pragma.zig +3 -2
  41. package/compiler/aro/aro/Preprocessor.zig +11 -8
  42. package/compiler/aro/aro/pragmas/message.zig +3 -2
  43. package/compiler/aro/aro/text_literal.zig +3 -2
  44. package/compiler/aro/assembly_backend/x86_64.zig +4 -4
  45. package/compiler/aro/backend/Ir/x86/Renderer.zig +3 -3
  46. package/compiler/configurer.zig +1402 -0
  47. package/compiler/reduce/Walk.zig +8 -13
  48. package/compiler/resinator/compile.zig +1 -1
  49. package/compiler/resinator/cvtres.zig +4 -4
  50. package/compiler/resinator/errors.zig +7 -7
  51. package/compiler/resinator/ico.zig +4 -4
  52. package/compiler/resinator/parse.zig +2 -2
  53. package/compiler/resinator/res.zig +1 -1
  54. package/compiler/std-docs.zig +17 -38
  55. package/compiler/test_runner.zig +25 -15
  56. package/compiler/translate-c/MacroTranslator.zig +1 -1
  57. package/compiler/translate-c/Translator.zig +2 -2
  58. package/compiler/translate-c/ast.zig +16 -23
  59. package/compiler/translate-c/main.zig +1 -1
  60. package/compiler_rt/addf3.zig +1 -1
  61. package/compiler_rt/arm.zig +3 -3
  62. package/compiler_rt/atomics.zig +1 -1
  63. package/compiler_rt/comparef.zig +3 -3
  64. package/compiler_rt/cos.zig +1 -1
  65. package/compiler_rt/count0bits.zig +1 -1
  66. package/compiler_rt/divdf3.zig +2 -2
  67. package/compiler_rt/divsf3.zig +1 -1
  68. package/compiler_rt/divtf3.zig +1 -1
  69. package/compiler_rt/divxf3.zig +1 -1
  70. package/compiler_rt/extendf.zig +5 -5
  71. package/compiler_rt/fabs.zig +1 -1
  72. package/compiler_rt/float_from_int.zig +4 -5
  73. package/compiler_rt/fmax.zig +1 -1
  74. package/compiler_rt/fmin.zig +1 -1
  75. package/compiler_rt/fmod.zig +2 -2
  76. package/compiler_rt/int_from_float.zig +1 -1
  77. package/compiler_rt/limb64.zig +3 -2
  78. package/compiler_rt/mulf3.zig +2 -2
  79. package/compiler_rt/rem_pio2l.zig +1 -1
  80. package/compiler_rt/sin.zig +1 -1
  81. package/compiler_rt/sincos.zig +1 -1
  82. package/compiler_rt/ssp.zig +2 -2
  83. package/compiler_rt/tan.zig +1 -1
  84. package/compiler_rt/truncf.zig +3 -3
  85. package/compiler_rt/trunctfhf2.zig +3 -0
  86. package/compiler_rt.zig +5 -26
  87. package/docs/main.js +8 -8
  88. package/docs/wasm/Walk.zig +1 -3
  89. package/docs/wasm/html_render.zig +1 -2
  90. package/docs/wasm/markdown/Parser.zig +16 -20
  91. package/fuzzer.zig +5 -3
  92. package/include/__clang_spirv_builtins.h +12 -12
  93. package/include/__float_float.h +176 -0
  94. package/include/__float_header_macro.h +12 -0
  95. package/include/__float_infinity_nan.h +20 -0
  96. package/include/amo.h +131 -0
  97. package/include/amxavx512intrin.h +215 -1
  98. package/include/amxintrin.h +0 -2
  99. package/include/arm_acle.h +37 -27
  100. package/include/arm_neon.h +218 -82
  101. package/include/arm_sme.h +8 -8
  102. package/include/arm_sve.h +4162 -3782
  103. package/include/avx10_2_512bf16intrin.h +19 -12
  104. package/include/avx10_2_512convertintrin.h +1 -1
  105. package/include/avx10_2_512niintrin.h +31 -31
  106. package/include/avx10_2_512satcvtdsintrin.h +1 -1
  107. package/include/avx10_2bf16intrin.h +54 -45
  108. package/include/avx10_2convertintrin.h +2 -2
  109. package/include/avx10_2copyintrin.h +1 -1
  110. package/include/avx10_2niintrin.h +14 -14
  111. package/include/avx10_2satcvtdsintrin.h +2 -2
  112. package/include/avx2intrin.h +275 -377
  113. package/include/avx512bf16intrin.h +25 -16
  114. package/include/avx512bitalgintrin.h +19 -30
  115. package/include/avx512bwintrin.h +386 -505
  116. package/include/avx512cdintrin.h +42 -55
  117. package/include/avx512dqintrin.h +132 -161
  118. package/include/avx512fintrin.h +1015 -1424
  119. package/include/avx512fp16intrin.h +112 -110
  120. package/include/avx512ifmaintrin.h +32 -34
  121. package/include/avx512ifmavlintrin.h +73 -46
  122. package/include/avx512vbmi2intrin.h +43 -32
  123. package/include/avx512vbmiintrin.h +19 -27
  124. package/include/avx512vbmivlintrin.h +35 -49
  125. package/include/avx512vlbf16intrin.h +32 -22
  126. package/include/avx512vlbitalgintrin.h +37 -53
  127. package/include/avx512vlbwintrin.h +470 -573
  128. package/include/avx512vlcdintrin.h +74 -102
  129. package/include/avx512vldqintrin.h +110 -127
  130. package/include/avx512vlfp16intrin.h +130 -111
  131. package/include/avx512vlintrin.h +945 -1299
  132. package/include/avx512vlvbmi2intrin.h +78 -63
  133. package/include/avx512vlvnniintrin.h +21 -18
  134. package/include/avx512vlvp2intersectintrin.h +2 -2
  135. package/include/avx512vnniintrin.h +10 -10
  136. package/include/avx512vp2intersectintrin.h +1 -2
  137. package/include/avx512vpopcntdqintrin.h +8 -10
  138. package/include/avx512vpopcntdqvlintrin.h +17 -15
  139. package/include/avxifmaintrin.h +16 -0
  140. package/include/avxintrin.h +165 -241
  141. package/include/avxvnniint16intrin.h +118 -99
  142. package/include/avxvnniint8intrin.h +56 -32
  143. package/include/avxvnniintrin.h +16 -8
  144. package/include/cpuid.h +101 -4
  145. package/include/emmintrin.h +168 -168
  146. package/include/f16cintrin.h +23 -9
  147. package/include/float.h +16 -155
  148. package/include/fma4intrin.h +98 -96
  149. package/include/fmaintrin.h +96 -66
  150. package/include/gfniintrin.h +21 -16
  151. package/include/hexagon_types.h +23 -20
  152. package/include/hvx_hexagon_protos.h +649 -860
  153. package/include/immintrin.h +0 -12
  154. package/include/intrin.h +4 -0
  155. package/include/lasxintrin.h +113 -0
  156. package/include/llvm_libc_wrappers/assert.h +3 -5
  157. package/include/llvm_libc_wrappers/ctype.h +3 -115
  158. package/include/llvm_libc_wrappers/inttypes.h +3 -5
  159. package/include/llvm_libc_wrappers/stdio.h +10 -38
  160. package/include/llvm_libc_wrappers/stdlib.h +3 -24
  161. package/include/llvm_libc_wrappers/string.h +2 -70
  162. package/include/llvm_libc_wrappers/time.h +4 -10
  163. package/include/mmintrin.h +188 -257
  164. package/include/module.modulemap +23 -4
  165. package/include/movrs_avx10_2_512intrin.h +2 -2
  166. package/include/movrs_avx10_2intrin.h +4 -4
  167. package/include/pmmintrin.h +12 -24
  168. package/include/ptrauth.h +16 -2
  169. package/include/riscv_mips.h +34 -0
  170. package/include/riscv_nds.h +89 -0
  171. package/include/sifive_vector.h +58 -2
  172. package/include/sm4evexintrin.h +2 -2
  173. package/include/smmintrin.h +77 -59
  174. package/include/spirvintrin.h +194 -0
  175. package/include/stddefer.h +19 -0
  176. package/include/tmmintrin.h +116 -147
  177. package/include/vaesintrin.h +1 -2
  178. package/include/xmmintrin.h +44 -70
  179. package/include/xopintrin.h +20 -10
  180. package/init/build.zig +1 -3
  181. package/libc/darwin/SDKSettings.json +1 -1
  182. package/libc/darwin/libSystem.tbd +88 -87
  183. package/libc/include/aarch64-linux-any/asm/hwcap.h +1 -0
  184. package/libc/include/aarch64-linux-any/asm/unistd_64.h +1 -0
  185. package/libc/include/aarch64-openbsd-none/arm64/cpu.h +7 -1
  186. package/libc/include/aarch64-openbsd-none/arm64/intr.h +9 -1
  187. package/libc/include/aarch64-openbsd-none/machine/cpu.h +7 -1
  188. package/libc/include/aarch64-openbsd-none/machine/intr.h +9 -1
  189. package/libc/include/any-darwin-any/AvailabilityInternal.h +10 -10
  190. package/libc/include/any-darwin-any/AvailabilityVersions.h +8 -0
  191. package/libc/include/any-darwin-any/mach/host_info.h +3 -1
  192. package/libc/include/any-darwin-any/mach/mach_voucher_types.h +2 -0
  193. package/libc/include/any-darwin-any/mach/vm_statistics.h +33 -2
  194. package/libc/include/any-darwin-any/spawn.h +3 -1
  195. package/libc/include/any-darwin-any/sys/_symbol_aliasing.h +12 -0
  196. package/libc/include/any-linux-any/asm-generic/errno.h +2 -0
  197. package/libc/include/any-linux-any/asm-generic/unistd.h +4 -1
  198. package/libc/include/any-linux-any/drm/amdgpu_drm.h +20 -6
  199. package/libc/include/any-linux-any/drm/amdxdna_accel.h +8 -0
  200. package/libc/include/any-linux-any/drm/drm_fourcc.h +6 -6
  201. package/libc/include/any-linux-any/drm/panfrost_drm.h +75 -1
  202. package/libc/include/any-linux-any/drm/panthor_drm.h +154 -3
  203. package/libc/include/any-linux-any/drm/rocket_accel.h +74 -24
  204. package/libc/include/any-linux-any/drm/xe_drm.h +89 -6
  205. package/libc/include/any-linux-any/linux/android/binder.h +1 -1
  206. package/libc/include/any-linux-any/linux/bpf.h +28 -0
  207. package/libc/include/any-linux-any/linux/btrfs.h +1 -0
  208. package/libc/include/any-linux-any/linux/btrfs_tree.h +32 -2
  209. package/libc/include/any-linux-any/linux/dma-buf.h +1 -0
  210. package/libc/include/any-linux-any/linux/dpll.h +1 -0
  211. package/libc/include/any-linux-any/linux/elf.h +2 -0
  212. package/libc/include/any-linux-any/linux/ethtool.h +21 -5
  213. package/libc/include/any-linux-any/linux/fs.h +1 -0
  214. package/libc/include/any-linux-any/linux/hyperv.h +1 -1
  215. package/libc/include/any-linux-any/linux/idxd.h +134 -134
  216. package/libc/include/any-linux-any/linux/if_alg.h +1 -1
  217. package/libc/include/any-linux-any/linux/if_link.h +1 -0
  218. package/libc/include/any-linux-any/linux/input-event-codes.h +4 -0
  219. package/libc/include/any-linux-any/linux/io_uring/bpf_filter.h +68 -0
  220. package/libc/include/any-linux-any/linux/io_uring/query.h +5 -1
  221. package/libc/include/any-linux-any/linux/io_uring.h +33 -2
  222. package/libc/include/any-linux-any/linux/iommufd.h +39 -0
  223. package/libc/include/any-linux-any/linux/kfd_ioctl.h +13 -3
  224. package/libc/include/any-linux-any/linux/kfd_sysfs.h +2 -1
  225. package/libc/include/any-linux-any/linux/kvm.h +30 -6
  226. package/libc/include/any-linux-any/linux/landlock.h +22 -8
  227. package/libc/include/any-linux-any/linux/magic.h +1 -0
  228. package/libc/include/any-linux-any/linux/mempolicy.h +3 -0
  229. package/libc/include/any-linux-any/linux/mount.h +11 -2
  230. package/libc/include/any-linux-any/linux/mptcp_pm.h +1 -1
  231. package/libc/include/any-linux-any/linux/mshv.h +2 -0
  232. package/libc/include/any-linux-any/linux/netfilter_bridge.h +5 -4
  233. package/libc/include/any-linux-any/linux/netfilter_ipv4.h +4 -5
  234. package/libc/include/any-linux-any/linux/netfilter_ipv6.h +3 -4
  235. package/libc/include/any-linux-any/linux/nfs.h +1 -1
  236. package/libc/include/any-linux-any/linux/nfsd_netlink.h +1 -0
  237. package/libc/include/any-linux-any/linux/nilfs2_api.h +2 -2
  238. package/libc/include/any-linux-any/linux/nilfs2_ondisk.h +97 -66
  239. package/libc/include/any-linux-any/linux/nl80211.h +104 -3
  240. package/libc/include/any-linux-any/linux/pci.h +7 -0
  241. package/libc/include/any-linux-any/linux/pci_regs.h +65 -6
  242. package/libc/include/any-linux-any/linux/pcitest.h +1 -0
  243. package/libc/include/any-linux-any/linux/perf_event.h +24 -3
  244. package/libc/include/any-linux-any/linux/pkt_sched.h +1 -0
  245. package/libc/include/any-linux-any/linux/prctl.h +30 -0
  246. package/libc/include/any-linux-any/linux/rseq.h +62 -5
  247. package/libc/include/any-linux-any/linux/shm.h +0 -1
  248. package/libc/include/any-linux-any/linux/stddef.h +4 -0
  249. package/libc/include/any-linux-any/linux/sysctl.h +1 -2
  250. package/libc/include/any-linux-any/linux/taskstats.h +12 -1
  251. package/libc/include/any-linux-any/linux/tcp.h +23 -3
  252. package/libc/include/any-linux-any/linux/typelimits.h +8 -0
  253. package/libc/include/any-linux-any/linux/ublk_cmd.h +120 -1
  254. package/libc/include/any-linux-any/linux/v4l2-controls.h +63 -0
  255. package/libc/include/any-linux-any/linux/vbox_vmmdev_types.h +2 -2
  256. package/libc/include/any-linux-any/linux/vduse.h +80 -5
  257. package/libc/include/any-linux-any/linux/version.h +3 -3
  258. package/libc/include/any-linux-any/linux/vfio.h +4 -0
  259. package/libc/include/any-linux-any/linux/videodev2.h +3 -0
  260. package/libc/include/any-linux-any/linux/virtio_ring.h +1 -2
  261. package/libc/include/any-linux-any/linux/vmclock-abi.h +20 -0
  262. package/libc/include/any-linux-any/rdma/bnxt_re-abi.h +16 -0
  263. package/libc/include/any-linux-any/rdma/ib_user_ioctl_cmds.h +16 -0
  264. package/libc/include/any-linux-any/rdma/mana-abi.h +3 -0
  265. package/libc/include/any-linux-any/scsi/scsi_bsg_ufs.h +8 -9
  266. package/libc/include/any-linux-any/sound/sof/tokens.h +6 -0
  267. package/libc/include/arc-linux-any/asm/swab.h +0 -63
  268. package/libc/include/arc-linux-any/asm/unistd_32.h +1 -0
  269. package/libc/include/arm-linux-any/asm/ptrace.h +0 -9
  270. package/libc/include/arm-linux-any/asm/unistd-eabi.h +1 -0
  271. package/libc/include/arm-linux-any/asm/unistd-oabi.h +1 -0
  272. package/libc/include/csky-linux-any/asm/unistd_32.h +1 -0
  273. package/libc/include/generic-openbsd/db.h +1 -7
  274. package/libc/include/generic-openbsd/ddb/db_interface.h +2 -1
  275. package/libc/include/generic-openbsd/fnmatch.h +6 -2
  276. package/libc/include/generic-openbsd/login_cap.h +3 -1
  277. package/libc/include/generic-openbsd/miscfs/fuse/fusefs_node.h +2 -1
  278. package/libc/include/generic-openbsd/net/bpf.h +3 -1
  279. package/libc/include/generic-openbsd/net/hfsc.h +4 -4
  280. package/libc/include/generic-openbsd/net/if.h +5 -1
  281. package/libc/include/generic-openbsd/net/if_bridge.h +48 -1
  282. package/libc/include/generic-openbsd/net/if_etherbridge.h +20 -7
  283. package/libc/include/generic-openbsd/net/if_media.h +26 -1
  284. package/libc/include/generic-openbsd/net/if_pflow.h +71 -20
  285. package/libc/include/generic-openbsd/net/if_pfsync.h +2 -2
  286. package/libc/include/generic-openbsd/net/if_sppp.h +2 -1
  287. package/libc/include/generic-openbsd/net/if_trunk.h +3 -2
  288. package/libc/include/generic-openbsd/net/if_types.h +2 -2
  289. package/libc/include/generic-openbsd/net/if_var.h +34 -12
  290. package/libc/include/generic-openbsd/net/netisr.h +1 -3
  291. package/libc/include/generic-openbsd/net/pfvar.h +154 -1
  292. package/libc/include/generic-openbsd/net/pfvar_priv.h +256 -1
  293. package/libc/include/generic-openbsd/net80211/ieee80211.h +76 -4
  294. package/libc/include/generic-openbsd/net80211/ieee80211_ioctl.h +3 -2
  295. package/libc/include/generic-openbsd/net80211/ieee80211_node.h +48 -2
  296. package/libc/include/generic-openbsd/net80211/ieee80211_proto.h +4 -1
  297. package/libc/include/generic-openbsd/net80211/ieee80211_var.h +18 -2
  298. package/libc/include/generic-openbsd/netinet/if_ether.h +12 -11
  299. package/libc/include/generic-openbsd/netinet/igmp_var.h +17 -3
  300. package/libc/include/generic-openbsd/netinet/in_pcb.h +2 -1
  301. package/libc/include/generic-openbsd/netinet/in_var.h +17 -59
  302. package/libc/include/generic-openbsd/netinet/ip.h +3 -2
  303. package/libc/include/generic-openbsd/netinet/tcp_timer.h +1 -2
  304. package/libc/include/generic-openbsd/netinet6/in6_var.h +15 -29
  305. package/libc/include/generic-openbsd/netinet6/ip6_var.h +1 -2
  306. package/libc/include/generic-openbsd/netinet6/mld6_var.h +17 -4
  307. package/libc/include/generic-openbsd/netinet6/nd6.h +2 -2
  308. package/libc/include/generic-openbsd/pthread.h +2 -2
  309. package/libc/include/generic-openbsd/signal.h +2 -2
  310. package/libc/include/generic-openbsd/sndio.h +6 -12
  311. package/libc/include/generic-openbsd/strings.h +5 -1
  312. package/libc/include/generic-openbsd/sys/device.h +4 -3
  313. package/libc/include/generic-openbsd/sys/disklabel.h +17 -5
  314. package/libc/include/generic-openbsd/sys/dkio.h +3 -5
  315. package/libc/include/generic-openbsd/sys/filedesc.h +3 -2
  316. package/libc/include/generic-openbsd/sys/mbuf.h +1 -1
  317. package/libc/include/generic-openbsd/sys/mman.h +7 -2
  318. package/libc/include/generic-openbsd/sys/mutex.h +10 -7
  319. package/libc/include/generic-openbsd/sys/namei.h +8 -7
  320. package/libc/include/generic-openbsd/sys/param.h +1 -1
  321. package/libc/include/generic-openbsd/sys/pledge.h +1 -3
  322. package/libc/include/generic-openbsd/sys/protosw.h +8 -1
  323. package/libc/include/generic-openbsd/sys/ptrace.h +4 -1
  324. package/libc/include/generic-openbsd/sys/sched.h +8 -1
  325. package/libc/include/generic-openbsd/sys/signal.h +4 -2
  326. package/libc/include/generic-openbsd/sys/socketvar.h +2 -1
  327. package/libc/include/generic-openbsd/sys/sockio.h +11 -1
  328. package/libc/include/generic-openbsd/sys/syscall.h +5 -3
  329. package/libc/include/generic-openbsd/sys/syscallargs.h +9 -2
  330. package/libc/include/generic-openbsd/sys/sysctl.h +7 -4
  331. package/libc/include/generic-openbsd/sys/types.h +6 -2
  332. package/libc/include/generic-openbsd/sys/videoio.h +143 -68
  333. package/libc/include/generic-openbsd/sys/xcall.h +2 -2
  334. package/libc/include/generic-openbsd/time.h +2 -2
  335. package/libc/include/generic-openbsd/unistd.h +2 -2
  336. package/libc/include/generic-openbsd/uvm/uvm_anon.h +2 -3
  337. package/libc/include/generic-openbsd/uvm/uvm_extern.h +1 -19
  338. package/libc/include/generic-openbsd/uvm/uvm_pager.h +3 -4
  339. package/libc/include/generic-openbsd/uvm/uvm_pmemrange.h +1 -2
  340. package/libc/include/generic-openbsd/uvm/uvm_swap.h +4 -1
  341. package/libc/include/generic-openbsd/uvm/uvm_vnode.h +3 -4
  342. package/libc/include/generic-openbsd/uvm/uvmexp.h +41 -35
  343. package/libc/include/hexagon-linux-any/asm/unistd_32.h +1 -0
  344. package/libc/include/loongarch-linux-any/asm/hwcap.h +1 -0
  345. package/libc/include/loongarch-linux-any/asm/kvm.h +1 -0
  346. package/libc/include/loongarch-linux-any/asm/kvm_para.h +1 -0
  347. package/libc/include/loongarch-linux-any/asm/unistd_32.h +2 -0
  348. package/libc/include/loongarch-linux-any/asm/unistd_64.h +2 -0
  349. package/libc/include/m68k-linux-any/asm/unistd_32.h +1 -0
  350. package/libc/include/mips-linux-any/asm/errno.h +2 -0
  351. package/libc/include/mips-linux-any/asm/unistd_n32.h +1 -0
  352. package/libc/include/mips-linux-any/asm/unistd_n64.h +1 -0
  353. package/libc/include/mips-linux-any/asm/unistd_o32.h +1 -0
  354. package/libc/include/mips64-openbsd-none/machine/octeonvar.h +1 -27
  355. package/libc/include/mips64-openbsd-none/octeon/octeonvar.h +1 -27
  356. package/libc/include/mips64el-openbsd-none/loongson/apmvar.h +1 -1
  357. package/libc/include/mips64el-openbsd-none/loongson/param.h +1 -5
  358. package/libc/include/mips64el-openbsd-none/machine/apmvar.h +1 -1
  359. package/libc/include/mips64el-openbsd-none/machine/param.h +1 -5
  360. package/libc/include/powerpc-linux-any/asm/unistd_32.h +1 -0
  361. package/libc/include/powerpc-linux-any/asm/unistd_64.h +1 -0
  362. package/libc/include/powerpc-openbsd-eabihf/powerpc/intr.h +1 -4
  363. package/libc/include/powerpc64-openbsd-none/machine/atomic.h +3 -3
  364. package/libc/include/powerpc64-openbsd-none/powerpc64/atomic.h +3 -3
  365. package/libc/include/riscv-linux-any/asm/hwprobe.h +4 -0
  366. package/libc/include/riscv-linux-any/asm/kvm.h +3 -0
  367. package/libc/include/riscv-linux-any/asm/ptrace.h +37 -0
  368. package/libc/include/riscv-linux-any/asm/sigcontext.h +1 -0
  369. package/libc/include/riscv-linux-any/asm/unistd_32.h +1 -0
  370. package/libc/include/riscv-linux-any/asm/unistd_64.h +1 -0
  371. package/libc/include/riscv64-openbsd-none/machine/cpu.h +4 -8
  372. package/libc/include/riscv64-openbsd-none/machine/cpufunc.h +4 -4
  373. package/libc/include/riscv64-openbsd-none/machine/pmap.h +5 -1
  374. package/libc/include/riscv64-openbsd-none/machine/pte.h +9 -1
  375. package/libc/include/riscv64-openbsd-none/riscv64/cpu.h +4 -8
  376. package/libc/include/riscv64-openbsd-none/riscv64/cpufunc.h +4 -4
  377. package/libc/include/riscv64-openbsd-none/riscv64/pmap.h +5 -1
  378. package/libc/include/riscv64-openbsd-none/riscv64/pte.h +9 -1
  379. package/libc/include/s390x-linux-any/asm/unistd_64.h +1 -0
  380. package/libc/include/sparc-linux-any/asm/errno.h +2 -0
  381. package/libc/include/sparc-linux-any/asm/ioctls.h +4 -4
  382. package/libc/include/sparc-linux-any/asm/unistd_32.h +2 -0
  383. package/libc/include/sparc-linux-any/asm/unistd_64.h +2 -0
  384. package/libc/include/x86-linux-any/asm/auxvec.h +0 -4
  385. package/libc/include/x86-linux-any/asm/kvm.h +13 -8
  386. package/libc/include/x86-linux-any/asm/svm.h +16 -16
  387. package/libc/include/x86-linux-any/asm/unistd_32.h +1 -0
  388. package/libc/include/x86-linux-any/asm/unistd_64.h +1 -0
  389. package/libc/include/x86-linux-any/asm/unistd_x32.h +1 -0
  390. package/libc/include/x86-openbsd-none/i386/specialreg.h +3 -1
  391. package/libc/include/x86-openbsd-none/machine/specialreg.h +3 -1
  392. package/libc/include/x86_64-openbsd-none/amd64/conf.h +11 -2
  393. package/libc/include/x86_64-openbsd-none/amd64/cpu.h +14 -4
  394. package/libc/include/x86_64-openbsd-none/amd64/cpufunc.h +2 -3
  395. package/libc/include/x86_64-openbsd-none/amd64/ghcb.h +2 -1
  396. package/libc/include/x86_64-openbsd-none/amd64/i82489var.h +2 -4
  397. package/libc/include/x86_64-openbsd-none/amd64/i8259.h +1 -53
  398. package/libc/include/x86_64-openbsd-none/amd64/intr.h +5 -2
  399. package/libc/include/x86_64-openbsd-none/amd64/intrdefs.h +9 -7
  400. package/libc/include/x86_64-openbsd-none/amd64/kexec.h +48 -0
  401. package/libc/include/x86_64-openbsd-none/amd64/specialreg.h +4 -1
  402. package/libc/include/x86_64-openbsd-none/machine/conf.h +11 -2
  403. package/libc/include/x86_64-openbsd-none/machine/cpu.h +14 -4
  404. package/libc/include/x86_64-openbsd-none/machine/cpufunc.h +2 -3
  405. package/libc/include/x86_64-openbsd-none/machine/ghcb.h +2 -1
  406. package/libc/include/x86_64-openbsd-none/machine/i82489var.h +2 -4
  407. package/libc/include/x86_64-openbsd-none/machine/i8259.h +1 -53
  408. package/libc/include/x86_64-openbsd-none/machine/intr.h +5 -2
  409. package/libc/include/x86_64-openbsd-none/machine/intrdefs.h +9 -7
  410. package/libc/include/x86_64-openbsd-none/machine/kexec.h +48 -0
  411. package/libc/include/x86_64-openbsd-none/machine/specialreg.h +4 -1
  412. package/libc/include/xtensa-linux-any/asm/unistd_32.h +1 -0
  413. package/libc/openbsd/abilists +0 -0
  414. package/libcxx/include/__algorithm/all_of.h +11 -5
  415. package/libcxx/include/__algorithm/comp.h +4 -0
  416. package/libcxx/include/__algorithm/copy.h +28 -147
  417. package/libcxx/include/__algorithm/copy_backward.h +9 -24
  418. package/libcxx/include/__algorithm/copy_n.h +50 -16
  419. package/libcxx/include/__algorithm/count.h +2 -2
  420. package/libcxx/include/__algorithm/equal.h +43 -55
  421. package/libcxx/include/__algorithm/fill.h +26 -8
  422. package/libcxx/include/__algorithm/fill_n.h +32 -46
  423. package/libcxx/include/__algorithm/find.h +96 -39
  424. package/libcxx/include/__algorithm/find_end.h +105 -0
  425. package/libcxx/include/__algorithm/for_each.h +18 -24
  426. package/libcxx/include/__algorithm/for_each_n.h +20 -47
  427. package/libcxx/include/__algorithm/for_each_n_segment.h +1 -1
  428. package/libcxx/include/__algorithm/for_each_segment.h +26 -0
  429. package/libcxx/include/__algorithm/generate.h +4 -2
  430. package/libcxx/include/__algorithm/generate_n.h +19 -6
  431. package/libcxx/include/__algorithm/is_permutation.h +4 -4
  432. package/libcxx/include/__algorithm/iterator_operations.h +3 -0
  433. package/libcxx/include/__algorithm/lexicographical_compare.h +2 -2
  434. package/libcxx/include/__algorithm/lexicographical_compare_three_way.h +6 -6
  435. package/libcxx/include/__algorithm/make_heap.h +16 -4
  436. package/libcxx/include/__algorithm/mismatch.h +2 -2
  437. package/libcxx/include/__algorithm/move.h +8 -19
  438. package/libcxx/include/__algorithm/move_backward.h +9 -24
  439. package/libcxx/include/__algorithm/none_of.h +4 -4
  440. package/libcxx/include/__algorithm/partial_sort.h +1 -1
  441. package/libcxx/include/__algorithm/partial_sort_copy.h +1 -1
  442. package/libcxx/include/__algorithm/pstl.h +9 -9
  443. package/libcxx/include/__algorithm/radix_sort.h +27 -25
  444. package/libcxx/include/__algorithm/ranges_copy_n.h +3 -26
  445. package/libcxx/include/__algorithm/ranges_equal.h +17 -26
  446. package/libcxx/include/__algorithm/ranges_fill.h +7 -6
  447. package/libcxx/include/__algorithm/ranges_for_each.h +9 -1
  448. package/libcxx/include/__algorithm/ranges_generate_n.h +2 -6
  449. package/libcxx/include/__algorithm/ranges_search_n.h +2 -2
  450. package/libcxx/include/__algorithm/rotate.h +27 -44
  451. package/libcxx/include/__algorithm/search_n.h +49 -37
  452. package/libcxx/include/__algorithm/sift_down.h +19 -18
  453. package/libcxx/include/__algorithm/simd_utils.h +33 -4
  454. package/libcxx/include/__algorithm/specialized_algorithms.h +54 -0
  455. package/libcxx/include/__algorithm/stable_sort.h +1 -1
  456. package/libcxx/include/__assertion_handler +31 -4
  457. package/libcxx/include/__atomic/atomic.h +36 -60
  458. package/libcxx/include/__atomic/atomic_flag.h +19 -37
  459. package/libcxx/include/__atomic/atomic_ref.h +29 -12
  460. package/libcxx/include/__atomic/atomic_sync.h +127 -55
  461. package/libcxx/include/__atomic/atomic_sync_timed.h +144 -0
  462. package/libcxx/include/__atomic/atomic_waitable_traits.h +103 -0
  463. package/libcxx/include/__atomic/contention_t.h +27 -3
  464. package/libcxx/include/__atomic/floating_point_helper.h +55 -0
  465. package/libcxx/include/__bit/countl.h +1 -2
  466. package/libcxx/include/__bit/countr.h +1 -2
  467. package/libcxx/include/__bit/has_single_bit.h +1 -1
  468. package/libcxx/include/__bit/popcount.h +0 -1
  469. package/libcxx/include/__bit/rotate.h +15 -26
  470. package/libcxx/include/__bit_reference +207 -18
  471. package/libcxx/include/__charconv/from_chars_integral.h +1 -1
  472. package/libcxx/include/__charconv/from_chars_result.h +1 -1
  473. package/libcxx/include/__charconv/to_chars_integral.h +1 -0
  474. package/libcxx/include/__charconv/to_chars_result.h +1 -1
  475. package/libcxx/include/__charconv/traits.h +3 -24
  476. package/libcxx/include/__chrono/day.h +11 -0
  477. package/libcxx/include/__chrono/duration.h +58 -33
  478. package/libcxx/include/__chrono/file_clock.h +4 -2
  479. package/libcxx/include/__chrono/is_clock.h +72 -0
  480. package/libcxx/include/__chrono/leap_second.h +13 -0
  481. package/libcxx/include/__chrono/month.h +13 -0
  482. package/libcxx/include/__chrono/month_weekday.h +22 -0
  483. package/libcxx/include/__chrono/monthday.h +20 -0
  484. package/libcxx/include/__chrono/steady_clock.h +1 -1
  485. package/libcxx/include/__chrono/system_clock.h +3 -3
  486. package/libcxx/include/__chrono/time_point.h +37 -13
  487. package/libcxx/include/__chrono/weekday.h +25 -0
  488. package/libcxx/include/__chrono/year.h +11 -0
  489. package/libcxx/include/__chrono/year_month.h +13 -0
  490. package/libcxx/include/__chrono/year_month_day.h +23 -0
  491. package/libcxx/include/__chrono/year_month_weekday.h +26 -0
  492. package/libcxx/include/__chrono/zoned_time.h +16 -0
  493. package/libcxx/include/__compare/is_eq.h +6 -6
  494. package/libcxx/include/__compare/strong_order.h +12 -30
  495. package/libcxx/include/__compare/three_way_comparable.h +2 -2
  496. package/libcxx/include/__concepts/comparison_common_type.h +40 -0
  497. package/libcxx/include/__concepts/equality_comparable.h +2 -1
  498. package/libcxx/include/__condition_variable/condition_variable.h +1 -1
  499. package/libcxx/include/__config +63 -280
  500. package/libcxx/include/__configuration/abi.h +14 -24
  501. package/libcxx/include/__configuration/availability.h +65 -118
  502. package/libcxx/include/__configuration/compiler.h +6 -6
  503. package/libcxx/include/__configuration/experimental.h +38 -0
  504. package/libcxx/include/__configuration/hardening.h +215 -0
  505. package/libcxx/include/__configuration/language.h +3 -0
  506. package/libcxx/include/__configuration/platform.h +9 -16
  507. package/libcxx/include/__coroutine/coroutine_handle.h +9 -9
  508. package/libcxx/include/__coroutine/noop_coroutine_handle.h +11 -13
  509. package/libcxx/include/__debug_utils/strict_weak_ordering_check.h +1 -1
  510. package/libcxx/include/__exception/exception.h +6 -4
  511. package/libcxx/include/__exception/exception_ptr.h +27 -5
  512. package/libcxx/include/__exception/nested_exception.h +2 -2
  513. package/libcxx/include/__exception/operations.h +5 -5
  514. package/libcxx/include/__expected/bad_expected_access.h +8 -6
  515. package/libcxx/include/__expected/expected.h +62 -64
  516. package/libcxx/include/__expected/unexpected.h +4 -4
  517. package/libcxx/include/__filesystem/copy_options.h +4 -4
  518. package/libcxx/include/__filesystem/directory_entry.h +37 -33
  519. package/libcxx/include/__filesystem/directory_iterator.h +9 -11
  520. package/libcxx/include/__filesystem/directory_options.h +7 -4
  521. package/libcxx/include/__filesystem/file_status.h +3 -3
  522. package/libcxx/include/__filesystem/filesystem_error.h +9 -10
  523. package/libcxx/include/__filesystem/operations.h +97 -66
  524. package/libcxx/include/__filesystem/path.h +68 -64
  525. package/libcxx/include/__filesystem/path_iterator.h +1 -3
  526. package/libcxx/include/__filesystem/perm_options.h +4 -4
  527. package/libcxx/include/__filesystem/perms.h +4 -4
  528. package/libcxx/include/__filesystem/recursive_directory_iterator.h +9 -14
  529. package/libcxx/include/__filesystem/space_info.h +1 -1
  530. package/libcxx/include/__filesystem/u8path.h +12 -14
  531. package/libcxx/include/__flat_map/flat_map.h +88 -71
  532. package/libcxx/include/__flat_map/flat_multimap.h +251 -172
  533. package/libcxx/include/__flat_map/key_value_iterator.h +0 -1
  534. package/libcxx/include/__flat_map/utils.h +1 -0
  535. package/libcxx/include/__flat_set/flat_multiset.h +211 -143
  536. package/libcxx/include/__flat_set/flat_set.h +86 -68
  537. package/libcxx/include/__format/concepts.h +0 -14
  538. package/libcxx/include/__format/extended_grapheme_cluster_table.h +3 -2
  539. package/libcxx/include/__format/fmt_pair_like.h +42 -0
  540. package/libcxx/include/__format/format_arg.h +7 -10
  541. package/libcxx/include/__format/format_args.h +1 -1
  542. package/libcxx/include/__format/format_context.h +5 -5
  543. package/libcxx/include/__format/format_parse_context.h +2 -2
  544. package/libcxx/include/__format/formatter_output.h +30 -34
  545. package/libcxx/include/__format/indic_conjunct_break_table.h +3 -2
  546. package/libcxx/include/__format/range_default_formatter.h +2 -41
  547. package/libcxx/include/__format/range_format.h +71 -0
  548. package/libcxx/include/__format/range_formatter.h +1 -0
  549. package/libcxx/include/__format/width_estimation_table.h +4 -2
  550. package/libcxx/include/__functional/bind.h +10 -15
  551. package/libcxx/include/__functional/bind_back.h +1 -1
  552. package/libcxx/include/__functional/bind_front.h +1 -1
  553. package/libcxx/include/__functional/function.h +57 -75
  554. package/libcxx/include/__functional/hash.h +1 -10
  555. package/libcxx/include/__functional/identity.h +1 -1
  556. package/libcxx/include/__functional/is_transparent.h +8 -0
  557. package/libcxx/include/__functional/mem_fn.h +2 -1
  558. package/libcxx/include/__functional/operations.h +18 -0
  559. package/libcxx/include/__functional/ranges_operations.h +7 -0
  560. package/libcxx/include/__functional/reference_wrapper.h +7 -5
  561. package/libcxx/include/__functional/weak_result_type.h +14 -28
  562. package/libcxx/include/__fwd/ios.h +1 -1
  563. package/libcxx/include/__fwd/tuple.h +14 -0
  564. package/libcxx/include/__hash_table +371 -357
  565. package/libcxx/include/__ios/fpos.h +4 -4
  566. package/libcxx/include/__iterator/back_insert_iterator.h +1 -7
  567. package/libcxx/include/__iterator/bounded_iter.h +7 -8
  568. package/libcxx/include/__iterator/concepts.h +6 -9
  569. package/libcxx/include/__iterator/cpp17_iterator_concepts.h +13 -12
  570. package/libcxx/include/__iterator/distance.h +40 -18
  571. package/libcxx/include/__iterator/front_insert_iterator.h +1 -7
  572. package/libcxx/include/__iterator/insert_iterator.h +1 -7
  573. package/libcxx/include/__iterator/istream_iterator.h +6 -7
  574. package/libcxx/include/__iterator/istreambuf_iterator.h +6 -7
  575. package/libcxx/include/__iterator/iter_move.h +1 -1
  576. package/libcxx/include/__iterator/iterator.h +13 -0
  577. package/libcxx/include/__iterator/iterator_traits.h +13 -14
  578. package/libcxx/include/__iterator/ostream_iterator.h +1 -7
  579. package/libcxx/include/__iterator/ostreambuf_iterator.h +1 -7
  580. package/libcxx/include/__iterator/reverse_iterator.h +8 -13
  581. package/libcxx/include/__iterator/segmented_iterator.h +3 -8
  582. package/libcxx/include/__iterator/static_bounded_iter.h +3 -3
  583. package/libcxx/include/__iterator/wrap_iter.h +8 -6
  584. package/libcxx/include/__locale +3 -10
  585. package/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +0 -10
  586. package/libcxx/include/__locale_dir/locale_base_api.h +5 -28
  587. package/libcxx/include/__locale_dir/messages.h +1 -1
  588. package/libcxx/include/__locale_dir/money.h +2 -2
  589. package/libcxx/include/__locale_dir/num.h +190 -243
  590. package/libcxx/include/__locale_dir/pad_and_output.h +5 -6
  591. package/libcxx/include/__locale_dir/support/bsd_like.h +0 -20
  592. package/libcxx/include/__locale_dir/support/fuchsia.h +0 -7
  593. package/libcxx/include/__locale_dir/support/linux.h +0 -37
  594. package/libcxx/include/__locale_dir/support/netbsd.h +0 -2
  595. package/libcxx/include/__locale_dir/support/newlib.h +243 -0
  596. package/libcxx/include/__locale_dir/support/no_locale/characters.h +0 -4
  597. package/libcxx/include/__locale_dir/support/no_locale/strtonum.h +0 -9
  598. package/libcxx/include/__locale_dir/support/windows.h +0 -29
  599. package/libcxx/include/__locale_dir/time.h +3 -7
  600. package/libcxx/include/__math/hypot.h +1 -1
  601. package/libcxx/include/__math/logarithms.h +1 -1
  602. package/libcxx/include/__math/traits.h +80 -11
  603. package/libcxx/include/__mdspan/extents.h +7 -4
  604. package/libcxx/include/__mdspan/layout_stride.h +4 -5
  605. package/libcxx/include/__mdspan/mdspan.h +29 -23
  606. package/libcxx/include/__memory/addressof.h +7 -5
  607. package/libcxx/include/__memory/align.h +18 -1
  608. package/libcxx/include/__memory/allocate_at_least.h +15 -10
  609. package/libcxx/include/__memory/allocator.h +14 -26
  610. package/libcxx/include/__memory/allocator_traits.h +6 -4
  611. package/libcxx/include/__memory/compressed_pair.h +15 -9
  612. package/libcxx/include/__memory/construct_at.h +12 -23
  613. package/libcxx/include/__memory/inout_ptr.h +1 -1
  614. package/libcxx/include/__memory/is_sufficiently_aligned.h +1 -1
  615. package/libcxx/include/__memory/out_ptr.h +1 -1
  616. package/libcxx/include/__memory/pointer_traits.h +1 -1
  617. package/libcxx/include/__memory/raw_storage_iterator.h +3 -9
  618. package/libcxx/include/__memory/shared_count.h +9 -30
  619. package/libcxx/include/__memory/shared_ptr.h +100 -145
  620. package/libcxx/include/__memory/temp_value.h +1 -2
  621. package/libcxx/include/__memory/uninitialized_algorithms.h +44 -115
  622. package/libcxx/include/__memory/unique_ptr.h +14 -16
  623. package/libcxx/include/__memory/uses_allocator_construction.h +1 -0
  624. package/libcxx/include/__memory_resource/memory_resource.h +4 -2
  625. package/libcxx/include/__memory_resource/monotonic_buffer_resource.h +1 -1
  626. package/libcxx/include/__memory_resource/polymorphic_allocator.h +13 -8
  627. package/libcxx/include/__memory_resource/pool_options.h +1 -1
  628. package/libcxx/include/__memory_resource/synchronized_pool_resource.h +4 -2
  629. package/libcxx/include/__memory_resource/unsynchronized_pool_resource.h +1 -1
  630. package/libcxx/include/__mutex/mutex.h +2 -2
  631. package/libcxx/include/__mutex/once_flag.h +14 -11
  632. package/libcxx/include/__mutex/tag_types.h +3 -3
  633. package/libcxx/include/__mutex/unique_lock.h +8 -7
  634. package/libcxx/include/__new/align_val_t.h +6 -0
  635. package/libcxx/include/__new/allocate.h +1 -2
  636. package/libcxx/include/__new/exceptions.h +8 -2
  637. package/libcxx/include/__new/global_new_delete.h +4 -11
  638. package/libcxx/include/__new/interference_size.h +0 -4
  639. package/libcxx/include/__new/launder.h +3 -5
  640. package/libcxx/include/__new/nothrow_t.h +1 -1
  641. package/libcxx/include/__numeric/gcd_lcm.h +24 -34
  642. package/libcxx/include/__numeric/midpoint.h +9 -14
  643. package/libcxx/include/__numeric/pstl.h +2 -2
  644. package/libcxx/include/__numeric/saturation_arithmetic.h +13 -5
  645. package/libcxx/include/__ostream/basic_ostream.h +8 -8
  646. package/libcxx/include/__pstl/backends/default.h +14 -14
  647. package/libcxx/include/__pstl/backends/libdispatch.h +2 -2
  648. package/libcxx/include/__pstl/cpu_algos/find_if.h +1 -1
  649. package/libcxx/include/__pstl/cpu_algos/transform.h +5 -6
  650. package/libcxx/include/__pstl/cpu_algos/transform_reduce.h +5 -4
  651. package/libcxx/include/__random/binomial_distribution.h +10 -4
  652. package/libcxx/include/__random/mersenne_twister_engine.h +50 -154
  653. package/libcxx/include/__random/piecewise_constant_distribution.h +3 -2
  654. package/libcxx/include/__random/piecewise_linear_distribution.h +3 -2
  655. package/libcxx/include/__ranges/adjacent_transform_view.h +406 -0
  656. package/libcxx/include/__ranges/adjacent_view.h +419 -0
  657. package/libcxx/include/__ranges/as_rvalue_view.h +9 -9
  658. package/libcxx/include/__ranges/chunk_by_view.h +6 -6
  659. package/libcxx/include/__ranges/common_view.h +7 -7
  660. package/libcxx/include/__ranges/drop_view.h +8 -8
  661. package/libcxx/include/__ranges/drop_while_view.h +5 -5
  662. package/libcxx/include/__ranges/elements_of.h +49 -0
  663. package/libcxx/include/__ranges/empty_view.h +5 -5
  664. package/libcxx/include/__ranges/filter_view.h +10 -10
  665. package/libcxx/include/__ranges/iota_view.h +41 -22
  666. package/libcxx/include/__ranges/owning_view.h +15 -15
  667. package/libcxx/include/__ranges/ref_view.h +6 -6
  668. package/libcxx/include/__ranges/repeat_view.h +17 -10
  669. package/libcxx/include/__ranges/single_view.h +8 -8
  670. package/libcxx/include/__ranges/take_view.h +9 -9
  671. package/libcxx/include/__ranges/transform_view.h +1 -2
  672. package/libcxx/include/__ranges/view_interface.h +10 -10
  673. package/libcxx/include/__ranges/zip_transform_view.h +357 -0
  674. package/libcxx/include/__ranges/zip_view.h +20 -20
  675. package/libcxx/include/__split_buffer +612 -240
  676. package/libcxx/include/__stop_token/atomic_unique_lock.h +1 -1
  677. package/libcxx/include/__stop_token/stop_callback.h +2 -2
  678. package/libcxx/include/__stop_token/stop_source.h +1 -1
  679. package/libcxx/include/__stop_token/stop_state.h +4 -4
  680. package/libcxx/include/__stop_token/stop_token.h +1 -1
  681. package/libcxx/include/__string/char_traits.h +51 -31
  682. package/libcxx/include/__string/constexpr_c_functions.h +5 -5
  683. package/libcxx/include/__support/xlocale/__strtonum_fallback.h +0 -8
  684. package/libcxx/include/__system_error/error_category.h +8 -8
  685. package/libcxx/include/__system_error/error_code.h +5 -5
  686. package/libcxx/include/__system_error/error_condition.h +4 -4
  687. package/libcxx/include/__system_error/system_error.h +1 -1
  688. package/libcxx/include/__thread/id.h +1 -1
  689. package/libcxx/include/__thread/jthread.h +1 -1
  690. package/libcxx/include/__thread/poll_with_backoff.h +27 -8
  691. package/libcxx/include/__thread/support/c11.h +8 -8
  692. package/libcxx/include/__thread/support/pthread.h +8 -8
  693. package/libcxx/include/__thread/support/windows.h +8 -8
  694. package/libcxx/include/__thread/thread.h +13 -8
  695. package/libcxx/include/__thread/timed_backoff_policy.h +3 -2
  696. package/libcxx/include/__tree +849 -701
  697. package/libcxx/include/__tuple/sfinae_helpers.h +1 -44
  698. package/libcxx/include/__tuple/tuple_element.h +0 -12
  699. package/libcxx/include/__tuple/tuple_size.h +0 -4
  700. package/libcxx/include/__tuple/tuple_transform.h +45 -0
  701. package/libcxx/include/__type_traits/aligned_storage.h +13 -40
  702. package/libcxx/include/__type_traits/desugars_to.h +4 -0
  703. package/libcxx/include/__type_traits/invoke.h +8 -0
  704. package/libcxx/include/__type_traits/is_allocator.h +6 -7
  705. package/libcxx/include/__type_traits/is_array.h +26 -0
  706. package/libcxx/include/__type_traits/is_equality_comparable.h +16 -21
  707. package/libcxx/include/__type_traits/is_final.h +1 -1
  708. package/libcxx/include/__type_traits/is_floating_point.h +7 -6
  709. package/libcxx/include/__type_traits/is_generic_transparent_comparator.h +30 -0
  710. package/libcxx/include/__type_traits/is_specialization.h +2 -6
  711. package/libcxx/include/__type_traits/is_within_lifetime.h +29 -0
  712. package/libcxx/include/__type_traits/make_transparent.h +52 -0
  713. package/libcxx/include/__type_traits/reference_constructs_from_temporary.h +1 -7
  714. package/libcxx/include/__type_traits/reference_converts_from_temporary.h +1 -1
  715. package/libcxx/include/__utility/cmp.h +19 -7
  716. package/libcxx/include/__utility/default_three_way_comparator.h +70 -0
  717. package/libcxx/include/__utility/in_place.h +1 -1
  718. package/libcxx/include/__utility/integer_sequence.h +56 -41
  719. package/libcxx/include/__utility/lazy_synth_three_way_comparator.h +120 -0
  720. package/libcxx/include/__utility/pair.h +22 -25
  721. package/libcxx/include/__utility/scope_guard.h +2 -0
  722. package/libcxx/include/__utility/try_key_extraction.h +114 -0
  723. package/libcxx/include/__vector/vector.h +187 -160
  724. package/libcxx/include/__vector/vector_bool.h +76 -83
  725. package/libcxx/include/any +118 -155
  726. package/libcxx/include/array +88 -56
  727. package/libcxx/include/atomic +2 -0
  728. package/libcxx/include/barrier +20 -24
  729. package/libcxx/include/bitset +49 -30
  730. package/libcxx/include/ccomplex +3 -11
  731. package/libcxx/include/chrono +47 -0
  732. package/libcxx/include/ciso646 +3 -6
  733. package/libcxx/include/complex +77 -65
  734. package/libcxx/include/complex.h +10 -10
  735. package/libcxx/include/condition_variable +3 -3
  736. package/libcxx/include/cstdalign +3 -10
  737. package/libcxx/include/cstdbool +3 -10
  738. package/libcxx/include/ctgmath +2 -11
  739. package/libcxx/include/ctype.h +24 -24
  740. package/libcxx/include/cwchar +2 -2
  741. package/libcxx/include/deque +109 -225
  742. package/libcxx/include/errno.h +269 -269
  743. package/libcxx/include/exception +4 -1
  744. package/libcxx/include/ext/hash_map +7 -48
  745. package/libcxx/include/ext/hash_set +2 -8
  746. package/libcxx/include/fenv.h +43 -43
  747. package/libcxx/include/flat_map +663 -11
  748. package/libcxx/include/flat_set +543 -8
  749. package/libcxx/include/float.h +16 -16
  750. package/libcxx/include/forward_list +33 -53
  751. package/libcxx/include/fstream +57 -42
  752. package/libcxx/include/future +41 -51
  753. package/libcxx/include/initializer_list +9 -3
  754. package/libcxx/include/inttypes.h +16 -16
  755. package/libcxx/include/ios +28 -28
  756. package/libcxx/include/istream +19 -13
  757. package/libcxx/include/iterator +10 -0
  758. package/libcxx/include/latch +7 -5
  759. package/libcxx/include/limits +4 -4
  760. package/libcxx/include/list +61 -79
  761. package/libcxx/include/map +386 -274
  762. package/libcxx/include/math.h +19 -0
  763. package/libcxx/include/mdspan +1 -5
  764. package/libcxx/include/mutex +29 -19
  765. package/libcxx/include/optional +644 -149
  766. package/libcxx/include/print +9 -5
  767. package/libcxx/include/queue +39 -37
  768. package/libcxx/include/ranges +48 -0
  769. package/libcxx/include/regex +33 -31
  770. package/libcxx/include/scoped_allocator +16 -11
  771. package/libcxx/include/semaphore +15 -18
  772. package/libcxx/include/set +220 -192
  773. package/libcxx/include/shared_mutex +3 -8
  774. package/libcxx/include/span +53 -37
  775. package/libcxx/include/sstream +34 -28
  776. package/libcxx/include/stack +13 -15
  777. package/libcxx/include/stddef.h +10 -10
  778. package/libcxx/include/stdexcept +2 -2
  779. package/libcxx/include/stdio.h +20 -21
  780. package/libcxx/include/streambuf +59 -19
  781. package/libcxx/include/string +574 -573
  782. package/libcxx/include/string_view +113 -89
  783. package/libcxx/include/strstream +10 -10
  784. package/libcxx/include/syncstream +4 -4
  785. package/libcxx/include/tgmath.h +12 -12
  786. package/libcxx/include/tuple +242 -212
  787. package/libcxx/include/type_traits +8 -2
  788. package/libcxx/include/typeindex +5 -3
  789. package/libcxx/include/typeinfo +92 -89
  790. package/libcxx/include/unordered_map +179 -304
  791. package/libcxx/include/unordered_set +168 -195
  792. package/libcxx/include/utility +12 -0
  793. package/libcxx/include/valarray +106 -161
  794. package/libcxx/include/variant +25 -33
  795. package/libcxx/include/version +41 -24
  796. package/libcxx/include/wctype.h +29 -29
  797. package/libcxx/libc/hdr/errno_macros.h +3 -1
  798. package/libcxx/libc/hdr/stdint_proxy.h +18 -0
  799. package/libcxx/libc/hdr/types/wchar_t.h +23 -0
  800. package/libcxx/libc/hdr/wchar_overlay.h +69 -0
  801. package/libcxx/libc/include/llvm-libc-macros/cfloat128-macros.h +41 -0
  802. package/libcxx/libc/include/llvm-libc-macros/cfloat16-macros.h +20 -0
  803. package/libcxx/libc/include/llvm-libc-macros/wchar-macros.h +18 -0
  804. package/libcxx/libc/include/llvm-libc-types/cfloat128.h +11 -28
  805. package/libcxx/libc/include/llvm-libc-types/cfloat16.h +4 -7
  806. package/libcxx/libc/include/llvm-libc-types/wint_t.h +14 -0
  807. package/libcxx/libc/shared/libc_common.h +5 -0
  808. package/libcxx/libc/src/__support/CPP/bit.h +50 -12
  809. package/libcxx/libc/src/__support/CPP/type_traits/is_complex.h +7 -0
  810. package/libcxx/libc/src/__support/CPP/type_traits/is_destructible.h +2 -1
  811. package/libcxx/libc/src/__support/CPP/type_traits/is_unsigned.h +6 -0
  812. package/libcxx/libc/src/__support/CPP/utility/integer_sequence.h +10 -0
  813. package/libcxx/libc/src/__support/FPUtil/FPBits.h +6 -7
  814. package/libcxx/libc/src/__support/FPUtil/rounding_mode.h +50 -4
  815. package/libcxx/libc/src/__support/big_int.h +14 -14
  816. package/libcxx/libc/src/__support/common.h +3 -2
  817. package/libcxx/libc/src/__support/ctype_utils.h +19 -12
  818. package/libcxx/libc/src/__support/detailed_powers_of_ten.h +1 -2
  819. package/libcxx/libc/src/__support/high_precision_decimal.h +33 -14
  820. package/libcxx/libc/src/__support/libc_assert.h +2 -0
  821. package/libcxx/libc/src/__support/macros/attributes.h +44 -1
  822. package/libcxx/libc/src/__support/macros/config.h +23 -0
  823. package/libcxx/libc/src/__support/macros/null_check.h +1 -2
  824. package/libcxx/libc/src/__support/macros/optimization.h +3 -0
  825. package/libcxx/libc/src/__support/macros/properties/architectures.h +5 -1
  826. package/libcxx/libc/src/__support/macros/properties/compiler.h +8 -3
  827. package/libcxx/libc/src/__support/macros/properties/cpu_features.h +17 -1
  828. package/libcxx/libc/src/__support/macros/properties/types.h +2 -3
  829. package/libcxx/libc/src/__support/macros/sanitizer.h +0 -10
  830. package/libcxx/libc/src/__support/math_extras.h +20 -4
  831. package/libcxx/libc/src/__support/str_to_float.h +98 -125
  832. package/libcxx/libc/src/__support/str_to_integer.h +39 -27
  833. package/libcxx/libc/src/__support/wctype_utils.h +588 -0
  834. package/libcxx/src/any.cpp +4 -0
  835. package/libcxx/src/atomic.cpp +365 -80
  836. package/libcxx/src/barrier.cpp +4 -3
  837. package/libcxx/src/charconv.cpp +6 -3
  838. package/libcxx/src/condition_variable_destructor.cpp +1 -1
  839. package/libcxx/src/error_category.cpp +3 -1
  840. package/libcxx/src/exception.cpp +2 -10
  841. package/libcxx/src/experimental/time_zone.cpp +1 -1
  842. package/libcxx/src/experimental/tzdb.cpp +4 -1
  843. package/libcxx/src/filesystem/error.h +4 -22
  844. package/libcxx/src/filesystem/format_string.h +9 -18
  845. package/libcxx/src/filesystem/int128_builtins.cpp +2 -0
  846. package/libcxx/src/filesystem/operations.cpp +2 -9
  847. package/libcxx/src/filesystem/path.cpp +3 -1
  848. package/libcxx/src/include/aligned_alloc.h +65 -0
  849. package/libcxx/src/include/config_elast.h +1 -1
  850. package/libcxx/src/include/from_chars_floating_point.h +11 -7
  851. package/libcxx/src/include/overridable_function.h +8 -10
  852. package/libcxx/src/iostream.cpp +56 -37
  853. package/libcxx/src/locale.cpp +213 -196
  854. package/libcxx/src/memory.cpp +12 -14
  855. package/libcxx/src/mutex_destructor.cpp +1 -1
  856. package/libcxx/src/new.cpp +5 -5
  857. package/libcxx/src/optional.cpp +4 -0
  858. package/libcxx/src/print.cpp +9 -1
  859. package/libcxx/src/random.cpp +0 -26
  860. package/libcxx/src/string.cpp +10 -25
  861. package/libcxx/src/support/runtime/exception_fallback.ipp +2 -0
  862. package/libcxx/src/support/runtime/exception_glibcxx.ipp +3 -0
  863. package/libcxx/src/support/runtime/exception_libcxxabi.ipp +6 -2
  864. package/libcxx/src/support/runtime/exception_libcxxrt.ipp +2 -0
  865. package/libcxx/src/support/runtime/exception_msvc.ipp +2 -0
  866. package/libcxx/src/support/runtime/exception_pointer_cxxabi.ipp +9 -10
  867. package/libcxx/src/support/runtime/exception_pointer_glibcxx.ipp +2 -0
  868. package/libcxx/src/support/runtime/exception_pointer_msvc.ipp +1 -0
  869. package/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp +1 -0
  870. package/libcxx/src/support/win32/locale_win32.cpp +1 -1
  871. package/libcxx/src/system_error.cpp +2 -0
  872. package/libcxx/src/thread.cpp +1 -3
  873. package/libcxx/src/valarray.cpp +1 -2
  874. package/libcxx/src/vector.cpp +2 -2
  875. package/libcxxabi/include/__cxxabi_config.h +42 -23
  876. package/libcxxabi/src/cxa_exception.cpp +4 -2
  877. package/libcxxabi/src/cxa_exception.h +16 -14
  878. package/libcxxabi/src/cxa_personality.cpp +126 -9
  879. package/libcxxabi/src/cxa_thread_atexit.cpp +2 -1
  880. package/libcxxabi/src/demangle/DemangleConfig.h +4 -0
  881. package/libcxxabi/src/demangle/ItaniumDemangle.h +9 -6
  882. package/libcxxabi/src/demangle/Utility.h +21 -7
  883. package/libcxxabi/src/fallback_malloc.cpp +1 -1
  884. package/libcxxabi/src/private_typeinfo.cpp +6 -0
  885. package/libcxxabi/src/stdlib_new_delete.cpp +5 -5
  886. package/libtsan/LICENSE.TXT +311 -0
  887. package/libtsan/builtins/assembly.h +41 -8
  888. package/libtsan/interception/interception_win.cpp +4 -0
  889. package/libtsan/sanitizer_common/sanitizer_allocator_primary32.h +1 -0
  890. package/libtsan/sanitizer_common/sanitizer_allocator_primary64.h +18 -0
  891. package/libtsan/sanitizer_common/sanitizer_common.h +15 -2
  892. package/libtsan/sanitizer_common/sanitizer_common_interceptors.inc +30 -4
  893. package/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +4 -0
  894. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S +2 -1
  895. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S +2 -0
  896. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S +2 -0
  897. package/libtsan/sanitizer_common/sanitizer_common_syscalls.inc +18 -0
  898. package/libtsan/sanitizer_common/sanitizer_file.cpp +40 -12
  899. package/libtsan/sanitizer_common/sanitizer_file.h +3 -0
  900. package/libtsan/sanitizer_common/sanitizer_flags.inc +7 -0
  901. package/libtsan/sanitizer_common/sanitizer_fuchsia.cpp +30 -3
  902. package/libtsan/sanitizer_common/sanitizer_haiku.cpp +2 -2
  903. package/libtsan/sanitizer_common/sanitizer_internal_defs.h +1 -1
  904. package/libtsan/sanitizer_common/sanitizer_libc.cpp +8 -0
  905. package/libtsan/sanitizer_common/sanitizer_libc.h +1 -0
  906. package/libtsan/sanitizer_common/sanitizer_linux.cpp +15 -7
  907. package/libtsan/sanitizer_common/sanitizer_linux.h +3 -3
  908. package/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp +1 -0
  909. package/libtsan/sanitizer_common/sanitizer_mac.cpp +255 -104
  910. package/libtsan/sanitizer_common/sanitizer_mac.h +5 -0
  911. package/libtsan/sanitizer_common/sanitizer_netbsd.cpp +2 -2
  912. package/libtsan/sanitizer_common/sanitizer_platform.h +27 -1
  913. package/libtsan/sanitizer_common/sanitizer_platform_interceptors.h +5 -4
  914. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp +15 -17
  915. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h +32 -6
  916. package/libtsan/sanitizer_common/sanitizer_posix.cpp +3 -12
  917. package/libtsan/sanitizer_common/sanitizer_posix.h +2 -1
  918. package/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp +19 -0
  919. package/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp +102 -37
  920. package/libtsan/sanitizer_common/sanitizer_redefine_builtins.h +1 -1
  921. package/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc +40 -2
  922. package/libtsan/sanitizer_common/sanitizer_stoptheworld.h +1 -1
  923. package/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp +83 -12
  924. package/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp +3 -3
  925. package/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp +7 -7
  926. package/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp +2 -2
  927. package/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h +5 -1
  928. package/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp +11 -1
  929. package/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp +86 -29
  930. package/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp +27 -16
  931. package/libtsan/sanitizer_common/sanitizer_thread_registry.cpp +5 -4
  932. package/libtsan/sanitizer_common/sanitizer_thread_registry.h +4 -4
  933. package/libtsan/sanitizer_common/sanitizer_win.cpp +1 -3
  934. package/libtsan/tsan_debugging.cpp +2 -2
  935. package/libtsan/tsan_flags.cpp +37 -0
  936. package/libtsan/tsan_flags.h +8 -0
  937. package/libtsan/tsan_flags.inc +12 -0
  938. package/libtsan/tsan_interceptors.h +9 -1
  939. package/libtsan/tsan_interceptors_mac.cpp +19 -0
  940. package/libtsan/tsan_interceptors_posix.cpp +78 -32
  941. package/libtsan/tsan_interface.h +3 -3
  942. package/libtsan/tsan_interface_ann.cpp +23 -9
  943. package/libtsan/tsan_mman.cpp +18 -4
  944. package/libtsan/tsan_platform.h +44 -7
  945. package/libtsan/tsan_platform_linux.cpp +42 -14
  946. package/libtsan/tsan_platform_mac.cpp +16 -3
  947. package/libtsan/tsan_report.h +14 -1
  948. package/libtsan/tsan_rtl.cpp +14 -0
  949. package/libtsan/tsan_rtl.h +7 -2
  950. package/libtsan/tsan_rtl_aarch64.S +3 -5
  951. package/libtsan/tsan_rtl_access.cpp +8 -3
  952. package/libtsan/tsan_rtl_amd64.S +2 -0
  953. package/libtsan/tsan_rtl_mutex.cpp +94 -49
  954. package/libtsan/tsan_rtl_report.cpp +132 -65
  955. package/libtsan/tsan_rtl_thread.cpp +31 -9
  956. package/libtsan/tsan_symbolize.cpp +1 -1
  957. package/libtsan/tsan_symbolize.h +1 -1
  958. package/libtsan/tsan_trace.h +1 -1
  959. package/libunwind/include/__libunwind_config.h +11 -2
  960. package/libunwind/include/libunwind.h +117 -11
  961. package/libunwind/include/unwind_arm_ehabi.h +4 -1
  962. package/libunwind/src/AddressSpace.hpp +42 -20
  963. package/libunwind/src/CompactUnwinder.hpp +16 -5
  964. package/libunwind/src/DwarfInstructions.hpp +24 -13
  965. package/libunwind/src/DwarfParser.hpp +62 -23
  966. package/libunwind/src/EHHeaderParser.hpp +7 -4
  967. package/libunwind/src/Registers.hpp +226 -22
  968. package/libunwind/src/Unwind-seh.cpp +6 -7
  969. package/libunwind/src/Unwind-wasm.c +7 -7
  970. package/libunwind/src/UnwindCursor.hpp +167 -49
  971. package/libunwind/src/UnwindLevel1.c +46 -17
  972. package/libunwind/src/UnwindRegistersRestore.S +46 -5
  973. package/libunwind/src/UnwindRegistersSave.S +86 -2
  974. package/libunwind/src/assembly.h +5 -1
  975. package/libunwind/src/config.h +9 -0
  976. package/libunwind/src/gcc_personality_v0.c +79 -6
  977. package/libunwind/src/libunwind.cpp +104 -4
  978. package/libunwind/src/libunwind_ext.h +7 -1
  979. package/libunwind/src/shadow_stack_unwind.h +2 -2
  980. package/lldb/pretty_printers.py +948 -0
  981. package/package.json +1 -1
  982. package/std/Build/Cache/Path.zig +9 -2
  983. package/std/Build/Cache.zig +16 -7
  984. package/std/Build/Configuration.zig +3436 -0
  985. package/std/Build/Module.zig +99 -225
  986. package/std/Build/Step/CheckFile.zig +17 -63
  987. package/std/Build/Step/Compile.zig +97 -1420
  988. package/std/Build/Step/ConfigHeader.zig +55 -944
  989. package/std/Build/Step/Fail.zig +10 -20
  990. package/std/Build/Step/FindProgram.zig +31 -0
  991. package/std/Build/Step/Fmt.zig +22 -57
  992. package/std/Build/Step/InstallArtifact.zig +26 -141
  993. package/std/Build/Step/InstallDir.zig +14 -67
  994. package/std/Build/Step/InstallFile.zig +12 -21
  995. package/std/Build/Step/ObjCopy.zig +82 -199
  996. package/std/Build/Step/Options.zig +26 -261
  997. package/std/Build/Step/Run.zig +139 -2214
  998. package/std/Build/Step/TranslateC.zig +55 -164
  999. package/std/Build/Step/UpdateSourceFiles.zig +38 -91
  1000. package/std/Build/Step/WriteFile.zig +113 -328
  1001. package/std/Build/Step.zig +45 -916
  1002. package/std/Build/abi.zig +1 -1
  1003. package/std/Build.zig +644 -718
  1004. package/std/Io/Dir.zig +12 -7
  1005. package/std/Io/Dispatch.zig +5 -5
  1006. package/std/Io/File/Writer.zig +8 -6
  1007. package/std/Io/File.zig +6 -9
  1008. package/std/Io/Kqueue.zig +3 -3
  1009. package/std/Io/Reader.zig +8 -14
  1010. package/std/Io/RwLock.zig +2 -0
  1011. package/std/Io/Semaphore.zig +112 -17
  1012. package/std/Io/Terminal.zig +1 -1
  1013. package/std/Io/Threaded.zig +19 -16
  1014. package/std/Io/Uring.zig +7 -7
  1015. package/std/Io/Writer.zig +75 -10
  1016. package/std/Io/net/HostName.zig +11 -6
  1017. package/std/Io.zig +92 -28
  1018. package/std/Random/ChaCha.zig +2 -2
  1019. package/std/Random/benchmark.zig +2 -2
  1020. package/std/Random.zig +6 -6
  1021. package/std/SemanticVersion.zig +1 -1
  1022. package/std/Target/Query.zig +4 -5
  1023. package/std/Target/aarch64.zig +620 -77
  1024. package/std/Target/amdgcn.zig +421 -21
  1025. package/std/Target/arm.zig +40 -6
  1026. package/std/Target/bpf.zig +6 -0
  1027. package/std/Target/hexagon.zig +41 -6
  1028. package/std/Target/loongarch.zig +18 -0
  1029. package/std/Target/mips.zig +6 -0
  1030. package/std/Target/nvptx.zig +58 -35
  1031. package/std/Target/powerpc.zig +27 -19
  1032. package/std/Target/riscv.zig +512 -177
  1033. package/std/Target/sparc.zig +17 -0
  1034. package/std/Target/spirv.zig +1 -1
  1035. package/std/Target/wasm.zig +7 -0
  1036. package/std/Target/x86.zig +200 -31
  1037. package/std/Target/xtensa.zig +65 -0
  1038. package/std/Target.zig +94 -57
  1039. package/std/Thread.zig +17 -4
  1040. package/std/array_hash_map.zig +103 -57
  1041. package/std/array_list.zig +20 -35
  1042. package/std/ascii.zig +0 -9
  1043. package/std/atomic.zig +2 -0
  1044. package/std/base64.zig +5 -5
  1045. package/std/bit_set.zig +85 -93
  1046. package/std/c/serenity.zig +1 -6
  1047. package/std/c.zig +117 -36
  1048. package/std/compress/flate/Decompress.zig +3 -4
  1049. package/std/compress/zstd/Decompress.zig +7 -9
  1050. package/std/crypto/25519/curve25519.zig +2 -2
  1051. package/std/crypto/25519/edwards25519.zig +3 -3
  1052. package/std/crypto/25519/ristretto255.zig +2 -2
  1053. package/std/crypto/25519/scalar.zig +6 -6
  1054. package/std/crypto/25519/x25519.zig +1 -1
  1055. package/std/crypto/Certificate.zig +14 -2
  1056. package/std/crypto/Sha1.zig +1 -1
  1057. package/std/crypto/aegis.zig +45 -39
  1058. package/std/crypto/aes_ccm.zig +22 -22
  1059. package/std/crypto/aes_gcm.zig +10 -12
  1060. package/std/crypto/aes_ocb.zig +9 -9
  1061. package/std/crypto/argon2.zig +15 -15
  1062. package/std/crypto/ascon.zig +75 -35
  1063. package/std/crypto/bcrypt.zig +20 -10
  1064. package/std/crypto/benchmark.zig +7 -7
  1065. package/std/crypto/blake2.zig +100 -64
  1066. package/std/crypto/cbc_mac.zig +1 -1
  1067. package/std/crypto/chacha20.zig +10 -10
  1068. package/std/crypto/cmac.zig +3 -3
  1069. package/std/crypto/codecs/asn1/Oid.zig +12 -1
  1070. package/std/crypto/codecs/asn1/der/Encoder.zig +1 -1
  1071. package/std/crypto/codecs/asn1.zig +1 -1
  1072. package/std/crypto/codecs/base64_hex_ct.zig +3 -5
  1073. package/std/crypto/ecdsa.zig +9 -9
  1074. package/std/crypto/ff.zig +4 -5
  1075. package/std/crypto/ghash_polyval.zig +4 -4
  1076. package/std/crypto/hkdf.zig +1 -1
  1077. package/std/crypto/isap.zig +3 -3
  1078. package/std/crypto/kangarootwelve.zig +1 -1
  1079. package/std/crypto/keccak_p.zig +8 -8
  1080. package/std/crypto/md5.zig +1 -1
  1081. package/std/crypto/ml_dsa.zig +39 -39
  1082. package/std/crypto/ml_kem.zig +12 -34
  1083. package/std/crypto/modes.zig +2 -2
  1084. package/std/crypto/pbkdf2.zig +1 -1
  1085. package/std/crypto/pcurves/common.zig +4 -5
  1086. package/std/crypto/pcurves/p256/scalar.zig +3 -3
  1087. package/std/crypto/pcurves/p384/scalar.zig +2 -2
  1088. package/std/crypto/pcurves/secp256k1/scalar.zig +3 -3
  1089. package/std/crypto/pcurves/tests/p256.zig +5 -5
  1090. package/std/crypto/pcurves/tests/p384.zig +5 -5
  1091. package/std/crypto/pcurves/tests/secp256k1.zig +3 -3
  1092. package/std/crypto/salsa20.zig +8 -14
  1093. package/std/crypto/sha2.zig +2 -2
  1094. package/std/crypto/sha3.zig +2 -4
  1095. package/std/crypto/siphash.zig +1 -1
  1096. package/std/crypto/timing_safe.zig +10 -9
  1097. package/std/crypto/tls/Client.zig +89 -13
  1098. package/std/crypto/tls.zig +1 -1
  1099. package/std/crypto.zig +4 -3
  1100. package/std/debug/Dwarf.zig +21 -12
  1101. package/std/debug/Pdb.zig +25 -17
  1102. package/std/debug/SelfInfo/Elf.zig +1 -0
  1103. package/std/debug/cpu_context.zig +168 -24
  1104. package/std/debug.zig +16 -8
  1105. package/std/deque.zig +1 -1
  1106. package/std/elf.zig +22 -5
  1107. package/std/enums.zig +8 -20
  1108. package/std/fmt/float.zig +2 -0
  1109. package/std/fmt/parse_float/decimal.zig +1 -1
  1110. package/std/fmt/parse_float.zig +1 -1
  1111. package/std/fmt.zig +7 -8
  1112. package/std/fs/path.zig +7 -5
  1113. package/std/hash/Adler32.zig +3 -3
  1114. package/std/hash/benchmark.zig +2 -2
  1115. package/std/hash/wyhash.zig +2 -2
  1116. package/std/hash/xxhash.zig +0 -6
  1117. package/std/hash_map.zig +22 -2
  1118. package/std/heap/ArenaAllocator.zig +3 -5
  1119. package/std/heap/BufferFirstAllocator.zig +165 -0
  1120. package/std/heap/SafeAllocator.zig +2180 -0
  1121. package/std/heap/debug_allocator.zig +2 -2
  1122. package/std/heap/memory_pool.zig +34 -197
  1123. package/std/heap.zig +20 -133
  1124. package/std/http.zig +4 -5
  1125. package/std/json/Scanner.zig +2 -2
  1126. package/std/json/static.zig +2 -2
  1127. package/std/json.zig +1 -1
  1128. package/std/{builtin → lang}/assembly.zig +71 -0
  1129. package/std/{builtin.zig → lang.zig} +5 -3
  1130. package/std/leb128.zig +2 -2
  1131. package/std/math/acos.zig +6 -0
  1132. package/std/math/asin.zig +6 -0
  1133. package/std/math/atan.zig +5 -0
  1134. package/std/math/big/int.zig +5 -5
  1135. package/std/math/big.zig +4 -4
  1136. package/std/math/copysign.zig +1 -1
  1137. package/std/math/float.zig +62 -0
  1138. package/std/math/frexp.zig +4 -4
  1139. package/std/math/hypot.zig +4 -0
  1140. package/std/math/ilogb.zig +1 -1
  1141. package/std/math/isfinite.zig +1 -1
  1142. package/std/math/isinf.zig +1 -1
  1143. package/std/math/isnan.zig +1 -2
  1144. package/std/math/isnormal.zig +2 -2
  1145. package/std/math/iszero.zig +2 -2
  1146. package/std/math/ldexp.zig +2 -2
  1147. package/std/math/log10.zig +0 -2
  1148. package/std/math/modf.zig +1 -2
  1149. package/std/math/nextafter.zig +3 -4
  1150. package/std/math/pow.zig +1 -1
  1151. package/std/math/powi.zig +2 -3
  1152. package/std/math/signbit.zig +0 -1
  1153. package/std/math.zig +21 -26
  1154. package/std/mem/Allocator.zig +5 -9
  1155. package/std/mem.zig +52 -75
  1156. package/std/meta/trailer_flags.zig +1 -1
  1157. package/std/meta.zig +4 -36
  1158. package/std/multi_array_list.zig +24 -0
  1159. package/std/os/emscripten.zig +7 -6
  1160. package/std/os/linux/IoUring.zig +2 -0
  1161. package/std/os/linux/alpha.zig +358 -0
  1162. package/std/os/linux/arm.zig +0 -26
  1163. package/std/os/linux/bpf.zig +6 -0
  1164. package/std/os/linux/ioctl.zig +3 -2
  1165. package/std/os/linux/syscalls.zig +528 -1
  1166. package/std/os/linux/tls.zig +12 -1
  1167. package/std/os/linux/x86.zig +2 -2
  1168. package/std/os/linux/xtensa.zig +171 -0
  1169. package/std/os/linux.zig +794 -52
  1170. package/std/os/plan9.zig +1 -1
  1171. package/std/os/uefi/hii.zig +1 -1
  1172. package/std/os/uefi/tables/boot_services.zig +9 -8
  1173. package/std/os/uefi/tables/runtime_services.zig +1 -1
  1174. package/std/os/windows.zig +130 -1
  1175. package/std/os.zig +36 -0
  1176. package/std/pie.zig +21 -0
  1177. package/std/posix.zig +2 -2
  1178. package/std/process/Child.zig +20 -0
  1179. package/std/process/Environ.zig +28 -4
  1180. package/std/process.zig +13 -5
  1181. package/std/simd.zig +4 -21
  1182. package/std/start.zig +45 -12
  1183. package/std/std.zig +8 -1
  1184. package/std/tar/Writer.zig +39 -33
  1185. package/std/tar.zig +8 -4
  1186. package/std/testing.zig +68 -15
  1187. package/std/unicode.zig +13 -8
  1188. package/std/zig/Ast/Render.zig +6 -30
  1189. package/std/zig/Ast.zig +12 -37
  1190. package/std/zig/AstGen.zig +174 -258
  1191. package/std/zig/AstRlAnnotate.zig +1 -11
  1192. package/std/zig/AstSmith.zig +5 -11
  1193. package/std/zig/ErrorBundle.zig +6 -2
  1194. package/std/zig/LibCDirs.zig +14 -7
  1195. package/std/zig/LibCInstallation.zig +49 -14
  1196. package/std/zig/Parse.zig +11 -76
  1197. package/std/zig/PkgConfig.zig +146 -0
  1198. package/std/zig/TokenSmith.zig +0 -6
  1199. package/std/zig/WindowsSdk.zig +18 -18
  1200. package/std/zig/Zir.zig +15 -69
  1201. package/std/zig/ZonGen.zig +19 -27
  1202. package/std/zig/llvm/Builder.zig +39 -33
  1203. package/std/zig/llvm/bitcode_writer.zig +3 -3
  1204. package/std/zig/llvm/ir.zig +8 -8
  1205. package/std/zig/system/arm.zig +56 -2
  1206. package/std/zig/system/linux.zig +4 -0
  1207. package/std/zig/system/loongarch.zig +25 -9
  1208. package/std/zig/system/windows.zig +34 -1
  1209. package/std/zig/system/x86.zig +60 -16
  1210. package/std/zig/system.zig +18 -25
  1211. package/std/zig/target.zig +1 -4
  1212. package/std/zig/tokenizer.zig +4 -43
  1213. package/std/zig.zig +98 -22
  1214. package/std/zip.zig +5 -5
  1215. package/std/zon/Serializer.zig +6 -2
  1216. package/std/zon/parse.zig +1 -1
  1217. package/zig.h +24 -2
  1218. package/compiler/build_runner.zig +0 -1857
  1219. package/compiler_rt/long_double.zig +0 -37
  1220. package/include/amxbf16transposeintrin.h +0 -94
  1221. package/include/amxcomplextransposeintrin.h +0 -303
  1222. package/include/amxfp16transposeintrin.h +0 -94
  1223. package/include/amxmovrstransposeintrin.h +0 -200
  1224. package/include/amxtf32transposeintrin.h +0 -105
  1225. package/include/amxtransposeintrin.h +0 -248
  1226. package/libc/include/hexagon-linux-any/asm/signal.h +0 -29
  1227. package/libc/include/mips64el-openbsd-none/loongson/hibernate.h +0 -33
  1228. package/libc/include/mips64el-openbsd-none/loongson/hibernate_var.h +0 -39
  1229. package/libc/include/mips64el-openbsd-none/machine/hibernate.h +0 -33
  1230. package/libc/include/mips64el-openbsd-none/machine/hibernate_var.h +0 -39
  1231. package/libc/include/s390x-linux-any/asm/tape390.h +0 -103
  1232. package/libc/mingw/math/lrintl.c +0 -18
  1233. package/libc/mingw/math/rintl.c +0 -16
  1234. package/libc/mingw/winpthreads/spinlock.c +0 -82
  1235. package/libc/musl/src/linux/tee.c +0 -8
  1236. package/libc/musl/src/math/i386/lrintl.c +0 -8
  1237. package/libc/musl/src/math/i386/rintl.c +0 -7
  1238. package/libc/musl/src/math/lrintl.c +0 -36
  1239. package/libc/musl/src/math/rintl.c +0 -29
  1240. package/libc/musl/src/math/s390x/rintl.c +0 -15
  1241. package/libc/musl/src/math/x32/lrintl.s +0 -7
  1242. package/libc/musl/src/math/x32/rintl.s +0 -6
  1243. package/libc/musl/src/math/x86_64/lrintl.c +0 -8
  1244. package/libc/musl/src/math/x86_64/rintl.c +0 -7
  1245. package/libc/musl/src/string/strdup.c +0 -10
  1246. package/libc/musl/src/string/strndup.c +0 -12
  1247. package/libc/musl/src/string/wcsdup.c +0 -10
  1248. package/libc/musl/src/thread/pthread_spin_destroy.c +0 -6
  1249. package/libc/musl/src/thread/pthread_spin_init.c +0 -6
  1250. package/libc/musl/src/thread/pthread_spin_lock.c +0 -8
  1251. package/libc/musl/src/thread/pthread_spin_trylock.c +0 -7
  1252. package/libc/musl/src/thread/pthread_spin_unlock.c +0 -7
  1253. package/libc/musl/src/unistd/dup2.c +0 -20
  1254. package/libc/musl/src/unistd/dup3.c +0 -26
  1255. package/libc/wasi/thread-stub/pthread_spin_lock.c +0 -8
  1256. package/libc/wasi/thread-stub/pthread_spin_trylock.c +0 -8
  1257. package/libc/wasi/thread-stub/pthread_spin_unlock.c +0 -7
  1258. package/libtsan/sanitizer_common/sanitizer_coverage_interface.inc +0 -43
  1259. package/std/Build/Step/CheckObject.zig +0 -2764
@@ -164,7 +164,7 @@ pub fn DebugAllocator(comptime config: Config) type {
164
164
  return struct {
165
165
  backing_allocator: Allocator = std.heap.page_allocator,
166
166
  /// Tracks the active bucket, which is the one that has free slots in it.
167
- buckets: [small_bucket_count]?*BucketHeader = [1]?*BucketHeader{null} ** small_bucket_count,
167
+ buckets: [small_bucket_count]?*BucketHeader = @splat(null),
168
168
  large_allocations: LargeAllocTable = .empty,
169
169
  total_requested_bytes: @TypeOf(total_requested_bytes_init) = total_requested_bytes_init,
170
170
  requested_memory_limit: @TypeOf(requested_memory_limit_init) = requested_memory_limit_init,
@@ -189,7 +189,7 @@ pub fn DebugAllocator(comptime config: Config) type {
189
189
  const page_size = config.page_size;
190
190
  const page_align: mem.Alignment = .fromByteUnits(page_size);
191
191
  /// Integer type for pointing to slots in a small allocation
192
- const SlotIndex = std.meta.Int(.unsigned, math.log2(page_size) + 1);
192
+ const SlotIndex = @Int(.unsigned, math.log2(page_size) + 1);
193
193
 
194
194
  const total_requested_bytes_init = if (config.enable_memory_limit) @as(usize, 0) else {};
195
195
  const requested_memory_limit_init = if (config.enable_memory_limit) @as(usize, math.maxInt(usize)) else {};
@@ -3,11 +3,6 @@ const Allocator = std.mem.Allocator;
3
3
  const Alignment = std.mem.Alignment;
4
4
  const MemoryPool = std.heap.MemoryPool;
5
5
 
6
- /// Deprecated.
7
- pub fn Managed(comptime Item: type) type {
8
- return ExtraManaged(Item, .{ .alignment = null });
9
- }
10
-
11
6
  /// A memory pool that can allocate objects of a single type very quickly.
12
7
  /// Use this when you need to allocate a lot of objects of the same type,
13
8
  /// because it outperforms general purpose allocators.
@@ -18,11 +13,6 @@ pub fn Aligned(comptime Item: type, comptime alignment: Alignment) type {
18
13
  return Extra(Item, .{ .alignment = alignment });
19
14
  }
20
15
 
21
- /// Deprecated.
22
- pub fn AlignedManaged(comptime Item: type, comptime alignment: Alignment) type {
23
- return ExtraManaged(Item, .{ .alignment = alignment });
24
- }
25
-
26
16
  pub const Options = struct {
27
17
  /// The alignment of the memory pool items. Use `null` for natural alignment.
28
18
  alignment: ?Alignment = null,
@@ -83,13 +73,6 @@ pub fn Extra(comptime Item: type, comptime pool_options: Options) type {
83
73
  pool.* = undefined;
84
74
  }
85
75
 
86
- pub fn toManaged(pool: Pool, allocator: Allocator) ExtraManaged(Item, pool_options) {
87
- return .{
88
- .allocator = allocator,
89
- .unmanaged = pool,
90
- };
91
- }
92
-
93
76
  /// Pre-allocates `num` items and adds them to the memory pool.
94
77
  /// This allows at least `num` active allocations before an
95
78
  /// `OutOfMemory` error might happen when calling `create()`.
@@ -114,7 +97,7 @@ pub fn Extra(comptime Item: type, comptime pool_options: Options) type {
114
97
  /// NOTE: If `mode` is `free_all`, the function will always return `true`.
115
98
  pub fn reset(pool: *Pool, allocator: Allocator, mode: ResetMode) bool {
116
99
  // TODO: Potentially store all allocated objects in a list as well, allowing to
117
- // just move them into the free list instead of actually releasing the memory.
100
+ // just move them into the free list instead of actually releasing the memory.
118
101
 
119
102
  var arena = pool.arena_state.promote(allocator);
120
103
  defer pool.arena_state = arena.state;
@@ -155,182 +138,56 @@ pub fn Extra(comptime Item: type, comptime pool_options: Options) type {
155
138
  };
156
139
  }
157
140
 
158
- /// Deprecated.
159
- pub fn ExtraManaged(comptime Item: type, comptime pool_options: Options) type {
160
- if (pool_options.alignment) |a| {
161
- if (a.compare(.eq, .of(Item))) {
162
- var new_options = pool_options;
163
- new_options.alignment = null;
164
- return ExtraManaged(Item, new_options);
165
- }
166
- }
167
- return struct {
168
- const Pool = @This();
169
-
170
- allocator: Allocator,
171
- unmanaged: Unmanaged,
172
-
173
- pub const Unmanaged = Extra(Item, pool_options);
174
- pub const item_size = Unmanaged.item_size;
175
- pub const item_alignment = Unmanaged.item_alignment;
176
-
177
- const ItemPtr = Unmanaged.ItemPtr;
178
-
179
- /// Creates a new memory pool.
180
- pub fn init(allocator: Allocator) Pool {
181
- return Unmanaged.empty.toManaged(allocator);
182
- }
183
-
184
- /// Creates a new memory pool and pre-allocates `num` items.
185
- /// This allows up to `num` active allocations before an
186
- /// `OutOfMemory` error might happen when calling `create()`.
187
- pub fn initCapacity(allocator: Allocator, num: usize) Allocator.Error!Pool {
188
- return (try Unmanaged.initCapacity(allocator, num)).toManaged(allocator);
189
- }
190
-
191
- /// Destroys the memory pool and frees all allocated memory.
192
- pub fn deinit(pool: *Pool) void {
193
- pool.unmanaged.deinit(pool.allocator);
194
- pool.* = undefined;
195
- }
196
-
197
- /// Pre-allocates `num` items and adds them to the memory pool.
198
- /// This allows at least `num` active allocations before an
199
- /// `OutOfMemory` error might happen when calling `create()`.
200
- pub fn addCapacity(pool: *Pool, num: usize) Allocator.Error!void {
201
- return pool.unmanaged.addCapacity(pool.allocator, num);
202
- }
203
-
204
- pub const ResetMode = Unmanaged.ResetMode;
205
-
206
- /// Resets the memory pool and destroys all allocated items.
207
- /// This can be used to batch-destroy all objects without invalidating the memory pool.
208
- ///
209
- /// The function will return whether the reset operation was successful or not.
210
- /// If the reallocation failed `false` is returned. The pool will still be fully
211
- /// functional in that case, all memory is released. Future allocations just might
212
- /// be slower.
213
- ///
214
- /// NOTE: If `mode` is `free_all`, the function will always return `true`.
215
- pub fn reset(pool: *Pool, mode: ResetMode) bool {
216
- return pool.unmanaged.reset(pool.allocator, mode);
217
- }
218
-
219
- /// Creates a new item and adds it to the memory pool.
220
- pub fn create(pool: *Pool) Allocator.Error!ItemPtr {
221
- return pool.unmanaged.create(pool.allocator);
222
- }
223
-
224
- /// Destroys a previously created item.
225
- /// Only pass items to `ptr` that were previously created with `create()` of the same memory pool!
226
- pub fn destroy(pool: *Pool, ptr: ItemPtr) void {
227
- return pool.unmanaged.destroy(ptr);
228
- }
229
-
230
- fn allocNew(pool: *Pool) Allocator.Error!*align(item_alignment) [item_size]u8 {
231
- return pool.unmanaged.allocNew(pool.allocator);
232
- }
233
- };
234
- }
235
-
236
141
  test "basic" {
237
142
  const a = std.testing.allocator;
238
143
 
239
- {
240
- var pool: MemoryPool(u32) = .empty;
241
- defer pool.deinit(a);
242
-
243
- const p1 = try pool.create(a);
244
- const p2 = try pool.create(a);
245
- const p3 = try pool.create(a);
246
-
247
- // Assert uniqueness
248
- try std.testing.expect(p1 != p2);
249
- try std.testing.expect(p1 != p3);
250
- try std.testing.expect(p2 != p3);
144
+ var pool: MemoryPool(u32) = .empty;
145
+ defer pool.deinit(a);
251
146
 
252
- pool.destroy(p2);
253
- const p4 = try pool.create(a);
254
-
255
- // Assert memory reuse
256
- try std.testing.expect(p2 == p4);
257
- }
147
+ const p1 = try pool.create(a);
148
+ const p2 = try pool.create(a);
149
+ const p3 = try pool.create(a);
258
150
 
259
- {
260
- var pool: Managed(u32) = .init(std.testing.allocator);
261
- defer pool.deinit();
151
+ // Assert uniqueness
152
+ try std.testing.expect(p1 != p2);
153
+ try std.testing.expect(p1 != p3);
154
+ try std.testing.expect(p2 != p3);
262
155
 
263
- const p1 = try pool.create();
264
- const p2 = try pool.create();
265
- const p3 = try pool.create();
156
+ pool.destroy(p2);
157
+ const p4 = try pool.create(a);
266
158
 
267
- // Assert uniqueness
268
- try std.testing.expect(p1 != p2);
269
- try std.testing.expect(p1 != p3);
270
- try std.testing.expect(p2 != p3);
271
-
272
- pool.destroy(p2);
273
- const p4 = try pool.create();
274
-
275
- // Assert memory reuse
276
- try std.testing.expect(p2 == p4);
277
- }
159
+ // Assert memory reuse
160
+ try std.testing.expect(p2 == p4);
278
161
  }
279
162
 
280
163
  test "initCapacity (success)" {
281
164
  const a = std.testing.allocator;
282
165
 
283
- {
284
- var pool: MemoryPool(u32) = try .initCapacity(a, 4);
285
- defer pool.deinit(a);
286
-
287
- _ = try pool.create(a);
288
- _ = try pool.create(a);
289
- _ = try pool.create(a);
290
- }
291
-
292
- {
293
- var pool: Managed(u32) = try .initCapacity(a, 4);
294
- defer pool.deinit();
166
+ var pool: MemoryPool(u32) = try .initCapacity(a, 4);
167
+ defer pool.deinit(a);
295
168
 
296
- _ = try pool.create();
297
- _ = try pool.create();
298
- _ = try pool.create();
299
- }
169
+ _ = try pool.create(a);
170
+ _ = try pool.create(a);
171
+ _ = try pool.create(a);
300
172
  }
301
173
 
302
174
  test "initCapacity (failure)" {
303
175
  const failer = std.testing.failing_allocator;
304
176
  try std.testing.expectError(error.OutOfMemory, MemoryPool(u32).initCapacity(failer, 5));
305
- try std.testing.expectError(error.OutOfMemory, Managed(u32).initCapacity(failer, 5));
306
177
  }
307
178
 
308
179
  test "growable" {
309
180
  const a = std.testing.allocator;
310
181
 
311
- {
312
- var pool: Extra(u32, .{ .growable = false }) = try .initCapacity(a, 4);
313
- defer pool.deinit(a);
314
-
315
- _ = try pool.create(a);
316
- _ = try pool.create(a);
317
- _ = try pool.create(a);
318
- _ = try pool.create(a);
319
-
320
- try std.testing.expectError(error.OutOfMemory, pool.create(a));
321
- }
322
-
323
- {
324
- var pool: ExtraManaged(u32, .{ .growable = false }) = try .initCapacity(a, 4);
325
- defer pool.deinit();
182
+ var pool: Extra(u32, .{ .growable = false }) = try .initCapacity(a, 4);
183
+ defer pool.deinit(a);
326
184
 
327
- _ = try pool.create();
328
- _ = try pool.create();
329
- _ = try pool.create();
330
- _ = try pool.create();
185
+ _ = try pool.create(a);
186
+ _ = try pool.create(a);
187
+ _ = try pool.create(a);
188
+ _ = try pool.create(a);
331
189
 
332
- try std.testing.expectError(error.OutOfMemory, pool.create());
333
- }
190
+ try std.testing.expectError(error.OutOfMemory, pool.create(a));
334
191
  }
335
192
 
336
193
  test "greater than pointer default alignment" {
@@ -339,21 +196,11 @@ test "greater than pointer default alignment" {
339
196
  };
340
197
  const a = std.testing.allocator;
341
198
 
342
- {
343
- var pool: MemoryPool(Foo) = .empty;
344
- defer pool.deinit(a);
345
-
346
- const foo: *Foo = try pool.create(a);
347
- pool.destroy(foo);
348
- }
349
-
350
- {
351
- var pool: Managed(Foo) = .init(a);
352
- defer pool.deinit();
199
+ var pool: MemoryPool(Foo) = .empty;
200
+ defer pool.deinit(a);
353
201
 
354
- const foo: *Foo = try pool.create();
355
- pool.destroy(foo);
356
- }
202
+ const foo: *Foo = try pool.create(a);
203
+ pool.destroy(foo);
357
204
  }
358
205
 
359
206
  test "greater than pointer manual alignment" {
@@ -362,19 +209,9 @@ test "greater than pointer manual alignment" {
362
209
  };
363
210
  const a = std.testing.allocator;
364
211
 
365
- {
366
- var pool: Aligned(Foo, .@"16") = .empty;
367
- defer pool.deinit(a);
368
-
369
- const foo: *align(16) Foo = try pool.create(a);
370
- pool.destroy(foo);
371
- }
212
+ var pool: Aligned(Foo, .@"16") = .empty;
213
+ defer pool.deinit(a);
372
214
 
373
- {
374
- var pool: AlignedManaged(Foo, .@"16") = .init(a);
375
- defer pool.deinit();
376
-
377
- const foo: *align(16) Foo = try pool.create();
378
- pool.destroy(foo);
379
- }
215
+ const foo: *align(16) Foo = try pool.create(a);
216
+ pool.destroy(foo);
380
217
  }
package/std/heap.zig CHANGED
@@ -11,13 +11,18 @@ const Alignment = std.mem.Alignment;
11
11
 
12
12
  pub const ArenaAllocator = @import("heap/ArenaAllocator.zig");
13
13
  pub const SmpAllocator = @import("heap/SmpAllocator.zig");
14
+ pub const SafeAllocator = @import("heap/SafeAllocator.zig");
14
15
  pub const FixedBufferAllocator = @import("heap/FixedBufferAllocator.zig");
16
+ pub const BufferFirstAllocator = @import("heap/BufferFirstAllocator.zig");
15
17
  pub const PageAllocator = @import("heap/PageAllocator.zig");
16
18
  pub const WasmAllocator = if (builtin.single_threaded) BrkAllocator else @compileError("unimplemented");
17
19
  pub const BrkAllocator = @import("heap/BrkAllocator.zig");
18
20
 
21
+ /// Deprecated; use `SafeAllocator.Options`.
19
22
  pub const DebugAllocatorConfig = @import("heap/debug_allocator.zig").Config;
23
+ /// Deprecated; use `SafeAllocator`.
20
24
  pub const DebugAllocator = @import("heap/debug_allocator.zig").DebugAllocator;
25
+ /// Deprecated.
21
26
  pub const Check = enum { ok, leak };
22
27
 
23
28
  /// A memory pool that can allocate objects of a single type very quickly.
@@ -29,13 +34,6 @@ pub fn MemoryPool(comptime Item: type) type {
29
34
  }
30
35
  pub const memory_pool = @import("heap/memory_pool.zig");
31
36
 
32
- /// Deprecated; use `memory_pool.Aligned`.
33
- pub const MemoryPoolAligned = memory_pool.Aligned;
34
- /// Deprecated; use `memory_pool.Extra`.
35
- pub const MemoryPoolExtra = memory_pool.Extra;
36
- /// Deprecated; use `memory_pool.Options`.
37
- pub const MemoryPoolOptions = memory_pool.Options;
38
-
39
37
  /// comptime-known minimum page size of the target.
40
38
  ///
41
39
  /// All pointers from `mmap` or `NtAllocateVirtualMemory` are aligned to at least
@@ -367,113 +365,6 @@ pub const brk_allocator: Allocator = .{
367
365
  .vtable = &BrkAllocator.vtable,
368
366
  };
369
367
 
370
- /// Returns a `StackFallbackAllocator` allocating using either a
371
- /// `FixedBufferAllocator` on an array of size `size` and falling back to
372
- /// `fallback_allocator` if that fails.
373
- pub fn stackFallback(comptime size: usize, fallback_allocator: Allocator) StackFallbackAllocator(size) {
374
- return StackFallbackAllocator(size){
375
- .buffer = undefined,
376
- .fallback_allocator = fallback_allocator,
377
- .fixed_buffer_allocator = undefined,
378
- };
379
- }
380
-
381
- /// An allocator that attempts to allocate using a
382
- /// `FixedBufferAllocator` using an array of size `size`. If the
383
- /// allocation fails, it will fall back to using
384
- /// `fallback_allocator`. Easily created with `stackFallback`.
385
- pub fn StackFallbackAllocator(comptime size: usize) type {
386
- return struct {
387
- const Self = @This();
388
-
389
- buffer: [size]u8,
390
- fallback_allocator: Allocator,
391
- fixed_buffer_allocator: FixedBufferAllocator,
392
- get_called: if (std.debug.runtime_safety) bool else void =
393
- if (std.debug.runtime_safety) false else {},
394
-
395
- /// This function both fetches a `Allocator` interface to this
396
- /// allocator *and* resets the internal buffer allocator.
397
- pub fn get(self: *Self) Allocator {
398
- if (std.debug.runtime_safety) {
399
- assert(!self.get_called); // `get` called multiple times; instead use `const allocator = stackFallback(N).get();`
400
- self.get_called = true;
401
- }
402
- self.fixed_buffer_allocator = FixedBufferAllocator.init(self.buffer[0..]);
403
- return .{
404
- .ptr = self,
405
- .vtable = &.{
406
- .alloc = alloc,
407
- .resize = resize,
408
- .remap = remap,
409
- .free = free,
410
- },
411
- };
412
- }
413
-
414
- /// Unlike most std allocators `StackFallbackAllocator` modifies
415
- /// its internal state before returning an implementation of
416
- /// the`Allocator` interface and therefore also doesn't use
417
- /// the usual `.allocator()` method.
418
- pub const allocator = @compileError("use 'const allocator = stackFallback(N).get();' instead");
419
-
420
- fn alloc(
421
- ctx: *anyopaque,
422
- len: usize,
423
- alignment: Alignment,
424
- ra: usize,
425
- ) ?[*]u8 {
426
- const self: *Self = @ptrCast(@alignCast(ctx));
427
- return FixedBufferAllocator.alloc(&self.fixed_buffer_allocator, len, alignment, ra) orelse
428
- return self.fallback_allocator.rawAlloc(len, alignment, ra);
429
- }
430
-
431
- fn resize(
432
- ctx: *anyopaque,
433
- buf: []u8,
434
- alignment: Alignment,
435
- new_len: usize,
436
- ra: usize,
437
- ) bool {
438
- const self: *Self = @ptrCast(@alignCast(ctx));
439
- if (self.fixed_buffer_allocator.ownsPtr(buf.ptr)) {
440
- return FixedBufferAllocator.resize(&self.fixed_buffer_allocator, buf, alignment, new_len, ra);
441
- } else {
442
- return self.fallback_allocator.rawResize(buf, alignment, new_len, ra);
443
- }
444
- }
445
-
446
- fn remap(
447
- context: *anyopaque,
448
- memory: []u8,
449
- alignment: Alignment,
450
- new_len: usize,
451
- return_address: usize,
452
- ) ?[*]u8 {
453
- const self: *Self = @ptrCast(@alignCast(context));
454
- if (self.fixed_buffer_allocator.ownsPtr(memory.ptr)) {
455
- return FixedBufferAllocator.remap(&self.fixed_buffer_allocator, memory, alignment, new_len, return_address);
456
- } else {
457
- return self.fallback_allocator.rawRemap(memory, alignment, new_len, return_address);
458
- }
459
- }
460
-
461
- fn free(
462
- ctx: *anyopaque,
463
- buf: []u8,
464
- alignment: Alignment,
465
- ra: usize,
466
- ) void {
467
- const self: *Self = @ptrCast(@alignCast(ctx));
468
- if (self.fixed_buffer_allocator.ownsPtr(buf.ptr)) {
469
- return FixedBufferAllocator.free(&self.fixed_buffer_allocator, buf, alignment, ra);
470
- } else {
471
- return self.fallback_allocator.rawFree(buf, alignment, ra);
472
- }
473
- }
474
- };
475
- }
476
-
477
368
  test c_allocator {
478
369
  if (builtin.link_libc) {
479
370
  try testAllocator(c_allocator);
@@ -491,6 +382,17 @@ test smp_allocator {
491
382
  try testAllocatorAlignedShrink(smp_allocator);
492
383
  }
493
384
 
385
+ test SafeAllocator {
386
+ var instance: SafeAllocator = .init(page_allocator, .{});
387
+ defer _ = instance.deinit();
388
+ const allocator = instance.allocator();
389
+
390
+ try testAllocator(allocator);
391
+ try testAllocatorAligned(allocator);
392
+ try testAllocatorLargeAlignment(allocator);
393
+ try testAllocatorAlignedShrink(allocator);
394
+ }
395
+
494
396
  test PageAllocator {
495
397
  const allocator = page_allocator;
496
398
  try testAllocator(allocator);
@@ -524,25 +426,6 @@ test ArenaAllocator {
524
426
  try testAllocatorAlignedShrink(allocator);
525
427
  }
526
428
 
527
- test "StackFallbackAllocator" {
528
- {
529
- var stack_allocator = stackFallback(4096, std.testing.allocator);
530
- try testAllocator(stack_allocator.get());
531
- }
532
- {
533
- var stack_allocator = stackFallback(4096, std.testing.allocator);
534
- try testAllocatorAligned(stack_allocator.get());
535
- }
536
- {
537
- var stack_allocator = stackFallback(4096, std.testing.allocator);
538
- try testAllocatorLargeAlignment(stack_allocator.get());
539
- }
540
- {
541
- var stack_allocator = stackFallback(4096, std.testing.allocator);
542
- try testAllocatorAlignedShrink(stack_allocator.get());
543
- }
544
- }
545
-
546
429
  /// This one should not try alignments that exceed what C malloc can handle.
547
430
  pub fn testAllocator(base_allocator: mem.Allocator) !void {
548
431
  var validationAllocator = mem.validationWrap(base_allocator);
@@ -740,6 +623,7 @@ const page_size_min_default: ?usize = switch (builtin.os.tag) {
740
623
  .hppa => 4 << 10,
741
624
  .x86, .x86_64 => 4 << 10,
742
625
  .thumb, .thumbeb, .arm, .armeb, .aarch64, .aarch64_be => 4 << 10,
626
+ .m88k => 4 << 10,
743
627
  .mips64, .mips64el => 4 << 10,
744
628
  .powerpc, .powerpc64, .powerpc64le, .powerpcle => 4 << 10,
745
629
  .riscv64 => 4 << 10,
@@ -903,6 +787,7 @@ const page_size_max_default: ?usize = switch (builtin.os.tag) {
903
787
  .hppa => 4 << 10,
904
788
  .x86, .x86_64 => 4 << 10,
905
789
  .thumb, .thumbeb, .arm, .armeb, .aarch64, .aarch64_be => 4 << 10,
790
+ .m88k => 4 << 10,
906
791
  .mips64, .mips64el => 16 << 10,
907
792
  .powerpc, .powerpc64, .powerpc64le, .powerpcle => 4 << 10,
908
793
  .riscv64 => 4 << 10,
@@ -1010,7 +895,9 @@ test {
1010
895
  _ = @import("heap/memory_pool.zig");
1011
896
  _ = ArenaAllocator;
1012
897
  _ = DebugAllocator(.{});
898
+ _ = SafeAllocator;
1013
899
  _ = FixedBufferAllocator;
900
+ _ = BufferFirstAllocator;
1014
901
  if (builtin.single_threaded) {
1015
902
  if (builtin.cpu.arch.isWasm() or (builtin.os.tag == .linux and !builtin.link_libc)) {
1016
903
  _ = brk_allocator;
package/std/http.zig CHANGED
@@ -400,7 +400,7 @@ pub const Reader = struct {
400
400
  0 => return error.HttpConnectionClosing,
401
401
  else => return error.HttpRequestTruncated,
402
402
  },
403
- error.ReadFailed => return error.ReadFailed,
403
+ error.ReadFailed => |e| return e,
404
404
  };
405
405
  continue;
406
406
  }
@@ -543,8 +543,7 @@ pub const Reader = struct {
543
543
  else => unreachable,
544
544
  };
545
545
  return chunkedReadEndless(reader, w, limit, chunk_len_ptr) catch |err| switch (err) {
546
- error.ReadFailed => return error.ReadFailed,
547
- error.WriteFailed => return error.WriteFailed,
546
+ error.ReadFailed, error.WriteFailed => |e| return e,
548
547
  error.EndOfStream => {
549
548
  reader.body_err = error.HttpChunkTruncated;
550
549
  return error.ReadFailed;
@@ -613,7 +612,7 @@ pub const Reader = struct {
613
612
  else => unreachable,
614
613
  };
615
614
  return chunkedDiscardEndless(reader, limit, chunk_len_ptr) catch |err| switch (err) {
616
- error.ReadFailed => return error.ReadFailed,
615
+ error.ReadFailed => |e| return e,
617
616
  error.EndOfStream => {
618
617
  reader.body_err = error.HttpChunkTruncated;
619
618
  return error.ReadFailed;
@@ -750,7 +749,7 @@ pub const BodyWriter = struct {
750
749
  /// How many zeroes to reserve for hex-encoded chunk length.
751
750
  const chunk_len_digits = 8;
752
751
  const max_chunk_len: usize = std.math.pow(u64, 16, chunk_len_digits) - 1;
753
- const chunk_header_template = ("0" ** chunk_len_digits) ++ "\r\n";
752
+ const chunk_header_template = @as([chunk_len_digits]u8, @splat('0')) ++ "\r\n";
754
753
 
755
754
  comptime {
756
755
  assert(max_chunk_len == std.math.maxInt(u32));
@@ -1401,7 +1401,7 @@ pub fn validate(allocator: Allocator, s: []const u8) Allocator.Error!bool {
1401
1401
  while (true) {
1402
1402
  const token = scanner.next() catch |err| switch (err) {
1403
1403
  error.SyntaxError, error.UnexpectedEndOfInput => return false,
1404
- error.OutOfMemory => return error.OutOfMemory,
1404
+ error.OutOfMemory => |e| return e,
1405
1405
  error.BufferUnderrun => unreachable,
1406
1406
  };
1407
1407
  if (token == .end_of_document) break;
@@ -1734,7 +1734,7 @@ pub const Reader = struct {
1734
1734
 
1735
1735
  fn refillBuffer(self: *@This()) std.Io.Reader.Error!void {
1736
1736
  const input = self.reader.peekGreedy(1) catch |err| switch (err) {
1737
- error.ReadFailed => return error.ReadFailed,
1737
+ error.ReadFailed => |e| return e,
1738
1738
  error.EndOfStream => return self.scanner.endInput(),
1739
1739
  };
1740
1740
  self.reader.toss(input.len);
@@ -334,7 +334,7 @@ pub fn innerParse(
334
334
  if (.object_begin != try source.next()) return error.UnexpectedToken;
335
335
 
336
336
  var r: T = undefined;
337
- var fields_seen = [_]bool{false} ** structInfo.fields.len;
337
+ var fields_seen: [structInfo.fields.len]bool = @splat(false);
338
338
 
339
339
  while (true) {
340
340
  var name_token: ?Token = try source.nextAllocMax(allocator, .alloc_if_needed, options.max_value_len.?);
@@ -649,7 +649,7 @@ pub fn innerParseFromValue(
649
649
  if (source != .object) return error.UnexpectedToken;
650
650
 
651
651
  var r: T = undefined;
652
- var fields_seen = [_]bool{false} ** structInfo.fields.len;
652
+ var fields_seen: [structInfo.fields.len]bool = @splat(false);
653
653
 
654
654
  var it = source.object.iterator();
655
655
  while (it.next()) |kv| {
package/std/json.zig CHANGED
@@ -1,7 +1,7 @@
1
1
  //! JSON parsing and stringification conforming to RFC 8259. https://datatracker.ietf.org/doc/html/rfc8259
2
2
  //!
3
3
  //! The low-level `Scanner` API produces `Token`s from an input slice or successive slices of inputs,
4
- //! The `Reader` API connects a `std.Io.GenericReader` to a `Scanner`.
4
+ //! The `Reader` API connects a `std.Io.Reader` to a `Scanner`.
5
5
  //!
6
6
  //! The high-level `parseFromSlice` and `parseFromTokenSource` deserialize a JSON document into a Zig type.
7
7
  //! Parse into a dynamically-typed `Value` to load any JSON value for runtime inspection.