@zigc/lib 0.17.0-dev.76 → 0.17.0-dev.836

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 (2036) hide show
  1. package/build-web/fuzz.zig +2 -2
  2. package/c/fcntl.zig +5 -0
  3. package/c/math.zig +56 -2
  4. package/c/pthread.zig +57 -0
  5. package/c/stdlib.zig +32 -22
  6. package/c/string.zig +20 -0
  7. package/c/unistd.zig +1 -0
  8. package/c/wchar.zig +10 -0
  9. package/c.zig +1 -0
  10. package/{std/Build → compiler/Maker}/Fuzz.zig +177 -89
  11. package/compiler/Maker/Graph.zig +85 -0
  12. package/compiler/Maker/PkgConfig.zig +122 -0
  13. package/compiler/Maker/ScannedConfig.zig +372 -0
  14. package/compiler/Maker/Step/CheckFile.zig +63 -0
  15. package/compiler/Maker/Step/Compile.zig +1393 -0
  16. package/compiler/Maker/Step/ConfigHeader.zig +610 -0
  17. package/compiler/Maker/Step/FindProgram.zig +120 -0
  18. package/compiler/Maker/Step/Fmt.zig +65 -0
  19. package/compiler/Maker/Step/InstallArtifact.zig +141 -0
  20. package/compiler/Maker/Step/InstallDir.zig +99 -0
  21. package/compiler/Maker/Step/InstallFile.zig +26 -0
  22. package/compiler/Maker/Step/ObjCopy.zig +173 -0
  23. package/compiler/Maker/Step/Options.zig +104 -0
  24. package/compiler/Maker/Step/Run.zig +2390 -0
  25. package/compiler/Maker/Step/TranslateC.zig +157 -0
  26. package/compiler/Maker/Step/UpdateSourceFiles.zig +89 -0
  27. package/compiler/Maker/Step/WriteFile.zig +294 -0
  28. package/compiler/Maker/Step.zig +894 -0
  29. package/{std/Build → compiler/Maker}/Watch/FsEvents.zig +36 -26
  30. package/{std/Build → compiler/Maker}/Watch.zig +89 -68
  31. package/{std/Build → compiler/Maker}/WebServer.zig +145 -118
  32. package/compiler/Maker.zig +2061 -0
  33. package/compiler/aro/aro/Attribute.zig +52 -51
  34. package/compiler/aro/aro/CodeGen.zig +7 -8
  35. package/compiler/aro/aro/Compilation.zig +22 -22
  36. package/compiler/aro/aro/Diagnostics.zig +7 -7
  37. package/compiler/aro/aro/Driver.zig +18 -16
  38. package/compiler/aro/aro/Parser.zig +22 -17
  39. package/compiler/aro/aro/Pragma.zig +3 -2
  40. package/compiler/aro/aro/Preprocessor.zig +11 -8
  41. package/compiler/aro/aro/Tree.zig +11 -11
  42. package/compiler/aro/aro/features.zig +4 -4
  43. package/compiler/aro/aro/pragmas/message.zig +3 -2
  44. package/compiler/aro/aro/text_literal.zig +5 -4
  45. package/compiler/aro/assembly_backend/x86_64.zig +4 -4
  46. package/compiler/aro/backend/Interner.zig +14 -13
  47. package/compiler/aro/backend/Ir/x86/Renderer.zig +3 -3
  48. package/compiler/configurer.zig +1403 -0
  49. package/compiler/reduce/Walk.zig +8 -13
  50. package/compiler/resinator/bmp.zig +3 -2
  51. package/compiler/resinator/code_pages.zig +14 -12
  52. package/compiler/resinator/compile.zig +1 -1
  53. package/compiler/resinator/cvtres.zig +15 -14
  54. package/compiler/resinator/errors.zig +25 -29
  55. package/compiler/resinator/ico.zig +4 -4
  56. package/compiler/resinator/lang.zig +7 -7
  57. package/compiler/resinator/parse.zig +3 -3
  58. package/compiler/resinator/res.zig +1 -1
  59. package/compiler/std-docs.zig +17 -38
  60. package/compiler/test_runner.zig +25 -15
  61. package/compiler/translate-c/MacroTranslator.zig +1 -1
  62. package/compiler/translate-c/Translator.zig +2 -2
  63. package/compiler/translate-c/ast.zig +22 -29
  64. package/compiler/translate-c/main.zig +1 -1
  65. package/compiler_rt/addf3.zig +1 -1
  66. package/compiler_rt/arm.zig +3 -3
  67. package/compiler_rt/atomics.zig +1 -1
  68. package/compiler_rt/comparef.zig +3 -3
  69. package/compiler_rt/cos.zig +1 -1
  70. package/compiler_rt/count0bits.zig +1 -1
  71. package/compiler_rt/divdf3.zig +14 -10
  72. package/compiler_rt/divsf3.zig +13 -8
  73. package/compiler_rt/divtf3.zig +1 -1
  74. package/compiler_rt/divxf3.zig +1 -1
  75. package/compiler_rt/extendf.zig +5 -5
  76. package/compiler_rt/fabs.zig +1 -1
  77. package/compiler_rt/float_from_int.zig +4 -5
  78. package/compiler_rt/fmax.zig +1 -1
  79. package/compiler_rt/fmin.zig +1 -1
  80. package/compiler_rt/fmod.zig +2 -2
  81. package/compiler_rt/int_from_float.zig +1 -1
  82. package/compiler_rt/limb64.zig +3 -34
  83. package/compiler_rt/log.zig +230 -3
  84. package/compiler_rt/log10.zig +228 -3
  85. package/compiler_rt/log2.zig +221 -3
  86. package/compiler_rt/log_f128.zig +173 -0
  87. package/compiler_rt/mulf3.zig +2 -2
  88. package/compiler_rt/rem_pio2l.zig +1 -1
  89. package/compiler_rt/sin.zig +1 -1
  90. package/compiler_rt/sincos.zig +1 -1
  91. package/compiler_rt/ssp.zig +2 -2
  92. package/compiler_rt/tan.zig +1 -1
  93. package/compiler_rt/truncf.zig +3 -3
  94. package/compiler_rt/trunctfhf2.zig +3 -0
  95. package/compiler_rt.zig +5 -26
  96. package/docs/main.js +8 -8
  97. package/docs/wasm/Walk.zig +1 -3
  98. package/docs/wasm/html_render.zig +1 -2
  99. package/docs/wasm/markdown/Document.zig +3 -3
  100. package/docs/wasm/markdown/Parser.zig +19 -23
  101. package/fuzzer.zig +5 -3
  102. package/include/__clang_spirv_builtins.h +12 -12
  103. package/include/__float_float.h +176 -0
  104. package/include/__float_header_macro.h +12 -0
  105. package/include/__float_infinity_nan.h +20 -0
  106. package/include/amo.h +131 -0
  107. package/include/amxavx512intrin.h +215 -1
  108. package/include/amxintrin.h +0 -2
  109. package/include/arm_acle.h +37 -27
  110. package/include/arm_neon.h +218 -82
  111. package/include/arm_sme.h +8 -8
  112. package/include/arm_sve.h +4162 -3782
  113. package/include/avx10_2_512bf16intrin.h +19 -12
  114. package/include/avx10_2_512convertintrin.h +1 -1
  115. package/include/avx10_2_512niintrin.h +31 -31
  116. package/include/avx10_2_512satcvtdsintrin.h +1 -1
  117. package/include/avx10_2bf16intrin.h +54 -45
  118. package/include/avx10_2convertintrin.h +2 -2
  119. package/include/avx10_2copyintrin.h +1 -1
  120. package/include/avx10_2niintrin.h +14 -14
  121. package/include/avx10_2satcvtdsintrin.h +2 -2
  122. package/include/avx2intrin.h +275 -377
  123. package/include/avx512bf16intrin.h +25 -16
  124. package/include/avx512bitalgintrin.h +19 -30
  125. package/include/avx512bwintrin.h +386 -505
  126. package/include/avx512cdintrin.h +42 -55
  127. package/include/avx512dqintrin.h +132 -161
  128. package/include/avx512fintrin.h +1015 -1424
  129. package/include/avx512fp16intrin.h +112 -110
  130. package/include/avx512ifmaintrin.h +32 -34
  131. package/include/avx512ifmavlintrin.h +73 -46
  132. package/include/avx512vbmi2intrin.h +43 -32
  133. package/include/avx512vbmiintrin.h +19 -27
  134. package/include/avx512vbmivlintrin.h +35 -49
  135. package/include/avx512vlbf16intrin.h +32 -22
  136. package/include/avx512vlbitalgintrin.h +37 -53
  137. package/include/avx512vlbwintrin.h +470 -573
  138. package/include/avx512vlcdintrin.h +74 -102
  139. package/include/avx512vldqintrin.h +110 -127
  140. package/include/avx512vlfp16intrin.h +130 -111
  141. package/include/avx512vlintrin.h +945 -1299
  142. package/include/avx512vlvbmi2intrin.h +78 -63
  143. package/include/avx512vlvnniintrin.h +21 -18
  144. package/include/avx512vlvp2intersectintrin.h +2 -2
  145. package/include/avx512vnniintrin.h +10 -10
  146. package/include/avx512vp2intersectintrin.h +1 -2
  147. package/include/avx512vpopcntdqintrin.h +8 -10
  148. package/include/avx512vpopcntdqvlintrin.h +17 -15
  149. package/include/avxifmaintrin.h +16 -0
  150. package/include/avxintrin.h +165 -241
  151. package/include/avxvnniint16intrin.h +118 -99
  152. package/include/avxvnniint8intrin.h +56 -32
  153. package/include/avxvnniintrin.h +16 -8
  154. package/include/cpuid.h +101 -4
  155. package/include/emmintrin.h +168 -168
  156. package/include/f16cintrin.h +23 -9
  157. package/include/float.h +16 -155
  158. package/include/fma4intrin.h +98 -96
  159. package/include/fmaintrin.h +96 -66
  160. package/include/gfniintrin.h +21 -16
  161. package/include/hexagon_types.h +23 -20
  162. package/include/hvx_hexagon_protos.h +649 -860
  163. package/include/immintrin.h +0 -12
  164. package/include/intrin.h +4 -0
  165. package/include/lasxintrin.h +113 -0
  166. package/include/llvm_libc_wrappers/assert.h +3 -5
  167. package/include/llvm_libc_wrappers/ctype.h +3 -115
  168. package/include/llvm_libc_wrappers/inttypes.h +3 -5
  169. package/include/llvm_libc_wrappers/stdio.h +10 -38
  170. package/include/llvm_libc_wrappers/stdlib.h +3 -24
  171. package/include/llvm_libc_wrappers/string.h +2 -70
  172. package/include/llvm_libc_wrappers/time.h +4 -10
  173. package/include/mmintrin.h +188 -257
  174. package/include/module.modulemap +23 -4
  175. package/include/movrs_avx10_2_512intrin.h +2 -2
  176. package/include/movrs_avx10_2intrin.h +4 -4
  177. package/include/pmmintrin.h +12 -24
  178. package/include/ptrauth.h +16 -2
  179. package/include/riscv_mips.h +34 -0
  180. package/include/riscv_nds.h +89 -0
  181. package/include/sifive_vector.h +58 -2
  182. package/include/sm4evexintrin.h +2 -2
  183. package/include/smmintrin.h +77 -59
  184. package/include/spirvintrin.h +194 -0
  185. package/include/stddefer.h +19 -0
  186. package/include/tmmintrin.h +116 -147
  187. package/include/vaesintrin.h +1 -2
  188. package/include/xmmintrin.h +44 -70
  189. package/include/xopintrin.h +20 -10
  190. package/init/build.zig +1 -3
  191. package/libc/darwin/SDKSettings.json +1 -1
  192. package/libc/darwin/libSystem.tbd +88 -87
  193. package/libc/include/aarch64-linux-any/asm/hwcap.h +1 -0
  194. package/libc/include/aarch64-linux-any/asm/unistd_64.h +1 -0
  195. package/libc/include/aarch64-netbsd-none/aarch64/armreg.h +259 -22
  196. package/libc/include/aarch64-netbsd-none/aarch64/byte_swap.h +3 -2
  197. package/libc/include/aarch64-netbsd-none/aarch64/cpu.h +26 -1
  198. package/libc/include/aarch64-netbsd-none/aarch64/lwp_private.h +3 -0
  199. package/libc/include/aarch64-netbsd-none/aarch64/pmap.h +7 -33
  200. package/libc/include/aarch64-netbsd-none/aarch64/sljit_machdep.h +1 -1
  201. package/libc/include/aarch64-netbsd-none/aarch64/vmparam.h +4 -4
  202. package/libc/include/aarch64-netbsd-none/machine/armreg.h +259 -22
  203. package/libc/include/aarch64-netbsd-none/machine/byte_swap.h +3 -2
  204. package/libc/include/aarch64-netbsd-none/machine/cpu.h +26 -1
  205. package/libc/include/aarch64-netbsd-none/machine/lwp_private.h +3 -0
  206. package/libc/include/aarch64-netbsd-none/machine/pmap.h +7 -33
  207. package/libc/include/aarch64-netbsd-none/machine/sljit_machdep.h +1 -1
  208. package/libc/include/aarch64-netbsd-none/machine/vmparam.h +4 -4
  209. package/libc/include/aarch64-openbsd-none/arm64/cpu.h +7 -1
  210. package/libc/include/aarch64-openbsd-none/arm64/intr.h +9 -1
  211. package/libc/include/aarch64-openbsd-none/machine/cpu.h +7 -1
  212. package/libc/include/aarch64-openbsd-none/machine/intr.h +9 -1
  213. package/libc/include/any-darwin-any/AvailabilityInternal.h +10 -10
  214. package/libc/include/any-darwin-any/AvailabilityVersions.h +8 -0
  215. package/libc/include/any-darwin-any/mach/host_info.h +3 -1
  216. package/libc/include/any-darwin-any/mach/mach_voucher_types.h +2 -0
  217. package/libc/include/any-darwin-any/mach/vm_statistics.h +33 -2
  218. package/libc/include/any-darwin-any/spawn.h +3 -1
  219. package/libc/include/any-darwin-any/sys/_symbol_aliasing.h +12 -0
  220. package/libc/include/any-linux-any/asm-generic/errno.h +2 -0
  221. package/libc/include/any-linux-any/asm-generic/unistd.h +4 -1
  222. package/libc/include/any-linux-any/drm/amdgpu_drm.h +20 -6
  223. package/libc/include/any-linux-any/drm/amdxdna_accel.h +8 -0
  224. package/libc/include/any-linux-any/drm/drm_fourcc.h +6 -6
  225. package/libc/include/any-linux-any/drm/panfrost_drm.h +75 -1
  226. package/libc/include/any-linux-any/drm/panthor_drm.h +154 -3
  227. package/libc/include/any-linux-any/drm/rocket_accel.h +74 -24
  228. package/libc/include/any-linux-any/drm/xe_drm.h +89 -6
  229. package/libc/include/any-linux-any/linux/android/binder.h +1 -1
  230. package/libc/include/any-linux-any/linux/bpf.h +28 -0
  231. package/libc/include/any-linux-any/linux/btrfs.h +1 -0
  232. package/libc/include/any-linux-any/linux/btrfs_tree.h +32 -2
  233. package/libc/include/any-linux-any/linux/dma-buf.h +1 -0
  234. package/libc/include/any-linux-any/linux/dpll.h +1 -0
  235. package/libc/include/any-linux-any/linux/elf.h +2 -0
  236. package/libc/include/any-linux-any/linux/ethtool.h +21 -5
  237. package/libc/include/any-linux-any/linux/fs.h +1 -0
  238. package/libc/include/any-linux-any/linux/hyperv.h +1 -1
  239. package/libc/include/any-linux-any/linux/idxd.h +134 -134
  240. package/libc/include/any-linux-any/linux/if_alg.h +1 -1
  241. package/libc/include/any-linux-any/linux/if_link.h +1 -0
  242. package/libc/include/any-linux-any/linux/input-event-codes.h +4 -0
  243. package/libc/include/any-linux-any/linux/io_uring/bpf_filter.h +68 -0
  244. package/libc/include/any-linux-any/linux/io_uring/query.h +5 -1
  245. package/libc/include/any-linux-any/linux/io_uring.h +33 -2
  246. package/libc/include/any-linux-any/linux/iommufd.h +39 -0
  247. package/libc/include/any-linux-any/linux/kfd_ioctl.h +13 -3
  248. package/libc/include/any-linux-any/linux/kfd_sysfs.h +2 -1
  249. package/libc/include/any-linux-any/linux/kvm.h +30 -6
  250. package/libc/include/any-linux-any/linux/landlock.h +22 -8
  251. package/libc/include/any-linux-any/linux/magic.h +1 -0
  252. package/libc/include/any-linux-any/linux/mempolicy.h +3 -0
  253. package/libc/include/any-linux-any/linux/mount.h +11 -2
  254. package/libc/include/any-linux-any/linux/mptcp_pm.h +1 -1
  255. package/libc/include/any-linux-any/linux/mshv.h +2 -0
  256. package/libc/include/any-linux-any/linux/netfilter_bridge.h +5 -4
  257. package/libc/include/any-linux-any/linux/netfilter_ipv4.h +4 -5
  258. package/libc/include/any-linux-any/linux/netfilter_ipv6.h +3 -4
  259. package/libc/include/any-linux-any/linux/nfs.h +1 -1
  260. package/libc/include/any-linux-any/linux/nfsd_netlink.h +1 -0
  261. package/libc/include/any-linux-any/linux/nilfs2_api.h +2 -2
  262. package/libc/include/any-linux-any/linux/nilfs2_ondisk.h +97 -66
  263. package/libc/include/any-linux-any/linux/nl80211.h +104 -3
  264. package/libc/include/any-linux-any/linux/pci.h +7 -0
  265. package/libc/include/any-linux-any/linux/pci_regs.h +65 -6
  266. package/libc/include/any-linux-any/linux/pcitest.h +1 -0
  267. package/libc/include/any-linux-any/linux/perf_event.h +24 -3
  268. package/libc/include/any-linux-any/linux/pkt_sched.h +1 -0
  269. package/libc/include/any-linux-any/linux/prctl.h +30 -0
  270. package/libc/include/any-linux-any/linux/rseq.h +62 -5
  271. package/libc/include/any-linux-any/linux/shm.h +0 -1
  272. package/libc/include/any-linux-any/linux/stddef.h +4 -0
  273. package/libc/include/any-linux-any/linux/sysctl.h +1 -2
  274. package/libc/include/any-linux-any/linux/taskstats.h +12 -1
  275. package/libc/include/any-linux-any/linux/tcp.h +23 -3
  276. package/libc/include/any-linux-any/linux/typelimits.h +8 -0
  277. package/libc/include/any-linux-any/linux/ublk_cmd.h +120 -1
  278. package/libc/include/any-linux-any/linux/v4l2-controls.h +63 -0
  279. package/libc/include/any-linux-any/linux/vbox_vmmdev_types.h +2 -2
  280. package/libc/include/any-linux-any/linux/vduse.h +80 -5
  281. package/libc/include/any-linux-any/linux/version.h +3 -3
  282. package/libc/include/any-linux-any/linux/vfio.h +4 -0
  283. package/libc/include/any-linux-any/linux/videodev2.h +3 -0
  284. package/libc/include/any-linux-any/linux/virtio_ring.h +1 -2
  285. package/libc/include/any-linux-any/linux/vmclock-abi.h +20 -0
  286. package/libc/include/any-linux-any/rdma/bnxt_re-abi.h +16 -0
  287. package/libc/include/any-linux-any/rdma/ib_user_ioctl_cmds.h +16 -0
  288. package/libc/include/any-linux-any/rdma/mana-abi.h +3 -0
  289. package/libc/include/any-linux-any/scsi/scsi_bsg_ufs.h +8 -9
  290. package/libc/include/any-linux-any/sound/sof/tokens.h +6 -0
  291. package/libc/include/arc-linux-any/asm/swab.h +0 -63
  292. package/libc/include/arc-linux-any/asm/unistd_32.h +1 -0
  293. package/libc/include/arm-linux-any/asm/ptrace.h +0 -9
  294. package/libc/include/arm-linux-any/asm/unistd-eabi.h +1 -0
  295. package/libc/include/arm-linux-any/asm/unistd-oabi.h +1 -0
  296. package/libc/include/arm-netbsd-eabi/float.h +2 -1
  297. package/libc/include/arm-netbsd-eabi/machine/asm.h +48 -19
  298. package/libc/include/arm-netbsd-eabi/machine/byte_swap.h +121 -0
  299. package/libc/include/arm-netbsd-eabi/machine/cpu.h +1 -3
  300. package/libc/include/arm-netbsd-eabi/machine/float.h +2 -1
  301. package/libc/include/arm-netbsd-eabi/machine/lwp_private.h +81 -0
  302. package/libc/include/arm-netbsd-eabi/machine/mcontext.h +5 -51
  303. package/libc/include/arm-netbsd-eabi/machine/mutex.h +1 -1
  304. package/libc/include/arm-netbsd-eabi/machine/proc.h +2 -2
  305. package/libc/include/arm-netbsd-eabi/machine/profile.h +28 -96
  306. package/libc/include/arm-netbsd-eabi/machine/setjmp.h +7 -6
  307. package/libc/include/arm-netbsd-eabi/machine/sysarch.h +85 -0
  308. package/libc/include/csky-linux-any/asm/unistd_32.h +1 -0
  309. package/libc/include/generic-netbsd/altq/altq.h +2 -2
  310. package/libc/include/generic-netbsd/altq/altq_afmap.h +2 -1
  311. package/libc/include/generic-netbsd/altq/altq_classq.h +8 -6
  312. package/libc/include/generic-netbsd/altq/altq_jobs.h +37 -37
  313. package/libc/include/generic-netbsd/altq/altq_rmclass.h +8 -8
  314. package/libc/include/generic-netbsd/altq/altq_var.h +2 -2
  315. package/libc/include/generic-netbsd/arm/arm32/pmap.h +8 -32
  316. package/libc/include/generic-netbsd/arm/arm32/vmparam.h +5 -5
  317. package/libc/include/generic-netbsd/arm/asm.h +48 -19
  318. package/libc/include/generic-netbsd/arm/byte_swap.h +2 -2
  319. package/libc/include/generic-netbsd/arm/cpu.h +1 -3
  320. package/libc/include/generic-netbsd/arm/cputypes.h +12 -1
  321. package/libc/include/generic-netbsd/arm/float.h +2 -1
  322. package/libc/include/generic-netbsd/arm/lwp_private.h +81 -0
  323. package/libc/include/generic-netbsd/arm/mcontext.h +5 -51
  324. package/libc/include/generic-netbsd/arm/mutex.h +1 -1
  325. package/libc/include/generic-netbsd/arm/proc.h +2 -2
  326. package/libc/include/generic-netbsd/arm/profile.h +28 -96
  327. package/libc/include/generic-netbsd/arm/setjmp.h +7 -6
  328. package/libc/include/generic-netbsd/arpa/nameser.h +3 -3
  329. package/libc/include/generic-netbsd/arpa/nameser_compat.h +3 -3
  330. package/libc/include/generic-netbsd/assert.h +12 -22
  331. package/libc/include/generic-netbsd/bitstring.h +5 -5
  332. package/libc/include/generic-netbsd/cdbw.h +2 -2
  333. package/libc/include/generic-netbsd/crypto/cryptodev.h +99 -92
  334. package/libc/include/generic-netbsd/dev/i2c/emcfaninfo.h +234 -0
  335. package/libc/include/generic-netbsd/dev/i2c/emcfanreg.h +127 -0
  336. package/libc/include/generic-netbsd/dev/i2o/i2o.h +3 -366
  337. package/libc/include/generic-netbsd/dev/ic/hd44780var.h +3 -1
  338. package/libc/include/generic-netbsd/dev/ic/scmdreg.h +2 -2
  339. package/libc/include/generic-netbsd/dev/ic/stireg.h +777 -0
  340. package/libc/include/generic-netbsd/dev/ic/summitreg.h +214 -0
  341. package/libc/include/generic-netbsd/dev/iscsi/iscsi.h +1 -1
  342. package/libc/include/generic-netbsd/dev/pci/amrreg.h +2 -2
  343. package/libc/include/generic-netbsd/dev/pci/mlyreg.h +2 -2
  344. package/libc/include/generic-netbsd/dev/pci/pcidevs.h +177 -22
  345. package/libc/include/generic-netbsd/dev/pci/pcidevs_data.h +14971 -14588
  346. package/libc/include/generic-netbsd/dev/pci/pcireg.h +14 -14
  347. package/libc/include/generic-netbsd/dev/pckbc/pckbdreg.h +2 -1
  348. package/libc/include/generic-netbsd/dev/pcmcia/if_rayreg.h +2 -2
  349. package/libc/include/generic-netbsd/dev/raidframe/raidframeio.h +1 -1
  350. package/libc/include/generic-netbsd/dev/scsipi/scsi_disk.h +42 -7
  351. package/libc/include/generic-netbsd/dev/scsipi/scsi_spc.h +2 -2
  352. package/libc/include/generic-netbsd/dev/scsipi/scsipi_all.h +83 -2
  353. package/libc/include/generic-netbsd/dev/scsipi/scsipiconf.h +3 -1
  354. package/libc/include/generic-netbsd/dev/tc/sfbreg.h +3 -3
  355. package/libc/include/generic-netbsd/dev/tc/sticio.h +2 -2
  356. package/libc/include/generic-netbsd/dev/usb/umcpmio_hid_reports.h +499 -0
  357. package/libc/include/generic-netbsd/dev/usb/umcpmio_io.h +45 -0
  358. package/libc/include/generic-netbsd/dev/usb/usb.h +44 -6
  359. package/libc/include/generic-netbsd/dev/vndvar.h +2 -2
  360. package/libc/include/generic-netbsd/dev/wscons/wsconsio.h +19 -1
  361. package/libc/include/generic-netbsd/dev/wscons/wsksymdef.h +2 -2
  362. package/libc/include/generic-netbsd/dirent.h +1 -1
  363. package/libc/include/generic-netbsd/dlfcn.h +4 -2
  364. package/libc/include/generic-netbsd/elf.h +32 -20
  365. package/libc/include/generic-netbsd/elfdefinitions.h +1 -1
  366. package/libc/include/generic-netbsd/evbarm/intr.h +1 -1
  367. package/libc/include/generic-netbsd/evbmips/lwp_private.h +3 -0
  368. package/libc/include/generic-netbsd/execinfo.h +4 -2
  369. package/libc/include/generic-netbsd/fcntl.h +26 -2
  370. package/libc/include/generic-netbsd/float.h +58 -2
  371. package/libc/include/generic-netbsd/fmtmsg.h +2 -2
  372. package/libc/include/generic-netbsd/fs/hfs/libhfs.h +1 -1
  373. package/libc/include/generic-netbsd/fs/nilfs/nilfs_fs.h +2 -2
  374. package/libc/include/generic-netbsd/gelf.h +2 -2
  375. package/libc/include/generic-netbsd/i386/asm.h +12 -4
  376. package/libc/include/generic-netbsd/i386/byte_swap.h +2 -2
  377. package/libc/include/generic-netbsd/i386/cpu.h +15 -4
  378. package/libc/include/generic-netbsd/i386/elf_machdep.h +2 -1
  379. package/libc/include/generic-netbsd/i386/lwp_private.h +3 -0
  380. package/libc/include/generic-netbsd/i386/mcontext.h +6 -24
  381. package/libc/include/generic-netbsd/i386/param.h +9 -1
  382. package/libc/include/generic-netbsd/i386/pcb.h +6 -2
  383. package/libc/include/generic-netbsd/i386/ptrace.h +2 -2
  384. package/libc/include/generic-netbsd/i386/types.h +2 -1
  385. package/libc/include/generic-netbsd/i386/wchar_limits.h +1 -1
  386. package/libc/include/generic-netbsd/isofs/cd9660/cd9660_extern.h +6 -1
  387. package/libc/include/generic-netbsd/isofs/cd9660/cd9660_mount.h +7 -1
  388. package/libc/include/generic-netbsd/langinfo.h +2 -1
  389. package/libc/include/generic-netbsd/lauxlib.h +1 -1
  390. package/libc/include/generic-netbsd/libelf.h +6 -15
  391. package/libc/include/generic-netbsd/limits.h +1 -1
  392. package/libc/include/generic-netbsd/lua.h +1 -1
  393. package/libc/include/generic-netbsd/luaconf.h +1 -1
  394. package/libc/include/generic-netbsd/lualib.h +1 -1
  395. package/libc/include/generic-netbsd/lwp.h +1 -1
  396. package/libc/include/generic-netbsd/machine/ansi.h +2 -2
  397. package/libc/include/generic-netbsd/machine/aout_machdep.h +39 -2
  398. package/libc/include/generic-netbsd/machine/arm32/pmap.h +8 -32
  399. package/libc/include/generic-netbsd/machine/arm32/vmparam.h +5 -5
  400. package/libc/include/generic-netbsd/machine/asm.h +271 -2
  401. package/libc/include/generic-netbsd/machine/bswap.h +9 -1
  402. package/libc/include/generic-netbsd/machine/byte_swap.h +42 -64
  403. package/libc/include/generic-netbsd/machine/cdefs.h +7 -2
  404. package/libc/include/generic-netbsd/machine/cpu.h +207 -30
  405. package/libc/include/generic-netbsd/machine/cputypes.h +12 -1
  406. package/libc/include/generic-netbsd/machine/disklabel.h +41 -42
  407. package/libc/include/generic-netbsd/machine/elf_machdep.h +143 -2
  408. package/libc/include/generic-netbsd/machine/endian.h +1 -1
  409. package/libc/include/generic-netbsd/machine/fenv.h +35 -2
  410. package/libc/include/generic-netbsd/machine/float.h +58 -2
  411. package/libc/include/generic-netbsd/machine/frame.h +129 -2
  412. package/libc/include/generic-netbsd/machine/ieee.h +3 -2
  413. package/libc/include/generic-netbsd/machine/ieeefp.h +43 -2
  414. package/libc/include/generic-netbsd/machine/int_const.h +32 -2
  415. package/libc/include/generic-netbsd/machine/int_fmtio.h +380 -2
  416. package/libc/include/generic-netbsd/machine/int_limits.h +2 -2
  417. package/libc/include/generic-netbsd/machine/int_mwgwtypes.h +2 -2
  418. package/libc/include/generic-netbsd/machine/int_types.h +2 -2
  419. package/libc/include/generic-netbsd/machine/kcore.h +39 -2
  420. package/libc/include/generic-netbsd/machine/limits.h +2 -2
  421. package/libc/include/generic-netbsd/machine/lock.h +2 -2
  422. package/libc/include/generic-netbsd/machine/lwp_private.h +83 -0
  423. package/libc/include/generic-netbsd/machine/math.h +3 -2
  424. package/libc/include/generic-netbsd/machine/mcontext.h +149 -2
  425. package/libc/include/generic-netbsd/machine/mutex.h +127 -2
  426. package/libc/include/generic-netbsd/machine/param.h +90 -23
  427. package/libc/include/generic-netbsd/machine/pcb.h +54 -2
  428. package/libc/include/generic-netbsd/machine/pmap.h +262 -2
  429. package/libc/include/generic-netbsd/machine/proc.h +75 -2
  430. package/libc/include/generic-netbsd/machine/profile.h +116 -2
  431. package/libc/include/generic-netbsd/machine/psl.h +2 -2
  432. package/libc/include/generic-netbsd/machine/pte.h +346 -2
  433. package/libc/include/generic-netbsd/machine/ptrace.h +62 -2
  434. package/libc/include/generic-netbsd/machine/reg.h +124 -2
  435. package/libc/include/generic-netbsd/machine/reloc.h +2 -2
  436. package/libc/include/generic-netbsd/machine/setjmp.h +69 -2
  437. package/libc/include/generic-netbsd/machine/signal.h +39 -2
  438. package/libc/include/generic-netbsd/machine/sljit_machdep.h +1 -1
  439. package/libc/include/generic-netbsd/machine/sysarch.h +2 -84
  440. package/libc/include/generic-netbsd/machine/sysreg.h +354 -0
  441. package/libc/include/generic-netbsd/machine/trap.h +2 -2
  442. package/libc/include/generic-netbsd/machine/types.h +118 -6
  443. package/libc/include/generic-netbsd/machine/vmparam.h +235 -2
  444. package/libc/include/generic-netbsd/machine/wchar_limits.h +2 -2
  445. package/libc/include/generic-netbsd/math.h +19 -6
  446. package/libc/include/generic-netbsd/md2.h +6 -3
  447. package/libc/include/generic-netbsd/mips/asm.h +69 -17
  448. package/libc/include/generic-netbsd/mips/bswap.h +3 -1
  449. package/libc/include/generic-netbsd/mips/cpu.h +7 -7
  450. package/libc/include/generic-netbsd/mips/elf_machdep.h +2 -1
  451. package/libc/include/generic-netbsd/mips/fenv.h +2 -1
  452. package/libc/include/generic-netbsd/mips/float.h +3 -2
  453. package/libc/include/generic-netbsd/mips/frame.h +3 -2
  454. package/libc/include/generic-netbsd/mips/limits.h +4 -13
  455. package/libc/include/generic-netbsd/mips/lwp_private.h +87 -0
  456. package/libc/include/generic-netbsd/mips/mcontext.h +2 -53
  457. package/libc/include/generic-netbsd/mips/mips3_pte.h +2 -2
  458. package/libc/include/generic-netbsd/mips/mips_param.h +16 -2
  459. package/libc/include/generic-netbsd/mips/mutex.h +1 -1
  460. package/libc/include/generic-netbsd/mips/types.h +1 -1
  461. package/libc/include/generic-netbsd/mips/vmparam.h +1 -1
  462. package/libc/include/generic-netbsd/miscfs/kernfs/kernfs.h +2 -2
  463. package/libc/include/generic-netbsd/miscfs/procfs/procfs.h +33 -2
  464. package/libc/include/generic-netbsd/miscfs/specfs/specdev.h +1 -2
  465. package/libc/include/generic-netbsd/monetary.h +2 -1
  466. package/libc/include/generic-netbsd/net/agr/if_agrioctl.h +2 -2
  467. package/libc/include/generic-netbsd/net/bpf.h +11 -4
  468. package/libc/include/generic-netbsd/net/bpfdesc.h +1 -1
  469. package/libc/include/generic-netbsd/net/dlt.h +222 -48
  470. package/libc/include/generic-netbsd/net/if.h +20 -5
  471. package/libc/include/generic-netbsd/net/if_bridgevar.h +2 -3
  472. package/libc/include/generic-netbsd/net/if_ether.h +4 -3
  473. package/libc/include/generic-netbsd/net/if_lagg.h +2 -2
  474. package/libc/include/generic-netbsd/net/if_media.h +2 -2
  475. package/libc/include/generic-netbsd/net/if_ppp.h +1 -3
  476. package/libc/include/generic-netbsd/net/if_stats.h +19 -5
  477. package/libc/include/generic-netbsd/net/net_stats.h +13 -6
  478. package/libc/include/generic-netbsd/net/npf.h +33 -5
  479. package/libc/include/generic-netbsd/net/pfkeyv2.h +1 -1
  480. package/libc/include/generic-netbsd/net/route.h +4 -4
  481. package/libc/include/generic-netbsd/net80211/ieee80211_node.h +3 -2
  482. package/libc/include/generic-netbsd/net80211/ieee80211_var.h +2 -2
  483. package/libc/include/generic-netbsd/netbt/hci.h +3 -3
  484. package/libc/include/generic-netbsd/netdb.h +2 -2
  485. package/libc/include/generic-netbsd/netinet/icmp6.h +6 -2
  486. package/libc/include/generic-netbsd/netinet/in.h +17 -17
  487. package/libc/include/generic-netbsd/netinet/in_var.h +5 -9
  488. package/libc/include/generic-netbsd/netinet/ip_mroute.h +24 -28
  489. package/libc/include/generic-netbsd/netinet/ip_var.h +2 -2
  490. package/libc/include/generic-netbsd/netinet/sctp.h +4 -4
  491. package/libc/include/generic-netbsd/netinet/tcp_var.h +2 -2
  492. package/libc/include/generic-netbsd/netinet/tcp_vtw.h +2 -2
  493. package/libc/include/generic-netbsd/netinet6/in6_var.h +7 -33
  494. package/libc/include/generic-netbsd/netinet6/ip6_var.h +2 -2
  495. package/libc/include/generic-netbsd/nfs/krpc.h +9 -4
  496. package/libc/include/generic-netbsd/nfs/nfs.h +5 -3
  497. package/libc/include/generic-netbsd/nfs/nfsdiskless.h +37 -20
  498. package/libc/include/generic-netbsd/nfs/nfsm_subs.h +4 -7
  499. package/libc/include/generic-netbsd/nfs/nfsmount.h +3 -4
  500. package/libc/include/generic-netbsd/nfs/nfsnode.h +9 -6
  501. package/libc/include/generic-netbsd/nfs/nfsproto.h +5 -2
  502. package/libc/include/generic-netbsd/nfs/nfsrtt.h +8 -4
  503. package/libc/include/generic-netbsd/nfs/nfsrvcache.h +9 -3
  504. package/libc/include/generic-netbsd/nfs/rpcv2.h +5 -3
  505. package/libc/include/generic-netbsd/nfs/xdr_subs.h +6 -5
  506. package/libc/include/generic-netbsd/nl_types.h +3 -1
  507. package/libc/include/generic-netbsd/ntfs/ntfs_inode.h +2 -2
  508. package/libc/include/generic-netbsd/poll.h +8 -2
  509. package/libc/include/generic-netbsd/prop/prop_object.h +48 -3
  510. package/libc/include/generic-netbsd/protocols/talkd.h +2 -2
  511. package/libc/include/generic-netbsd/pthread.h +51 -12
  512. package/libc/include/generic-netbsd/regex.h +2 -1
  513. package/libc/include/generic-netbsd/riscv/ansi.h +3 -0
  514. package/libc/include/generic-netbsd/riscv/aout_machdep.h +40 -0
  515. package/libc/include/generic-netbsd/riscv/asm.h +272 -0
  516. package/libc/include/generic-netbsd/riscv/bswap.h +11 -0
  517. package/libc/include/generic-netbsd/riscv/byte_swap.h +99 -0
  518. package/libc/include/generic-netbsd/riscv/cdefs.h +8 -0
  519. package/libc/include/generic-netbsd/riscv/cpu.h +242 -0
  520. package/libc/include/generic-netbsd/riscv/disklabel.h +68 -0
  521. package/libc/include/generic-netbsd/riscv/elf_machdep.h +144 -0
  522. package/libc/include/generic-netbsd/riscv/endian.h +3 -0
  523. package/libc/include/generic-netbsd/riscv/endian_machdep.h +3 -0
  524. package/libc/include/generic-netbsd/riscv/fenv.h +36 -0
  525. package/libc/include/generic-netbsd/riscv/float.h +59 -0
  526. package/libc/include/generic-netbsd/riscv/ieee.h +4 -0
  527. package/libc/include/generic-netbsd/riscv/ieeefp.h +44 -0
  528. package/libc/include/generic-netbsd/riscv/int_const.h +33 -0
  529. package/libc/include/generic-netbsd/riscv/int_fmtio.h +381 -0
  530. package/libc/include/generic-netbsd/riscv/int_limits.h +3 -0
  531. package/libc/include/generic-netbsd/riscv/int_mwgwtypes.h +3 -0
  532. package/libc/include/generic-netbsd/riscv/int_types.h +3 -0
  533. package/libc/include/generic-netbsd/riscv/kcore.h +40 -0
  534. package/libc/include/generic-netbsd/riscv/limits.h +3 -0
  535. package/libc/include/generic-netbsd/riscv/lock.h +3 -0
  536. package/libc/include/generic-netbsd/riscv/lwp_private.h +83 -0
  537. package/libc/include/generic-netbsd/riscv/math.h +4 -0
  538. package/libc/include/generic-netbsd/riscv/mcontext.h +150 -0
  539. package/libc/include/generic-netbsd/riscv/mutex.h +128 -0
  540. package/libc/include/generic-netbsd/riscv/param.h +110 -0
  541. package/libc/include/generic-netbsd/riscv/pcb.h +55 -0
  542. package/libc/include/generic-netbsd/riscv/pmap.h +263 -0
  543. package/libc/include/generic-netbsd/riscv/proc.h +76 -0
  544. package/libc/include/generic-netbsd/riscv/profile.h +117 -0
  545. package/libc/include/generic-netbsd/riscv/pte.h +347 -0
  546. package/libc/include/generic-netbsd/riscv/ptrace.h +63 -0
  547. package/libc/include/generic-netbsd/riscv/reg.h +125 -0
  548. package/libc/include/generic-netbsd/riscv/rwlock.h +1 -0
  549. package/libc/include/generic-netbsd/riscv/setjmp.h +70 -0
  550. package/libc/include/generic-netbsd/riscv/signal.h +40 -0
  551. package/libc/include/generic-netbsd/riscv/sysarch.h +3 -0
  552. package/libc/include/generic-netbsd/riscv/sysreg.h +354 -0
  553. package/libc/include/generic-netbsd/riscv/types.h +123 -0
  554. package/libc/include/generic-netbsd/riscv/vmparam.h +236 -0
  555. package/libc/include/generic-netbsd/riscv/wchar_limits.h +13 -0
  556. package/libc/include/generic-netbsd/rmd160.h +3 -3
  557. package/libc/include/generic-netbsd/rpc/xdr.h +3 -3
  558. package/libc/include/generic-netbsd/rpcsvc/yp_prot.h +3 -2
  559. package/libc/include/generic-netbsd/rump/rump_namei.h +2 -2
  560. package/libc/include/generic-netbsd/rump/rump_syscalls.h +4 -4
  561. package/libc/include/generic-netbsd/rump/rumpuser.h +6 -1
  562. package/libc/include/generic-netbsd/rump/rumpvnode_if.h +2 -2
  563. package/libc/include/generic-netbsd/sha1.h +3 -3
  564. package/libc/include/generic-netbsd/sha2.h +8 -1
  565. package/libc/include/generic-netbsd/signal.h +4 -4
  566. package/libc/include/generic-netbsd/sparc/asm.h +10 -1
  567. package/libc/include/generic-netbsd/sparc/bswap.h +9 -1
  568. package/libc/include/generic-netbsd/sparc/cgtworeg.h +2 -2
  569. package/libc/include/generic-netbsd/sparc/cpu.h +1 -1
  570. package/libc/include/generic-netbsd/sparc/float.h +3 -1
  571. package/libc/include/generic-netbsd/sparc/limits.h +4 -6
  572. package/libc/include/generic-netbsd/sparc/lwp_private.h +51 -0
  573. package/libc/include/generic-netbsd/sparc/mcontext.h +4 -22
  574. package/libc/include/generic-netbsd/sparc/mutex.h +1 -1
  575. package/libc/include/generic-netbsd/sparc/param.h +4 -2
  576. package/libc/include/generic-netbsd/sparc/pmap.h +2 -2
  577. package/libc/include/generic-netbsd/sparc/psl.h +6 -3
  578. package/libc/include/generic-netbsd/sparc/types.h +2 -2
  579. package/libc/include/generic-netbsd/sparc64/bswap.h +9 -1
  580. package/libc/include/generic-netbsd/sparc64/cpu.h +2 -2
  581. package/libc/include/generic-netbsd/sparc64/ctlreg.h +8 -7
  582. package/libc/include/generic-netbsd/sparc64/intr.h +1 -1
  583. package/libc/include/generic-netbsd/sparc64/lwp_private.h +3 -0
  584. package/libc/include/generic-netbsd/sparc64/mcontext.h +4 -4
  585. package/libc/include/generic-netbsd/sparc64/mutex.h +1 -1
  586. package/libc/include/generic-netbsd/sparc64/param.h +8 -2
  587. package/libc/include/generic-netbsd/sparc64/psl.h +7 -2
  588. package/libc/include/generic-netbsd/sparc64/pte.h +2 -2
  589. package/libc/include/generic-netbsd/sparc64/vmparam.h +1 -1
  590. package/libc/include/generic-netbsd/ssp/ssp.h +16 -6
  591. package/libc/include/generic-netbsd/stdalign.h +3 -3
  592. package/libc/include/generic-netbsd/stdarg.h +2 -2
  593. package/libc/include/generic-netbsd/stddef.h +90 -12
  594. package/libc/include/generic-netbsd/stdlib.h +11 -2
  595. package/libc/include/generic-netbsd/stdnoreturn.h +2 -2
  596. package/libc/include/generic-netbsd/string.h +66 -39
  597. package/libc/include/generic-netbsd/strings.h +17 -3
  598. package/libc/include/generic-netbsd/sys/atomic.h +10 -5
  599. package/libc/include/generic-netbsd/sys/bitops.h +2 -2
  600. package/libc/include/generic-netbsd/sys/bootblock.h +13 -2
  601. package/libc/include/generic-netbsd/sys/bswap.h +46 -20
  602. package/libc/include/generic-netbsd/sys/buf.h +3 -3
  603. package/libc/include/generic-netbsd/sys/cdefs.h +44 -6
  604. package/libc/include/generic-netbsd/sys/cdefs_aout.h +8 -1
  605. package/libc/include/generic-netbsd/sys/cdefs_elf.h +9 -2
  606. package/libc/include/generic-netbsd/sys/chio.h +2 -2
  607. package/libc/include/generic-netbsd/sys/clock.h +5 -1
  608. package/libc/include/generic-netbsd/sys/common_limits.h +3 -1
  609. package/libc/include/generic-netbsd/sys/condvar.h +1 -1
  610. package/libc/include/generic-netbsd/sys/conf.h +4 -3
  611. package/libc/include/generic-netbsd/sys/container_of.h +75 -0
  612. package/libc/include/generic-netbsd/sys/device.h +20 -13
  613. package/libc/include/generic-netbsd/sys/disk.h +8 -1
  614. package/libc/include/generic-netbsd/sys/disklabel.h +2 -2
  615. package/libc/include/generic-netbsd/sys/disklabel_gpt.h +7 -1
  616. package/libc/include/generic-netbsd/sys/efiio.h +1 -1
  617. package/libc/include/generic-netbsd/sys/elfdefinitions.h +2368 -1591
  618. package/libc/include/generic-netbsd/sys/endian.h +17 -17
  619. package/libc/include/generic-netbsd/sys/evcnt.h +15 -2
  620. package/libc/include/generic-netbsd/sys/event.h +3 -2
  621. package/libc/include/generic-netbsd/sys/exec.h +2 -2
  622. package/libc/include/generic-netbsd/sys/exec_elf.h +32 -20
  623. package/libc/include/generic-netbsd/sys/fcntl.h +26 -2
  624. package/libc/include/generic-netbsd/sys/fd_set.h +3 -3
  625. package/libc/include/generic-netbsd/sys/featuretest.h +24 -6
  626. package/libc/include/generic-netbsd/sys/file.h +18 -6
  627. package/libc/include/generic-netbsd/sys/filedesc.h +8 -4
  628. package/libc/include/generic-netbsd/sys/futex.h +11 -11
  629. package/libc/include/generic-netbsd/sys/ieee754.h +2 -2
  630. package/libc/include/generic-netbsd/sys/ipc.h +2 -2
  631. package/libc/include/generic-netbsd/sys/ipmi.h +4 -2
  632. package/libc/include/generic-netbsd/sys/ksem.h +1 -1
  633. package/libc/include/generic-netbsd/sys/ktrace.h +6 -4
  634. package/libc/include/generic-netbsd/sys/lock.h +2 -2
  635. package/libc/include/generic-netbsd/sys/lua.h +1 -1
  636. package/libc/include/generic-netbsd/sys/lwp.h +25 -92
  637. package/libc/include/generic-netbsd/sys/mbuf.h +15 -13
  638. package/libc/include/generic-netbsd/sys/mman.h +11 -3
  639. package/libc/include/generic-netbsd/sys/mount.h +1 -2
  640. package/libc/include/generic-netbsd/sys/msg.h +3 -3
  641. package/libc/include/generic-netbsd/sys/mutex.h +1 -3
  642. package/libc/include/generic-netbsd/sys/namei.h +32 -17
  643. package/libc/include/generic-netbsd/sys/param.h +11 -8
  644. package/libc/include/generic-netbsd/sys/pipe.h +10 -11
  645. package/libc/include/generic-netbsd/sys/poll.h +8 -2
  646. package/libc/include/generic-netbsd/sys/proc.h +15 -15
  647. package/libc/include/generic-netbsd/sys/ptrace.h +24 -7
  648. package/libc/include/generic-netbsd/sys/ptree.h +2 -1
  649. package/libc/include/generic-netbsd/sys/queue.h +37 -37
  650. package/libc/include/generic-netbsd/sys/rbtree.h +23 -9
  651. package/libc/include/generic-netbsd/sys/resourcevar.h +2 -2
  652. package/libc/include/generic-netbsd/sys/rmd160.h +3 -3
  653. package/libc/include/generic-netbsd/sys/rndio.h +1 -1
  654. package/libc/include/generic-netbsd/sys/rwlock.h +1 -2
  655. package/libc/include/generic-netbsd/sys/sched.h +1 -1
  656. package/libc/include/generic-netbsd/sys/sdt.h +181 -111
  657. package/libc/include/generic-netbsd/sys/sem.h +7 -2
  658. package/libc/include/generic-netbsd/sys/sha1.h +3 -3
  659. package/libc/include/generic-netbsd/sys/sha2.h +8 -1
  660. package/libc/include/generic-netbsd/sys/shm.h +2 -2
  661. package/libc/include/generic-netbsd/sys/siginfo.h +5 -5
  662. package/libc/include/generic-netbsd/sys/signal.h +1 -1
  663. package/libc/include/generic-netbsd/sys/sigtypes.h +4 -4
  664. package/libc/include/generic-netbsd/sys/sleepq.h +14 -27
  665. package/libc/include/generic-netbsd/sys/socket.h +3 -1
  666. package/libc/include/generic-netbsd/sys/socketvar.h +4 -4
  667. package/libc/include/generic-netbsd/sys/stat.h +5 -5
  668. package/libc/include/generic-netbsd/sys/stdalign.h +55 -0
  669. package/libc/include/generic-netbsd/sys/stdarg.h +2 -2
  670. package/libc/include/generic-netbsd/sys/stddef.h +156 -0
  671. package/libc/include/generic-netbsd/sys/swap.h +2 -2
  672. package/libc/include/generic-netbsd/sys/syncobj.h +9 -6
  673. package/libc/include/generic-netbsd/sys/syscall.h +29 -8
  674. package/libc/include/generic-netbsd/sys/syscallargs.h +89 -12
  675. package/libc/include/generic-netbsd/sys/sysctl.h +94 -86
  676. package/libc/include/generic-netbsd/sys/syslimits.h +8 -1
  677. package/libc/include/generic-netbsd/sys/syslog.h +6 -7
  678. package/libc/include/generic-netbsd/sys/time.h +10 -8
  679. package/libc/include/generic-netbsd/sys/tree.h +13 -13
  680. package/libc/include/generic-netbsd/sys/tty.h +2 -2
  681. package/libc/include/generic-netbsd/sys/ttycom.h +7 -1
  682. package/libc/include/generic-netbsd/sys/types.h +1 -1
  683. package/libc/include/generic-netbsd/sys/ucontext.h +46 -49
  684. package/libc/include/generic-netbsd/sys/un.h +12 -4
  685. package/libc/include/generic-netbsd/sys/unistd.h +103 -102
  686. package/libc/include/generic-netbsd/sys/unpcb.h +2 -2
  687. package/libc/include/generic-netbsd/sys/vmmeter.h +1 -39
  688. package/libc/include/generic-netbsd/sys/vnode_if.h +2 -2
  689. package/libc/include/generic-netbsd/sys/vnode_impl.h +6 -3
  690. package/libc/include/generic-netbsd/sys/wapbl_replay.h +2 -2
  691. package/libc/include/generic-netbsd/sys/wchan.h +37 -0
  692. package/libc/include/generic-netbsd/syslog.h +6 -7
  693. package/libc/include/generic-netbsd/time.h +44 -8
  694. package/libc/include/generic-netbsd/tzfile.h +11 -6
  695. package/libc/include/generic-netbsd/uchar.h +1 -1
  696. package/libc/include/generic-netbsd/ucontext.h +2 -1
  697. package/libc/include/generic-netbsd/ufs/ext2fs/ext2fs.h +31 -16
  698. package/libc/include/generic-netbsd/ufs/ext2fs/ext2fs_dir.h +1 -1
  699. package/libc/include/generic-netbsd/ufs/ext2fs/ext2fs_extents.h +5 -5
  700. package/libc/include/generic-netbsd/ufs/ext2fs/ext2fs_extern.h +4 -4
  701. package/libc/include/generic-netbsd/ufs/ffs/ffs_extern.h +1 -1
  702. package/libc/include/generic-netbsd/ufs/ffs/fs.h +3 -3
  703. package/libc/include/generic-netbsd/ufs/ufs/quota2.h +2 -2
  704. package/libc/include/generic-netbsd/unistd.h +11 -5
  705. package/libc/include/generic-netbsd/unwind.h +1 -1
  706. package/libc/include/generic-netbsd/util.h +15 -1
  707. package/libc/include/generic-netbsd/uvm/uvm.h +1 -5
  708. package/libc/include/generic-netbsd/uvm/uvm_extern.h +3 -4
  709. package/libc/include/generic-netbsd/uvm/uvm_object.h +2 -2
  710. package/libc/include/generic-netbsd/uvm/uvm_param.h +1 -1
  711. package/libc/include/generic-netbsd/uvm/uvm_swap.h +14 -3
  712. package/libc/include/generic-netbsd/wchar.h +7 -2
  713. package/libc/include/generic-netbsd/x86/bootinfo.h +4 -1
  714. package/libc/include/generic-netbsd/x86/cpu.h +18 -1
  715. package/libc/include/generic-netbsd/x86/cpu_extended_state.h +3 -1
  716. package/libc/include/generic-netbsd/x86/cpuvar.h +4 -1
  717. package/libc/include/generic-netbsd/x86/float.h +24 -1
  718. package/libc/include/generic-netbsd/x86/ieee.h +11 -7
  719. package/libc/include/generic-netbsd/x86/lwp_private.h +56 -0
  720. package/libc/include/generic-netbsd/x86/mutex.h +1 -1
  721. package/libc/include/generic-netbsd/x86/specialreg.h +111 -23
  722. package/libc/include/generic-openbsd/db.h +1 -7
  723. package/libc/include/generic-openbsd/ddb/db_interface.h +2 -1
  724. package/libc/include/generic-openbsd/fnmatch.h +6 -2
  725. package/libc/include/generic-openbsd/login_cap.h +3 -1
  726. package/libc/include/generic-openbsd/miscfs/fuse/fusefs_node.h +2 -1
  727. package/libc/include/generic-openbsd/net/bpf.h +3 -1
  728. package/libc/include/generic-openbsd/net/hfsc.h +4 -4
  729. package/libc/include/generic-openbsd/net/if.h +5 -1
  730. package/libc/include/generic-openbsd/net/if_bridge.h +48 -1
  731. package/libc/include/generic-openbsd/net/if_etherbridge.h +20 -7
  732. package/libc/include/generic-openbsd/net/if_media.h +26 -1
  733. package/libc/include/generic-openbsd/net/if_pflow.h +71 -20
  734. package/libc/include/generic-openbsd/net/if_pfsync.h +2 -2
  735. package/libc/include/generic-openbsd/net/if_sppp.h +2 -1
  736. package/libc/include/generic-openbsd/net/if_trunk.h +3 -2
  737. package/libc/include/generic-openbsd/net/if_types.h +2 -2
  738. package/libc/include/generic-openbsd/net/if_var.h +34 -12
  739. package/libc/include/generic-openbsd/net/netisr.h +1 -3
  740. package/libc/include/generic-openbsd/net/pfvar.h +154 -1
  741. package/libc/include/generic-openbsd/net/pfvar_priv.h +256 -1
  742. package/libc/include/generic-openbsd/net80211/ieee80211.h +76 -4
  743. package/libc/include/generic-openbsd/net80211/ieee80211_ioctl.h +3 -2
  744. package/libc/include/generic-openbsd/net80211/ieee80211_node.h +48 -2
  745. package/libc/include/generic-openbsd/net80211/ieee80211_proto.h +4 -1
  746. package/libc/include/generic-openbsd/net80211/ieee80211_var.h +18 -2
  747. package/libc/include/generic-openbsd/netinet/if_ether.h +12 -11
  748. package/libc/include/generic-openbsd/netinet/igmp_var.h +17 -3
  749. package/libc/include/generic-openbsd/netinet/in_pcb.h +2 -1
  750. package/libc/include/generic-openbsd/netinet/in_var.h +17 -59
  751. package/libc/include/generic-openbsd/netinet/ip.h +3 -2
  752. package/libc/include/generic-openbsd/netinet/tcp_timer.h +1 -2
  753. package/libc/include/generic-openbsd/netinet6/in6_var.h +15 -29
  754. package/libc/include/generic-openbsd/netinet6/ip6_var.h +1 -2
  755. package/libc/include/generic-openbsd/netinet6/mld6_var.h +17 -4
  756. package/libc/include/generic-openbsd/netinet6/nd6.h +2 -2
  757. package/libc/include/generic-openbsd/pthread.h +2 -2
  758. package/libc/include/generic-openbsd/signal.h +2 -2
  759. package/libc/include/generic-openbsd/sndio.h +6 -12
  760. package/libc/include/generic-openbsd/strings.h +5 -1
  761. package/libc/include/generic-openbsd/sys/device.h +4 -3
  762. package/libc/include/generic-openbsd/sys/disklabel.h +17 -5
  763. package/libc/include/generic-openbsd/sys/dkio.h +3 -5
  764. package/libc/include/generic-openbsd/sys/filedesc.h +3 -2
  765. package/libc/include/generic-openbsd/sys/mbuf.h +1 -1
  766. package/libc/include/generic-openbsd/sys/mman.h +7 -2
  767. package/libc/include/generic-openbsd/sys/mutex.h +10 -7
  768. package/libc/include/generic-openbsd/sys/namei.h +8 -7
  769. package/libc/include/generic-openbsd/sys/param.h +1 -1
  770. package/libc/include/generic-openbsd/sys/pledge.h +1 -3
  771. package/libc/include/generic-openbsd/sys/protosw.h +8 -1
  772. package/libc/include/generic-openbsd/sys/ptrace.h +4 -1
  773. package/libc/include/generic-openbsd/sys/sched.h +8 -1
  774. package/libc/include/generic-openbsd/sys/signal.h +4 -2
  775. package/libc/include/generic-openbsd/sys/socketvar.h +2 -1
  776. package/libc/include/generic-openbsd/sys/sockio.h +11 -1
  777. package/libc/include/generic-openbsd/sys/syscall.h +5 -3
  778. package/libc/include/generic-openbsd/sys/syscallargs.h +9 -2
  779. package/libc/include/generic-openbsd/sys/sysctl.h +7 -4
  780. package/libc/include/generic-openbsd/sys/types.h +6 -2
  781. package/libc/include/generic-openbsd/sys/videoio.h +143 -68
  782. package/libc/include/generic-openbsd/sys/xcall.h +2 -2
  783. package/libc/include/generic-openbsd/time.h +2 -2
  784. package/libc/include/generic-openbsd/unistd.h +2 -2
  785. package/libc/include/generic-openbsd/uvm/uvm_anon.h +2 -3
  786. package/libc/include/generic-openbsd/uvm/uvm_extern.h +1 -19
  787. package/libc/include/generic-openbsd/uvm/uvm_pager.h +3 -4
  788. package/libc/include/generic-openbsd/uvm/uvm_pmemrange.h +1 -2
  789. package/libc/include/generic-openbsd/uvm/uvm_swap.h +4 -1
  790. package/libc/include/generic-openbsd/uvm/uvm_vnode.h +3 -4
  791. package/libc/include/generic-openbsd/uvm/uvmexp.h +41 -35
  792. package/libc/include/hexagon-linux-any/asm/unistd_32.h +1 -0
  793. package/libc/include/loongarch-linux-any/asm/hwcap.h +1 -0
  794. package/libc/include/loongarch-linux-any/asm/kvm.h +1 -0
  795. package/libc/include/loongarch-linux-any/asm/kvm_para.h +1 -0
  796. package/libc/include/loongarch-linux-any/asm/unistd_32.h +2 -0
  797. package/libc/include/loongarch-linux-any/asm/unistd_64.h +2 -0
  798. package/libc/include/m68k-linux-any/asm/unistd_32.h +1 -0
  799. package/libc/include/m68k-netbsd-none/m68k/asm.h +11 -2
  800. package/libc/include/m68k-netbsd-none/m68k/bus_dma.h +2 -2
  801. package/libc/include/m68k-netbsd-none/m68k/byte_swap.h +2 -2
  802. package/libc/include/m68k-netbsd-none/m68k/cacheops_30.h +2 -2
  803. package/libc/include/m68k-netbsd-none/m68k/cacheops_40.h +3 -1
  804. package/libc/include/m68k-netbsd-none/m68k/cacheops_60.h +5 -3
  805. package/libc/include/m68k-netbsd-none/m68k/cpu.h +86 -59
  806. package/libc/include/m68k-netbsd-none/m68k/cpuframe.h +5 -5
  807. package/libc/include/m68k-netbsd-none/m68k/fenv.h +6 -4
  808. package/libc/include/m68k-netbsd-none/m68k/float.h +26 -1
  809. package/libc/include/m68k-netbsd-none/m68k/frame.h +31 -19
  810. package/libc/include/m68k-netbsd-none/m68k/ieee.h +13 -8
  811. package/libc/include/m68k-netbsd-none/m68k/ieeefp.h +3 -3
  812. package/libc/include/m68k-netbsd-none/m68k/int_limits.h +2 -2
  813. package/libc/include/m68k-netbsd-none/m68k/intr.h +211 -0
  814. package/libc/include/m68k-netbsd-none/m68k/kcore.h +31 -31
  815. package/libc/include/m68k-netbsd-none/m68k/lwp_private.h +64 -0
  816. package/libc/include/m68k-netbsd-none/m68k/m68k.h +3 -7
  817. package/libc/include/m68k-netbsd-none/m68k/mcontext.h +5 -36
  818. package/libc/include/m68k-netbsd-none/m68k/mmu_30.h +105 -0
  819. package/libc/include/m68k-netbsd-none/m68k/mmu_40.h +232 -0
  820. package/libc/include/m68k-netbsd-none/m68k/mmu_51.h +273 -0
  821. package/libc/include/m68k-netbsd-none/m68k/mutex.h +1 -1
  822. package/libc/include/m68k-netbsd-none/m68k/pcb.h +2 -2
  823. package/libc/include/m68k-netbsd-none/m68k/pmap_motorola.h +32 -23
  824. package/libc/include/m68k-netbsd-none/m68k/psl.h +26 -7
  825. package/libc/include/m68k-netbsd-none/m68k/pte_motorola.h +37 -26
  826. package/libc/include/m68k-netbsd-none/m68k/trap.h +7 -7
  827. package/libc/include/m68k-netbsd-none/mac68k/cpu.h +1 -57
  828. package/libc/include/m68k-netbsd-none/mac68k/intr.h +3 -2
  829. package/libc/include/m68k-netbsd-none/mac68k/lwp_private.h +3 -0
  830. package/libc/include/m68k-netbsd-none/mac68k/pmap.h +20 -2
  831. package/libc/include/m68k-netbsd-none/mac68k/z8530var.h +2 -2
  832. package/libc/include/m68k-netbsd-none/machine/cpu.h +1 -57
  833. package/libc/include/m68k-netbsd-none/machine/intr.h +3 -2
  834. package/libc/include/m68k-netbsd-none/machine/lwp_private.h +3 -0
  835. package/libc/include/m68k-netbsd-none/machine/pmap.h +20 -2
  836. package/libc/include/m68k-netbsd-none/machine/z8530var.h +2 -2
  837. package/libc/include/mips-linux-any/asm/errno.h +2 -0
  838. package/libc/include/mips-linux-any/asm/unistd_n32.h +1 -0
  839. package/libc/include/mips-linux-any/asm/unistd_n64.h +1 -0
  840. package/libc/include/mips-linux-any/asm/unistd_o32.h +1 -0
  841. package/libc/include/mips-netbsd-eabi/machine/lwp_private.h +3 -0
  842. package/libc/include/mips64-openbsd-none/machine/octeonvar.h +1 -27
  843. package/libc/include/mips64-openbsd-none/octeon/octeonvar.h +1 -27
  844. package/libc/include/mips64el-openbsd-none/loongson/apmvar.h +1 -1
  845. package/libc/include/mips64el-openbsd-none/loongson/param.h +1 -5
  846. package/libc/include/mips64el-openbsd-none/machine/apmvar.h +1 -1
  847. package/libc/include/mips64el-openbsd-none/machine/param.h +1 -5
  848. package/libc/include/powerpc-linux-any/asm/unistd_32.h +1 -0
  849. package/libc/include/powerpc-linux-any/asm/unistd_64.h +1 -0
  850. package/libc/include/powerpc-linux-gnu/bits/struct_mutex.h +2 -2
  851. package/libc/include/powerpc-netbsd-eabi/evbppc/lwp_private.h +3 -0
  852. package/libc/include/powerpc-netbsd-eabi/float.h +3 -0
  853. package/libc/include/powerpc-netbsd-eabi/machine/ansi.h +3 -0
  854. package/libc/include/powerpc-netbsd-eabi/machine/aout_machdep.h +3 -0
  855. package/libc/include/powerpc-netbsd-eabi/machine/asm.h +3 -0
  856. package/libc/include/powerpc-netbsd-eabi/machine/cdefs.h +3 -0
  857. package/libc/include/powerpc-netbsd-eabi/machine/cpu.h +65 -0
  858. package/libc/include/powerpc-netbsd-eabi/machine/disklabel.h +69 -0
  859. package/libc/include/powerpc-netbsd-eabi/machine/elf_machdep.h +3 -0
  860. package/libc/include/powerpc-netbsd-eabi/machine/endian.h +3 -0
  861. package/libc/include/powerpc-netbsd-eabi/machine/fenv.h +3 -0
  862. package/libc/include/powerpc-netbsd-eabi/machine/float.h +3 -0
  863. package/libc/include/powerpc-netbsd-eabi/machine/frame.h +3 -0
  864. package/libc/include/powerpc-netbsd-eabi/machine/ieee.h +3 -0
  865. package/libc/include/powerpc-netbsd-eabi/machine/ieeefp.h +3 -0
  866. package/libc/include/powerpc-netbsd-eabi/machine/int_const.h +3 -0
  867. package/libc/include/powerpc-netbsd-eabi/machine/int_fmtio.h +3 -0
  868. package/libc/include/powerpc-netbsd-eabi/machine/int_limits.h +3 -0
  869. package/libc/include/powerpc-netbsd-eabi/machine/int_mwgwtypes.h +3 -0
  870. package/libc/include/powerpc-netbsd-eabi/machine/int_types.h +3 -0
  871. package/libc/include/powerpc-netbsd-eabi/machine/kcore.h +3 -0
  872. package/libc/include/powerpc-netbsd-eabi/machine/limits.h +3 -0
  873. package/libc/include/powerpc-netbsd-eabi/machine/lock.h +3 -0
  874. package/libc/include/powerpc-netbsd-eabi/machine/lwp_private.h +3 -0
  875. package/libc/include/powerpc-netbsd-eabi/machine/math.h +3 -0
  876. package/libc/include/powerpc-netbsd-eabi/machine/mcontext.h +3 -0
  877. package/libc/include/powerpc-netbsd-eabi/machine/mutex.h +3 -0
  878. package/libc/include/powerpc-netbsd-eabi/machine/param.h +43 -0
  879. package/libc/include/powerpc-netbsd-eabi/machine/pcb.h +3 -0
  880. package/libc/include/powerpc-netbsd-eabi/machine/pmap.h +3 -0
  881. package/libc/include/powerpc-netbsd-eabi/machine/proc.h +3 -0
  882. package/libc/include/powerpc-netbsd-eabi/machine/profile.h +3 -0
  883. package/libc/include/powerpc-netbsd-eabi/machine/psl.h +3 -0
  884. package/libc/include/powerpc-netbsd-eabi/machine/pte.h +3 -0
  885. package/libc/include/powerpc-netbsd-eabi/machine/ptrace.h +3 -0
  886. package/libc/include/powerpc-netbsd-eabi/machine/reg.h +3 -0
  887. package/libc/include/powerpc-netbsd-eabi/machine/reloc.h +3 -0
  888. package/libc/include/powerpc-netbsd-eabi/machine/setjmp.h +3 -0
  889. package/libc/include/powerpc-netbsd-eabi/machine/signal.h +3 -0
  890. package/libc/include/{mips-netbsd-eabi → powerpc-netbsd-eabi}/machine/sljit_machdep.h +1 -1
  891. package/libc/include/powerpc-netbsd-eabi/machine/trap.h +3 -0
  892. package/libc/include/powerpc-netbsd-eabi/machine/types.h +11 -0
  893. package/libc/include/powerpc-netbsd-eabi/machine/vmparam.h +3 -0
  894. package/libc/include/powerpc-netbsd-eabi/machine/wchar_limits.h +3 -0
  895. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/asm.h +12 -2
  896. package/libc/include/powerpc-netbsd-eabi/powerpc/bswap.h +14 -0
  897. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/cpu.h +3 -3
  898. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/fenv.h +2 -1
  899. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ibm4xx/pmap.h +3 -3
  900. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ieee.h +7 -2
  901. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/limits.h +4 -13
  902. package/libc/include/powerpc-netbsd-eabi/powerpc/lwp_private.h +79 -0
  903. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/mcontext.h +6 -50
  904. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/mutex.h +1 -1
  905. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/hid.h +2 -2
  906. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/pmap.h +2 -2
  907. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/pmap.h +1 -1
  908. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/psl.h +2 -2
  909. package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/vmparam.h +1 -1
  910. package/libc/include/powerpc-openbsd-eabihf/powerpc/intr.h +1 -4
  911. package/libc/include/powerpc64-openbsd-none/machine/atomic.h +3 -3
  912. package/libc/include/powerpc64-openbsd-none/powerpc64/atomic.h +3 -3
  913. package/libc/include/riscv-linux-any/asm/hwprobe.h +4 -0
  914. package/libc/include/riscv-linux-any/asm/kvm.h +3 -0
  915. package/libc/include/riscv-linux-any/asm/ptrace.h +37 -0
  916. package/libc/include/riscv-linux-any/asm/sigcontext.h +1 -0
  917. package/libc/include/riscv-linux-any/asm/unistd_32.h +1 -0
  918. package/libc/include/riscv-linux-any/asm/unistd_64.h +1 -0
  919. package/libc/include/riscv32-netbsd-none/machine/bswap.h +11 -0
  920. package/libc/include/riscv32-netbsd-none/machine/endian_machdep.h +3 -0
  921. package/libc/include/riscv32-netbsd-none/machine/rwlock.h +1 -0
  922. package/libc/include/riscv32-netbsd-none/machine/wchar_limits.h +4 -0
  923. package/libc/include/riscv64-netbsd-none/machine/bswap.h +11 -0
  924. package/libc/include/riscv64-netbsd-none/machine/endian_machdep.h +3 -0
  925. package/libc/include/riscv64-netbsd-none/machine/rwlock.h +1 -0
  926. package/libc/include/riscv64-netbsd-none/machine/wchar_limits.h +4 -0
  927. package/libc/include/riscv64-openbsd-none/machine/cpu.h +4 -8
  928. package/libc/include/riscv64-openbsd-none/machine/cpufunc.h +4 -4
  929. package/libc/include/riscv64-openbsd-none/machine/pmap.h +5 -1
  930. package/libc/include/riscv64-openbsd-none/machine/pte.h +9 -1
  931. package/libc/include/riscv64-openbsd-none/riscv64/cpu.h +4 -8
  932. package/libc/include/riscv64-openbsd-none/riscv64/cpufunc.h +4 -4
  933. package/libc/include/riscv64-openbsd-none/riscv64/pmap.h +5 -1
  934. package/libc/include/riscv64-openbsd-none/riscv64/pte.h +9 -1
  935. package/libc/include/s390x-linux-any/asm/unistd_64.h +1 -0
  936. package/libc/include/s390x-linux-gnu/bits/fenv.h +2 -2
  937. package/libc/include/s390x-linux-gnu/bits/struct_mutex.h +2 -2
  938. package/libc/include/sparc-linux-any/asm/errno.h +2 -0
  939. package/libc/include/sparc-linux-any/asm/ioctls.h +4 -4
  940. package/libc/include/sparc-linux-any/asm/unistd_32.h +2 -0
  941. package/libc/include/sparc-linux-any/asm/unistd_64.h +2 -0
  942. package/libc/include/sparc-netbsd-none/float.h +3 -1
  943. package/libc/include/sparc-netbsd-none/machine/asm.h +10 -1
  944. package/libc/include/sparc-netbsd-none/machine/cgtworeg.h +2 -2
  945. package/libc/include/sparc-netbsd-none/machine/cpu.h +1 -1
  946. package/libc/include/sparc-netbsd-none/machine/float.h +3 -1
  947. package/libc/include/sparc-netbsd-none/machine/limits.h +4 -6
  948. package/libc/include/sparc-netbsd-none/machine/lwp_private.h +51 -0
  949. package/libc/include/sparc-netbsd-none/machine/mcontext.h +4 -22
  950. package/libc/include/sparc-netbsd-none/machine/mutex.h +1 -1
  951. package/libc/include/sparc-netbsd-none/machine/param.h +4 -2
  952. package/libc/include/sparc-netbsd-none/machine/pmap.h +2 -2
  953. package/libc/include/sparc-netbsd-none/machine/psl.h +6 -3
  954. package/libc/include/sparc-netbsd-none/machine/sxreg.h +5 -1
  955. package/libc/include/sparc-netbsd-none/machine/types.h +2 -2
  956. package/libc/include/sparc-netbsd-none/sparc/sxreg.h +5 -1
  957. package/libc/include/sparc64-netbsd-none/machine/cpu.h +2 -2
  958. package/libc/include/sparc64-netbsd-none/machine/ctlreg.h +8 -7
  959. package/libc/include/sparc64-netbsd-none/machine/intr.h +1 -1
  960. package/libc/include/sparc64-netbsd-none/machine/lwp_private.h +3 -0
  961. package/libc/include/sparc64-netbsd-none/machine/mcontext.h +4 -4
  962. package/libc/include/sparc64-netbsd-none/machine/mutex.h +1 -1
  963. package/libc/include/sparc64-netbsd-none/machine/param.h +8 -2
  964. package/libc/include/sparc64-netbsd-none/machine/psl.h +7 -2
  965. package/libc/include/sparc64-netbsd-none/machine/pte.h +2 -2
  966. package/libc/include/sparc64-netbsd-none/machine/vmparam.h +1 -1
  967. package/libc/include/x86-linux-any/asm/auxvec.h +0 -4
  968. package/libc/include/x86-linux-any/asm/kvm.h +13 -8
  969. package/libc/include/x86-linux-any/asm/svm.h +16 -16
  970. package/libc/include/x86-linux-any/asm/unistd_32.h +1 -0
  971. package/libc/include/x86-linux-any/asm/unistd_64.h +1 -0
  972. package/libc/include/x86-linux-any/asm/unistd_x32.h +1 -0
  973. package/libc/include/x86-linux-gnu/bits/struct_mutex.h +2 -2
  974. package/libc/include/x86-netbsd-none/machine/asm.h +12 -4
  975. package/libc/include/x86-netbsd-none/machine/byte_swap.h +2 -2
  976. package/libc/include/x86-netbsd-none/machine/cpu.h +15 -4
  977. package/libc/include/x86-netbsd-none/machine/elf_machdep.h +2 -1
  978. package/libc/include/x86-netbsd-none/machine/lwp_private.h +3 -0
  979. package/libc/include/x86-netbsd-none/machine/mcontext.h +6 -24
  980. package/libc/include/x86-netbsd-none/machine/param.h +9 -1
  981. package/libc/include/x86-netbsd-none/machine/pcb.h +6 -2
  982. package/libc/include/x86-netbsd-none/machine/ptrace.h +2 -2
  983. package/libc/include/x86-netbsd-none/machine/types.h +2 -1
  984. package/libc/include/x86-openbsd-none/i386/specialreg.h +3 -1
  985. package/libc/include/x86-openbsd-none/machine/specialreg.h +3 -1
  986. package/libc/include/x86_64-netbsd-none/amd64/asm.h +11 -3
  987. package/libc/include/x86_64-netbsd-none/amd64/byte_swap.h +2 -2
  988. package/libc/include/x86_64-netbsd-none/amd64/cpu.h +13 -3
  989. package/libc/include/x86_64-netbsd-none/amd64/frame.h +2 -2
  990. package/libc/include/x86_64-netbsd-none/amd64/lwp_private.h +3 -0
  991. package/libc/include/x86_64-netbsd-none/amd64/mcontext.h +5 -23
  992. package/libc/include/x86_64-netbsd-none/amd64/param.h +23 -4
  993. package/libc/include/x86_64-netbsd-none/amd64/pcb.h +14 -3
  994. package/libc/include/x86_64-netbsd-none/amd64/ptrace.h +2 -2
  995. package/libc/include/x86_64-netbsd-none/amd64/types.h +2 -1
  996. package/libc/include/x86_64-netbsd-none/machine/asm.h +11 -3
  997. package/libc/include/x86_64-netbsd-none/machine/byte_swap.h +2 -2
  998. package/libc/include/x86_64-netbsd-none/machine/cpu.h +13 -3
  999. package/libc/include/x86_64-netbsd-none/machine/frame.h +2 -2
  1000. package/libc/include/x86_64-netbsd-none/machine/lwp_private.h +3 -0
  1001. package/libc/include/x86_64-netbsd-none/machine/mcontext.h +5 -23
  1002. package/libc/include/x86_64-netbsd-none/machine/param.h +23 -4
  1003. package/libc/include/x86_64-netbsd-none/machine/pcb.h +14 -3
  1004. package/libc/include/x86_64-netbsd-none/machine/ptrace.h +2 -2
  1005. package/libc/include/x86_64-netbsd-none/machine/types.h +2 -1
  1006. package/libc/include/x86_64-openbsd-none/amd64/conf.h +11 -2
  1007. package/libc/include/x86_64-openbsd-none/amd64/cpu.h +14 -4
  1008. package/libc/include/x86_64-openbsd-none/amd64/cpufunc.h +2 -3
  1009. package/libc/include/x86_64-openbsd-none/amd64/ghcb.h +2 -1
  1010. package/libc/include/x86_64-openbsd-none/amd64/i82489var.h +2 -4
  1011. package/libc/include/x86_64-openbsd-none/amd64/i8259.h +1 -53
  1012. package/libc/include/x86_64-openbsd-none/amd64/intr.h +5 -2
  1013. package/libc/include/x86_64-openbsd-none/amd64/intrdefs.h +9 -7
  1014. package/libc/include/x86_64-openbsd-none/amd64/kexec.h +48 -0
  1015. package/libc/include/x86_64-openbsd-none/amd64/specialreg.h +4 -1
  1016. package/libc/include/x86_64-openbsd-none/machine/conf.h +11 -2
  1017. package/libc/include/x86_64-openbsd-none/machine/cpu.h +14 -4
  1018. package/libc/include/x86_64-openbsd-none/machine/cpufunc.h +2 -3
  1019. package/libc/include/x86_64-openbsd-none/machine/ghcb.h +2 -1
  1020. package/libc/include/x86_64-openbsd-none/machine/i82489var.h +2 -4
  1021. package/libc/include/x86_64-openbsd-none/machine/i8259.h +1 -53
  1022. package/libc/include/x86_64-openbsd-none/machine/intr.h +5 -2
  1023. package/libc/include/x86_64-openbsd-none/machine/intrdefs.h +9 -7
  1024. package/libc/include/x86_64-openbsd-none/machine/kexec.h +48 -0
  1025. package/libc/include/x86_64-openbsd-none/machine/specialreg.h +4 -1
  1026. package/libc/include/xtensa-linux-any/asm/unistd_32.h +1 -0
  1027. package/libc/netbsd/abilists +0 -0
  1028. package/libc/netbsd/lib/csu/arch/riscv/crt0.S +62 -0
  1029. package/libc/netbsd/lib/csu/common/crt0-common.c +32 -7
  1030. package/libc/netbsd/lib/csu/common/csu-common.h +2 -0
  1031. package/libc/openbsd/abilists +0 -0
  1032. package/libcxx/include/__algorithm/all_of.h +11 -5
  1033. package/libcxx/include/__algorithm/comp.h +4 -0
  1034. package/libcxx/include/__algorithm/copy.h +28 -147
  1035. package/libcxx/include/__algorithm/copy_backward.h +9 -24
  1036. package/libcxx/include/__algorithm/copy_n.h +50 -16
  1037. package/libcxx/include/__algorithm/count.h +2 -2
  1038. package/libcxx/include/__algorithm/equal.h +43 -55
  1039. package/libcxx/include/__algorithm/fill.h +26 -8
  1040. package/libcxx/include/__algorithm/fill_n.h +32 -46
  1041. package/libcxx/include/__algorithm/find.h +96 -39
  1042. package/libcxx/include/__algorithm/find_end.h +105 -0
  1043. package/libcxx/include/__algorithm/for_each.h +18 -24
  1044. package/libcxx/include/__algorithm/for_each_n.h +20 -47
  1045. package/libcxx/include/__algorithm/for_each_n_segment.h +1 -1
  1046. package/libcxx/include/__algorithm/for_each_segment.h +26 -0
  1047. package/libcxx/include/__algorithm/generate.h +4 -2
  1048. package/libcxx/include/__algorithm/generate_n.h +19 -6
  1049. package/libcxx/include/__algorithm/is_permutation.h +4 -4
  1050. package/libcxx/include/__algorithm/iterator_operations.h +3 -0
  1051. package/libcxx/include/__algorithm/lexicographical_compare.h +2 -2
  1052. package/libcxx/include/__algorithm/lexicographical_compare_three_way.h +6 -6
  1053. package/libcxx/include/__algorithm/make_heap.h +16 -4
  1054. package/libcxx/include/__algorithm/mismatch.h +2 -2
  1055. package/libcxx/include/__algorithm/move.h +8 -19
  1056. package/libcxx/include/__algorithm/move_backward.h +9 -24
  1057. package/libcxx/include/__algorithm/none_of.h +4 -4
  1058. package/libcxx/include/__algorithm/partial_sort.h +1 -1
  1059. package/libcxx/include/__algorithm/partial_sort_copy.h +1 -1
  1060. package/libcxx/include/__algorithm/pstl.h +9 -9
  1061. package/libcxx/include/__algorithm/radix_sort.h +27 -25
  1062. package/libcxx/include/__algorithm/ranges_copy_n.h +3 -26
  1063. package/libcxx/include/__algorithm/ranges_equal.h +17 -26
  1064. package/libcxx/include/__algorithm/ranges_fill.h +7 -6
  1065. package/libcxx/include/__algorithm/ranges_for_each.h +9 -1
  1066. package/libcxx/include/__algorithm/ranges_generate_n.h +2 -6
  1067. package/libcxx/include/__algorithm/ranges_search_n.h +2 -2
  1068. package/libcxx/include/__algorithm/rotate.h +27 -44
  1069. package/libcxx/include/__algorithm/search_n.h +49 -37
  1070. package/libcxx/include/__algorithm/sift_down.h +19 -18
  1071. package/libcxx/include/__algorithm/simd_utils.h +33 -4
  1072. package/libcxx/include/__algorithm/specialized_algorithms.h +54 -0
  1073. package/libcxx/include/__algorithm/stable_sort.h +1 -1
  1074. package/libcxx/include/__assertion_handler +31 -4
  1075. package/libcxx/include/__atomic/atomic.h +36 -60
  1076. package/libcxx/include/__atomic/atomic_flag.h +19 -37
  1077. package/libcxx/include/__atomic/atomic_ref.h +29 -12
  1078. package/libcxx/include/__atomic/atomic_sync.h +127 -55
  1079. package/libcxx/include/__atomic/atomic_sync_timed.h +144 -0
  1080. package/libcxx/include/__atomic/atomic_waitable_traits.h +103 -0
  1081. package/libcxx/include/__atomic/contention_t.h +27 -3
  1082. package/libcxx/include/__atomic/floating_point_helper.h +55 -0
  1083. package/libcxx/include/__bit/countl.h +1 -2
  1084. package/libcxx/include/__bit/countr.h +1 -2
  1085. package/libcxx/include/__bit/has_single_bit.h +1 -1
  1086. package/libcxx/include/__bit/popcount.h +0 -1
  1087. package/libcxx/include/__bit/rotate.h +15 -26
  1088. package/libcxx/include/__bit_reference +207 -18
  1089. package/libcxx/include/__charconv/from_chars_integral.h +1 -1
  1090. package/libcxx/include/__charconv/from_chars_result.h +1 -1
  1091. package/libcxx/include/__charconv/to_chars_integral.h +1 -0
  1092. package/libcxx/include/__charconv/to_chars_result.h +1 -1
  1093. package/libcxx/include/__charconv/traits.h +3 -24
  1094. package/libcxx/include/__chrono/day.h +11 -0
  1095. package/libcxx/include/__chrono/duration.h +58 -33
  1096. package/libcxx/include/__chrono/file_clock.h +4 -2
  1097. package/libcxx/include/__chrono/is_clock.h +72 -0
  1098. package/libcxx/include/__chrono/leap_second.h +13 -0
  1099. package/libcxx/include/__chrono/month.h +13 -0
  1100. package/libcxx/include/__chrono/month_weekday.h +22 -0
  1101. package/libcxx/include/__chrono/monthday.h +20 -0
  1102. package/libcxx/include/__chrono/steady_clock.h +1 -1
  1103. package/libcxx/include/__chrono/system_clock.h +3 -3
  1104. package/libcxx/include/__chrono/time_point.h +37 -13
  1105. package/libcxx/include/__chrono/weekday.h +25 -0
  1106. package/libcxx/include/__chrono/year.h +11 -0
  1107. package/libcxx/include/__chrono/year_month.h +13 -0
  1108. package/libcxx/include/__chrono/year_month_day.h +23 -0
  1109. package/libcxx/include/__chrono/year_month_weekday.h +26 -0
  1110. package/libcxx/include/__chrono/zoned_time.h +16 -0
  1111. package/libcxx/include/__compare/is_eq.h +6 -6
  1112. package/libcxx/include/__compare/strong_order.h +12 -30
  1113. package/libcxx/include/__compare/three_way_comparable.h +2 -2
  1114. package/libcxx/include/__concepts/comparison_common_type.h +40 -0
  1115. package/libcxx/include/__concepts/equality_comparable.h +2 -1
  1116. package/libcxx/include/__condition_variable/condition_variable.h +1 -1
  1117. package/libcxx/include/__config +63 -280
  1118. package/libcxx/include/__configuration/abi.h +14 -24
  1119. package/libcxx/include/__configuration/availability.h +65 -118
  1120. package/libcxx/include/__configuration/compiler.h +6 -6
  1121. package/libcxx/include/__configuration/experimental.h +38 -0
  1122. package/libcxx/include/__configuration/hardening.h +215 -0
  1123. package/libcxx/include/__configuration/language.h +3 -0
  1124. package/libcxx/include/__configuration/platform.h +9 -16
  1125. package/libcxx/include/__coroutine/coroutine_handle.h +9 -9
  1126. package/libcxx/include/__coroutine/noop_coroutine_handle.h +11 -13
  1127. package/libcxx/include/__debug_utils/strict_weak_ordering_check.h +1 -1
  1128. package/libcxx/include/__exception/exception.h +6 -4
  1129. package/libcxx/include/__exception/exception_ptr.h +27 -5
  1130. package/libcxx/include/__exception/nested_exception.h +2 -2
  1131. package/libcxx/include/__exception/operations.h +5 -5
  1132. package/libcxx/include/__expected/bad_expected_access.h +8 -6
  1133. package/libcxx/include/__expected/expected.h +62 -64
  1134. package/libcxx/include/__expected/unexpected.h +4 -4
  1135. package/libcxx/include/__filesystem/copy_options.h +4 -4
  1136. package/libcxx/include/__filesystem/directory_entry.h +37 -33
  1137. package/libcxx/include/__filesystem/directory_iterator.h +9 -11
  1138. package/libcxx/include/__filesystem/directory_options.h +7 -4
  1139. package/libcxx/include/__filesystem/file_status.h +3 -3
  1140. package/libcxx/include/__filesystem/filesystem_error.h +9 -10
  1141. package/libcxx/include/__filesystem/operations.h +97 -66
  1142. package/libcxx/include/__filesystem/path.h +68 -64
  1143. package/libcxx/include/__filesystem/path_iterator.h +1 -3
  1144. package/libcxx/include/__filesystem/perm_options.h +4 -4
  1145. package/libcxx/include/__filesystem/perms.h +4 -4
  1146. package/libcxx/include/__filesystem/recursive_directory_iterator.h +9 -14
  1147. package/libcxx/include/__filesystem/space_info.h +1 -1
  1148. package/libcxx/include/__filesystem/u8path.h +12 -14
  1149. package/libcxx/include/__flat_map/flat_map.h +88 -71
  1150. package/libcxx/include/__flat_map/flat_multimap.h +251 -172
  1151. package/libcxx/include/__flat_map/key_value_iterator.h +0 -1
  1152. package/libcxx/include/__flat_map/utils.h +1 -0
  1153. package/libcxx/include/__flat_set/flat_multiset.h +211 -143
  1154. package/libcxx/include/__flat_set/flat_set.h +86 -68
  1155. package/libcxx/include/__format/concepts.h +0 -14
  1156. package/libcxx/include/__format/extended_grapheme_cluster_table.h +3 -2
  1157. package/libcxx/include/__format/fmt_pair_like.h +42 -0
  1158. package/libcxx/include/__format/format_arg.h +7 -10
  1159. package/libcxx/include/__format/format_args.h +1 -1
  1160. package/libcxx/include/__format/format_context.h +5 -5
  1161. package/libcxx/include/__format/format_parse_context.h +2 -2
  1162. package/libcxx/include/__format/formatter_output.h +30 -34
  1163. package/libcxx/include/__format/indic_conjunct_break_table.h +3 -2
  1164. package/libcxx/include/__format/range_default_formatter.h +2 -41
  1165. package/libcxx/include/__format/range_format.h +71 -0
  1166. package/libcxx/include/__format/range_formatter.h +1 -0
  1167. package/libcxx/include/__format/width_estimation_table.h +4 -2
  1168. package/libcxx/include/__functional/bind.h +10 -15
  1169. package/libcxx/include/__functional/bind_back.h +1 -1
  1170. package/libcxx/include/__functional/bind_front.h +1 -1
  1171. package/libcxx/include/__functional/function.h +57 -75
  1172. package/libcxx/include/__functional/hash.h +1 -10
  1173. package/libcxx/include/__functional/identity.h +1 -1
  1174. package/libcxx/include/__functional/is_transparent.h +8 -0
  1175. package/libcxx/include/__functional/mem_fn.h +2 -1
  1176. package/libcxx/include/__functional/operations.h +18 -0
  1177. package/libcxx/include/__functional/ranges_operations.h +7 -0
  1178. package/libcxx/include/__functional/reference_wrapper.h +7 -5
  1179. package/libcxx/include/__functional/weak_result_type.h +14 -28
  1180. package/libcxx/include/__fwd/ios.h +1 -1
  1181. package/libcxx/include/__fwd/tuple.h +14 -0
  1182. package/libcxx/include/__hash_table +371 -357
  1183. package/libcxx/include/__ios/fpos.h +4 -4
  1184. package/libcxx/include/__iterator/back_insert_iterator.h +1 -7
  1185. package/libcxx/include/__iterator/bounded_iter.h +7 -8
  1186. package/libcxx/include/__iterator/concepts.h +6 -9
  1187. package/libcxx/include/__iterator/cpp17_iterator_concepts.h +13 -12
  1188. package/libcxx/include/__iterator/distance.h +40 -18
  1189. package/libcxx/include/__iterator/front_insert_iterator.h +1 -7
  1190. package/libcxx/include/__iterator/insert_iterator.h +1 -7
  1191. package/libcxx/include/__iterator/istream_iterator.h +6 -7
  1192. package/libcxx/include/__iterator/istreambuf_iterator.h +6 -7
  1193. package/libcxx/include/__iterator/iter_move.h +1 -1
  1194. package/libcxx/include/__iterator/iterator.h +13 -0
  1195. package/libcxx/include/__iterator/iterator_traits.h +13 -14
  1196. package/libcxx/include/__iterator/ostream_iterator.h +1 -7
  1197. package/libcxx/include/__iterator/ostreambuf_iterator.h +1 -7
  1198. package/libcxx/include/__iterator/reverse_iterator.h +8 -13
  1199. package/libcxx/include/__iterator/segmented_iterator.h +3 -8
  1200. package/libcxx/include/__iterator/static_bounded_iter.h +3 -3
  1201. package/libcxx/include/__iterator/wrap_iter.h +8 -6
  1202. package/libcxx/include/__locale +3 -10
  1203. package/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +0 -10
  1204. package/libcxx/include/__locale_dir/locale_base_api.h +5 -28
  1205. package/libcxx/include/__locale_dir/messages.h +1 -1
  1206. package/libcxx/include/__locale_dir/money.h +2 -2
  1207. package/libcxx/include/__locale_dir/num.h +190 -243
  1208. package/libcxx/include/__locale_dir/pad_and_output.h +5 -6
  1209. package/libcxx/include/__locale_dir/support/bsd_like.h +0 -20
  1210. package/libcxx/include/__locale_dir/support/fuchsia.h +0 -7
  1211. package/libcxx/include/__locale_dir/support/linux.h +0 -37
  1212. package/libcxx/include/__locale_dir/support/netbsd.h +0 -2
  1213. package/libcxx/include/__locale_dir/support/newlib.h +243 -0
  1214. package/libcxx/include/__locale_dir/support/no_locale/characters.h +0 -4
  1215. package/libcxx/include/__locale_dir/support/no_locale/strtonum.h +0 -9
  1216. package/libcxx/include/__locale_dir/support/windows.h +0 -29
  1217. package/libcxx/include/__locale_dir/time.h +3 -7
  1218. package/libcxx/include/__math/hypot.h +1 -1
  1219. package/libcxx/include/__math/logarithms.h +1 -1
  1220. package/libcxx/include/__math/traits.h +80 -11
  1221. package/libcxx/include/__mdspan/extents.h +7 -4
  1222. package/libcxx/include/__mdspan/layout_stride.h +4 -5
  1223. package/libcxx/include/__mdspan/mdspan.h +29 -23
  1224. package/libcxx/include/__memory/addressof.h +7 -5
  1225. package/libcxx/include/__memory/align.h +18 -1
  1226. package/libcxx/include/__memory/allocate_at_least.h +15 -10
  1227. package/libcxx/include/__memory/allocator.h +14 -26
  1228. package/libcxx/include/__memory/allocator_traits.h +6 -4
  1229. package/libcxx/include/__memory/compressed_pair.h +15 -9
  1230. package/libcxx/include/__memory/construct_at.h +12 -23
  1231. package/libcxx/include/__memory/inout_ptr.h +1 -1
  1232. package/libcxx/include/__memory/is_sufficiently_aligned.h +1 -1
  1233. package/libcxx/include/__memory/out_ptr.h +1 -1
  1234. package/libcxx/include/__memory/pointer_traits.h +1 -1
  1235. package/libcxx/include/__memory/raw_storage_iterator.h +3 -9
  1236. package/libcxx/include/__memory/shared_count.h +9 -30
  1237. package/libcxx/include/__memory/shared_ptr.h +100 -145
  1238. package/libcxx/include/__memory/temp_value.h +1 -2
  1239. package/libcxx/include/__memory/uninitialized_algorithms.h +44 -115
  1240. package/libcxx/include/__memory/unique_ptr.h +14 -16
  1241. package/libcxx/include/__memory/uses_allocator_construction.h +1 -0
  1242. package/libcxx/include/__memory_resource/memory_resource.h +4 -2
  1243. package/libcxx/include/__memory_resource/monotonic_buffer_resource.h +1 -1
  1244. package/libcxx/include/__memory_resource/polymorphic_allocator.h +13 -8
  1245. package/libcxx/include/__memory_resource/pool_options.h +1 -1
  1246. package/libcxx/include/__memory_resource/synchronized_pool_resource.h +4 -2
  1247. package/libcxx/include/__memory_resource/unsynchronized_pool_resource.h +1 -1
  1248. package/libcxx/include/__mutex/mutex.h +2 -2
  1249. package/libcxx/include/__mutex/once_flag.h +14 -11
  1250. package/libcxx/include/__mutex/tag_types.h +3 -3
  1251. package/libcxx/include/__mutex/unique_lock.h +8 -7
  1252. package/libcxx/include/__new/align_val_t.h +6 -0
  1253. package/libcxx/include/__new/allocate.h +1 -2
  1254. package/libcxx/include/__new/exceptions.h +8 -2
  1255. package/libcxx/include/__new/global_new_delete.h +4 -11
  1256. package/libcxx/include/__new/interference_size.h +0 -4
  1257. package/libcxx/include/__new/launder.h +3 -5
  1258. package/libcxx/include/__new/nothrow_t.h +1 -1
  1259. package/libcxx/include/__numeric/gcd_lcm.h +24 -34
  1260. package/libcxx/include/__numeric/midpoint.h +9 -14
  1261. package/libcxx/include/__numeric/pstl.h +2 -2
  1262. package/libcxx/include/__numeric/saturation_arithmetic.h +13 -5
  1263. package/libcxx/include/__ostream/basic_ostream.h +8 -8
  1264. package/libcxx/include/__pstl/backends/default.h +14 -14
  1265. package/libcxx/include/__pstl/backends/libdispatch.h +2 -2
  1266. package/libcxx/include/__pstl/cpu_algos/find_if.h +1 -1
  1267. package/libcxx/include/__pstl/cpu_algos/transform.h +5 -6
  1268. package/libcxx/include/__pstl/cpu_algos/transform_reduce.h +5 -4
  1269. package/libcxx/include/__random/binomial_distribution.h +10 -4
  1270. package/libcxx/include/__random/mersenne_twister_engine.h +50 -154
  1271. package/libcxx/include/__random/piecewise_constant_distribution.h +3 -2
  1272. package/libcxx/include/__random/piecewise_linear_distribution.h +3 -2
  1273. package/libcxx/include/__ranges/adjacent_transform_view.h +406 -0
  1274. package/libcxx/include/__ranges/adjacent_view.h +419 -0
  1275. package/libcxx/include/__ranges/as_rvalue_view.h +9 -9
  1276. package/libcxx/include/__ranges/chunk_by_view.h +6 -6
  1277. package/libcxx/include/__ranges/common_view.h +7 -7
  1278. package/libcxx/include/__ranges/drop_view.h +8 -8
  1279. package/libcxx/include/__ranges/drop_while_view.h +5 -5
  1280. package/libcxx/include/__ranges/elements_of.h +49 -0
  1281. package/libcxx/include/__ranges/empty_view.h +5 -5
  1282. package/libcxx/include/__ranges/filter_view.h +10 -10
  1283. package/libcxx/include/__ranges/iota_view.h +41 -22
  1284. package/libcxx/include/__ranges/owning_view.h +15 -15
  1285. package/libcxx/include/__ranges/ref_view.h +6 -6
  1286. package/libcxx/include/__ranges/repeat_view.h +17 -10
  1287. package/libcxx/include/__ranges/single_view.h +8 -8
  1288. package/libcxx/include/__ranges/take_view.h +9 -9
  1289. package/libcxx/include/__ranges/transform_view.h +1 -2
  1290. package/libcxx/include/__ranges/view_interface.h +10 -10
  1291. package/libcxx/include/__ranges/zip_transform_view.h +357 -0
  1292. package/libcxx/include/__ranges/zip_view.h +20 -20
  1293. package/libcxx/include/__split_buffer +612 -240
  1294. package/libcxx/include/__stop_token/atomic_unique_lock.h +1 -1
  1295. package/libcxx/include/__stop_token/stop_callback.h +2 -2
  1296. package/libcxx/include/__stop_token/stop_source.h +1 -1
  1297. package/libcxx/include/__stop_token/stop_state.h +4 -4
  1298. package/libcxx/include/__stop_token/stop_token.h +1 -1
  1299. package/libcxx/include/__string/char_traits.h +51 -31
  1300. package/libcxx/include/__string/constexpr_c_functions.h +5 -5
  1301. package/libcxx/include/__support/xlocale/__strtonum_fallback.h +0 -8
  1302. package/libcxx/include/__system_error/error_category.h +8 -8
  1303. package/libcxx/include/__system_error/error_code.h +5 -5
  1304. package/libcxx/include/__system_error/error_condition.h +4 -4
  1305. package/libcxx/include/__system_error/system_error.h +1 -1
  1306. package/libcxx/include/__thread/id.h +1 -1
  1307. package/libcxx/include/__thread/jthread.h +1 -1
  1308. package/libcxx/include/__thread/poll_with_backoff.h +27 -8
  1309. package/libcxx/include/__thread/support/c11.h +8 -8
  1310. package/libcxx/include/__thread/support/pthread.h +8 -8
  1311. package/libcxx/include/__thread/support/windows.h +8 -8
  1312. package/libcxx/include/__thread/thread.h +13 -8
  1313. package/libcxx/include/__thread/timed_backoff_policy.h +3 -2
  1314. package/libcxx/include/__tree +849 -701
  1315. package/libcxx/include/__tuple/sfinae_helpers.h +1 -44
  1316. package/libcxx/include/__tuple/tuple_element.h +0 -12
  1317. package/libcxx/include/__tuple/tuple_size.h +0 -4
  1318. package/libcxx/include/__tuple/tuple_transform.h +45 -0
  1319. package/libcxx/include/__type_traits/aligned_storage.h +13 -40
  1320. package/libcxx/include/__type_traits/desugars_to.h +4 -0
  1321. package/libcxx/include/__type_traits/invoke.h +8 -0
  1322. package/libcxx/include/__type_traits/is_allocator.h +6 -7
  1323. package/libcxx/include/__type_traits/is_array.h +26 -0
  1324. package/libcxx/include/__type_traits/is_equality_comparable.h +16 -21
  1325. package/libcxx/include/__type_traits/is_final.h +1 -1
  1326. package/libcxx/include/__type_traits/is_floating_point.h +7 -6
  1327. package/libcxx/include/__type_traits/is_generic_transparent_comparator.h +30 -0
  1328. package/libcxx/include/__type_traits/is_specialization.h +2 -6
  1329. package/libcxx/include/__type_traits/is_within_lifetime.h +29 -0
  1330. package/libcxx/include/__type_traits/make_transparent.h +52 -0
  1331. package/libcxx/include/__type_traits/reference_constructs_from_temporary.h +1 -7
  1332. package/libcxx/include/__type_traits/reference_converts_from_temporary.h +1 -1
  1333. package/libcxx/include/__utility/cmp.h +19 -7
  1334. package/libcxx/include/__utility/default_three_way_comparator.h +70 -0
  1335. package/libcxx/include/__utility/in_place.h +1 -1
  1336. package/libcxx/include/__utility/integer_sequence.h +56 -41
  1337. package/libcxx/include/__utility/lazy_synth_three_way_comparator.h +120 -0
  1338. package/libcxx/include/__utility/pair.h +22 -25
  1339. package/libcxx/include/__utility/scope_guard.h +2 -0
  1340. package/libcxx/include/__utility/try_key_extraction.h +114 -0
  1341. package/libcxx/include/__vector/vector.h +187 -160
  1342. package/libcxx/include/__vector/vector_bool.h +76 -83
  1343. package/libcxx/include/any +118 -155
  1344. package/libcxx/include/array +88 -56
  1345. package/libcxx/include/atomic +2 -0
  1346. package/libcxx/include/barrier +20 -24
  1347. package/libcxx/include/bitset +49 -30
  1348. package/libcxx/include/ccomplex +3 -11
  1349. package/libcxx/include/chrono +47 -0
  1350. package/libcxx/include/ciso646 +3 -6
  1351. package/libcxx/include/complex +77 -65
  1352. package/libcxx/include/complex.h +10 -10
  1353. package/libcxx/include/condition_variable +3 -3
  1354. package/libcxx/include/cstdalign +3 -10
  1355. package/libcxx/include/cstdbool +3 -10
  1356. package/libcxx/include/ctgmath +2 -11
  1357. package/libcxx/include/ctype.h +24 -24
  1358. package/libcxx/include/cwchar +2 -2
  1359. package/libcxx/include/deque +109 -225
  1360. package/libcxx/include/errno.h +269 -269
  1361. package/libcxx/include/exception +4 -1
  1362. package/libcxx/include/ext/hash_map +7 -48
  1363. package/libcxx/include/ext/hash_set +2 -8
  1364. package/libcxx/include/fenv.h +43 -43
  1365. package/libcxx/include/flat_map +663 -11
  1366. package/libcxx/include/flat_set +543 -8
  1367. package/libcxx/include/float.h +16 -16
  1368. package/libcxx/include/forward_list +33 -53
  1369. package/libcxx/include/fstream +57 -42
  1370. package/libcxx/include/future +41 -51
  1371. package/libcxx/include/initializer_list +9 -3
  1372. package/libcxx/include/inttypes.h +16 -16
  1373. package/libcxx/include/ios +28 -28
  1374. package/libcxx/include/istream +19 -13
  1375. package/libcxx/include/iterator +10 -0
  1376. package/libcxx/include/latch +7 -5
  1377. package/libcxx/include/limits +4 -4
  1378. package/libcxx/include/list +61 -79
  1379. package/libcxx/include/map +386 -274
  1380. package/libcxx/include/math.h +19 -0
  1381. package/libcxx/include/mdspan +1 -5
  1382. package/libcxx/include/mutex +29 -19
  1383. package/libcxx/include/optional +644 -149
  1384. package/libcxx/include/print +9 -5
  1385. package/libcxx/include/queue +39 -37
  1386. package/libcxx/include/ranges +48 -0
  1387. package/libcxx/include/regex +33 -31
  1388. package/libcxx/include/scoped_allocator +16 -11
  1389. package/libcxx/include/semaphore +15 -18
  1390. package/libcxx/include/set +220 -192
  1391. package/libcxx/include/shared_mutex +3 -8
  1392. package/libcxx/include/span +53 -37
  1393. package/libcxx/include/sstream +34 -28
  1394. package/libcxx/include/stack +13 -15
  1395. package/libcxx/include/stddef.h +10 -10
  1396. package/libcxx/include/stdexcept +2 -2
  1397. package/libcxx/include/stdio.h +20 -21
  1398. package/libcxx/include/streambuf +59 -19
  1399. package/libcxx/include/string +574 -573
  1400. package/libcxx/include/string_view +113 -89
  1401. package/libcxx/include/strstream +10 -10
  1402. package/libcxx/include/syncstream +4 -4
  1403. package/libcxx/include/tgmath.h +12 -12
  1404. package/libcxx/include/tuple +242 -212
  1405. package/libcxx/include/type_traits +8 -2
  1406. package/libcxx/include/typeindex +5 -3
  1407. package/libcxx/include/typeinfo +92 -89
  1408. package/libcxx/include/unordered_map +179 -304
  1409. package/libcxx/include/unordered_set +168 -195
  1410. package/libcxx/include/utility +12 -0
  1411. package/libcxx/include/valarray +106 -161
  1412. package/libcxx/include/variant +25 -33
  1413. package/libcxx/include/version +41 -24
  1414. package/libcxx/include/wctype.h +29 -29
  1415. package/libcxx/libc/hdr/errno_macros.h +3 -1
  1416. package/libcxx/libc/hdr/stdint_proxy.h +18 -0
  1417. package/libcxx/libc/hdr/types/wchar_t.h +23 -0
  1418. package/libcxx/libc/hdr/wchar_overlay.h +69 -0
  1419. package/libcxx/libc/include/llvm-libc-macros/cfloat128-macros.h +41 -0
  1420. package/libcxx/libc/include/llvm-libc-macros/cfloat16-macros.h +20 -0
  1421. package/libcxx/libc/include/llvm-libc-macros/wchar-macros.h +18 -0
  1422. package/libcxx/libc/include/llvm-libc-types/cfloat128.h +11 -28
  1423. package/libcxx/libc/include/llvm-libc-types/cfloat16.h +4 -7
  1424. package/libcxx/libc/include/llvm-libc-types/wint_t.h +14 -0
  1425. package/libcxx/libc/shared/libc_common.h +5 -0
  1426. package/libcxx/libc/src/__support/CPP/bit.h +50 -12
  1427. package/libcxx/libc/src/__support/CPP/type_traits/is_complex.h +7 -0
  1428. package/libcxx/libc/src/__support/CPP/type_traits/is_destructible.h +2 -1
  1429. package/libcxx/libc/src/__support/CPP/type_traits/is_unsigned.h +6 -0
  1430. package/libcxx/libc/src/__support/CPP/utility/integer_sequence.h +10 -0
  1431. package/libcxx/libc/src/__support/FPUtil/FPBits.h +6 -7
  1432. package/libcxx/libc/src/__support/FPUtil/rounding_mode.h +50 -4
  1433. package/libcxx/libc/src/__support/big_int.h +14 -14
  1434. package/libcxx/libc/src/__support/common.h +3 -2
  1435. package/libcxx/libc/src/__support/ctype_utils.h +19 -12
  1436. package/libcxx/libc/src/__support/detailed_powers_of_ten.h +1 -2
  1437. package/libcxx/libc/src/__support/high_precision_decimal.h +33 -14
  1438. package/libcxx/libc/src/__support/libc_assert.h +2 -0
  1439. package/libcxx/libc/src/__support/macros/attributes.h +44 -1
  1440. package/libcxx/libc/src/__support/macros/config.h +23 -0
  1441. package/libcxx/libc/src/__support/macros/null_check.h +1 -2
  1442. package/libcxx/libc/src/__support/macros/optimization.h +3 -0
  1443. package/libcxx/libc/src/__support/macros/properties/architectures.h +5 -1
  1444. package/libcxx/libc/src/__support/macros/properties/compiler.h +8 -3
  1445. package/libcxx/libc/src/__support/macros/properties/cpu_features.h +17 -1
  1446. package/libcxx/libc/src/__support/macros/properties/types.h +2 -3
  1447. package/libcxx/libc/src/__support/macros/sanitizer.h +0 -10
  1448. package/libcxx/libc/src/__support/math_extras.h +20 -4
  1449. package/libcxx/libc/src/__support/str_to_float.h +98 -125
  1450. package/libcxx/libc/src/__support/str_to_integer.h +39 -27
  1451. package/libcxx/libc/src/__support/wctype_utils.h +588 -0
  1452. package/libcxx/src/any.cpp +4 -0
  1453. package/libcxx/src/atomic.cpp +365 -80
  1454. package/libcxx/src/barrier.cpp +4 -3
  1455. package/libcxx/src/charconv.cpp +6 -3
  1456. package/libcxx/src/condition_variable_destructor.cpp +1 -1
  1457. package/libcxx/src/error_category.cpp +3 -1
  1458. package/libcxx/src/exception.cpp +2 -10
  1459. package/libcxx/src/experimental/time_zone.cpp +1 -1
  1460. package/libcxx/src/experimental/tzdb.cpp +4 -1
  1461. package/libcxx/src/filesystem/error.h +4 -22
  1462. package/libcxx/src/filesystem/format_string.h +9 -18
  1463. package/libcxx/src/filesystem/int128_builtins.cpp +2 -0
  1464. package/libcxx/src/filesystem/operations.cpp +2 -9
  1465. package/libcxx/src/filesystem/path.cpp +3 -1
  1466. package/libcxx/src/include/aligned_alloc.h +65 -0
  1467. package/libcxx/src/include/config_elast.h +1 -1
  1468. package/libcxx/src/include/from_chars_floating_point.h +11 -7
  1469. package/libcxx/src/include/overridable_function.h +8 -10
  1470. package/libcxx/src/iostream.cpp +56 -37
  1471. package/libcxx/src/locale.cpp +213 -196
  1472. package/libcxx/src/memory.cpp +12 -14
  1473. package/libcxx/src/mutex_destructor.cpp +1 -1
  1474. package/libcxx/src/new.cpp +5 -5
  1475. package/libcxx/src/optional.cpp +4 -0
  1476. package/libcxx/src/print.cpp +9 -1
  1477. package/libcxx/src/random.cpp +0 -26
  1478. package/libcxx/src/string.cpp +10 -25
  1479. package/libcxx/src/support/runtime/exception_fallback.ipp +2 -0
  1480. package/libcxx/src/support/runtime/exception_glibcxx.ipp +3 -0
  1481. package/libcxx/src/support/runtime/exception_libcxxabi.ipp +6 -2
  1482. package/libcxx/src/support/runtime/exception_libcxxrt.ipp +2 -0
  1483. package/libcxx/src/support/runtime/exception_msvc.ipp +2 -0
  1484. package/libcxx/src/support/runtime/exception_pointer_cxxabi.ipp +9 -10
  1485. package/libcxx/src/support/runtime/exception_pointer_glibcxx.ipp +2 -0
  1486. package/libcxx/src/support/runtime/exception_pointer_msvc.ipp +1 -0
  1487. package/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp +1 -0
  1488. package/libcxx/src/support/win32/locale_win32.cpp +1 -1
  1489. package/libcxx/src/system_error.cpp +2 -0
  1490. package/libcxx/src/thread.cpp +1 -3
  1491. package/libcxx/src/valarray.cpp +1 -2
  1492. package/libcxx/src/vector.cpp +2 -2
  1493. package/libcxxabi/include/__cxxabi_config.h +42 -23
  1494. package/libcxxabi/src/cxa_exception.cpp +4 -2
  1495. package/libcxxabi/src/cxa_exception.h +16 -14
  1496. package/libcxxabi/src/cxa_personality.cpp +126 -9
  1497. package/libcxxabi/src/cxa_thread_atexit.cpp +2 -1
  1498. package/libcxxabi/src/demangle/DemangleConfig.h +4 -0
  1499. package/libcxxabi/src/demangle/ItaniumDemangle.h +9 -6
  1500. package/libcxxabi/src/demangle/Utility.h +21 -7
  1501. package/libcxxabi/src/fallback_malloc.cpp +1 -1
  1502. package/libcxxabi/src/private_typeinfo.cpp +6 -0
  1503. package/libcxxabi/src/stdlib_new_delete.cpp +5 -5
  1504. package/libtsan/LICENSE.TXT +311 -0
  1505. package/libtsan/builtins/assembly.h +41 -8
  1506. package/libtsan/interception/interception_win.cpp +4 -0
  1507. package/libtsan/sanitizer_common/sanitizer_allocator_primary32.h +1 -0
  1508. package/libtsan/sanitizer_common/sanitizer_allocator_primary64.h +18 -0
  1509. package/libtsan/sanitizer_common/sanitizer_common.h +15 -2
  1510. package/libtsan/sanitizer_common/sanitizer_common_interceptors.inc +30 -4
  1511. package/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +4 -0
  1512. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S +2 -1
  1513. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S +2 -0
  1514. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S +2 -0
  1515. package/libtsan/sanitizer_common/sanitizer_common_syscalls.inc +18 -0
  1516. package/libtsan/sanitizer_common/sanitizer_file.cpp +40 -12
  1517. package/libtsan/sanitizer_common/sanitizer_file.h +3 -0
  1518. package/libtsan/sanitizer_common/sanitizer_flags.inc +7 -0
  1519. package/libtsan/sanitizer_common/sanitizer_fuchsia.cpp +30 -3
  1520. package/libtsan/sanitizer_common/sanitizer_haiku.cpp +2 -2
  1521. package/libtsan/sanitizer_common/sanitizer_internal_defs.h +1 -1
  1522. package/libtsan/sanitizer_common/sanitizer_libc.cpp +8 -0
  1523. package/libtsan/sanitizer_common/sanitizer_libc.h +1 -0
  1524. package/libtsan/sanitizer_common/sanitizer_linux.cpp +15 -7
  1525. package/libtsan/sanitizer_common/sanitizer_linux.h +3 -3
  1526. package/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp +1 -0
  1527. package/libtsan/sanitizer_common/sanitizer_mac.cpp +255 -104
  1528. package/libtsan/sanitizer_common/sanitizer_mac.h +5 -0
  1529. package/libtsan/sanitizer_common/sanitizer_netbsd.cpp +2 -2
  1530. package/libtsan/sanitizer_common/sanitizer_platform.h +27 -1
  1531. package/libtsan/sanitizer_common/sanitizer_platform_interceptors.h +5 -4
  1532. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp +15 -17
  1533. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h +32 -6
  1534. package/libtsan/sanitizer_common/sanitizer_posix.cpp +3 -12
  1535. package/libtsan/sanitizer_common/sanitizer_posix.h +2 -1
  1536. package/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp +19 -0
  1537. package/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp +102 -37
  1538. package/libtsan/sanitizer_common/sanitizer_redefine_builtins.h +1 -1
  1539. package/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc +40 -2
  1540. package/libtsan/sanitizer_common/sanitizer_stoptheworld.h +1 -1
  1541. package/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp +83 -12
  1542. package/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp +3 -3
  1543. package/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp +7 -7
  1544. package/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp +2 -2
  1545. package/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h +5 -1
  1546. package/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp +11 -1
  1547. package/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp +86 -29
  1548. package/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp +27 -16
  1549. package/libtsan/sanitizer_common/sanitizer_thread_registry.cpp +5 -4
  1550. package/libtsan/sanitizer_common/sanitizer_thread_registry.h +4 -4
  1551. package/libtsan/sanitizer_common/sanitizer_win.cpp +1 -3
  1552. package/libtsan/tsan_debugging.cpp +2 -2
  1553. package/libtsan/tsan_flags.cpp +37 -0
  1554. package/libtsan/tsan_flags.h +8 -0
  1555. package/libtsan/tsan_flags.inc +12 -0
  1556. package/libtsan/tsan_interceptors.h +9 -1
  1557. package/libtsan/tsan_interceptors_mac.cpp +19 -0
  1558. package/libtsan/tsan_interceptors_posix.cpp +78 -32
  1559. package/libtsan/tsan_interface.h +3 -3
  1560. package/libtsan/tsan_interface_ann.cpp +23 -9
  1561. package/libtsan/tsan_mman.cpp +18 -4
  1562. package/libtsan/tsan_platform.h +44 -7
  1563. package/libtsan/tsan_platform_linux.cpp +42 -14
  1564. package/libtsan/tsan_platform_mac.cpp +16 -3
  1565. package/libtsan/tsan_report.h +14 -1
  1566. package/libtsan/tsan_rtl.cpp +14 -0
  1567. package/libtsan/tsan_rtl.h +7 -2
  1568. package/libtsan/tsan_rtl_aarch64.S +3 -5
  1569. package/libtsan/tsan_rtl_access.cpp +8 -3
  1570. package/libtsan/tsan_rtl_amd64.S +2 -0
  1571. package/libtsan/tsan_rtl_mutex.cpp +94 -49
  1572. package/libtsan/tsan_rtl_report.cpp +132 -65
  1573. package/libtsan/tsan_rtl_thread.cpp +31 -9
  1574. package/libtsan/tsan_symbolize.cpp +1 -1
  1575. package/libtsan/tsan_symbolize.h +1 -1
  1576. package/libtsan/tsan_trace.h +1 -1
  1577. package/libunwind/include/__libunwind_config.h +11 -2
  1578. package/libunwind/include/libunwind.h +117 -11
  1579. package/libunwind/include/unwind_arm_ehabi.h +4 -1
  1580. package/libunwind/src/AddressSpace.hpp +42 -20
  1581. package/libunwind/src/CompactUnwinder.hpp +16 -5
  1582. package/libunwind/src/DwarfInstructions.hpp +24 -13
  1583. package/libunwind/src/DwarfParser.hpp +62 -23
  1584. package/libunwind/src/EHHeaderParser.hpp +7 -4
  1585. package/libunwind/src/Registers.hpp +226 -22
  1586. package/libunwind/src/Unwind-seh.cpp +6 -7
  1587. package/libunwind/src/Unwind-wasm.c +7 -7
  1588. package/libunwind/src/UnwindCursor.hpp +167 -49
  1589. package/libunwind/src/UnwindLevel1.c +46 -17
  1590. package/libunwind/src/UnwindRegistersRestore.S +46 -5
  1591. package/libunwind/src/UnwindRegistersSave.S +86 -2
  1592. package/libunwind/src/assembly.h +5 -1
  1593. package/libunwind/src/config.h +9 -0
  1594. package/libunwind/src/gcc_personality_v0.c +79 -6
  1595. package/libunwind/src/libunwind.cpp +104 -4
  1596. package/libunwind/src/libunwind_ext.h +7 -1
  1597. package/libunwind/src/shadow_stack_unwind.h +2 -2
  1598. package/lldb/pretty_printers.py +949 -0
  1599. package/package.json +1 -1
  1600. package/std/Build/Cache/Path.zig +42 -43
  1601. package/std/Build/Cache.zig +19 -9
  1602. package/std/Build/Configuration.zig +3480 -0
  1603. package/std/Build/Module.zig +99 -225
  1604. package/std/Build/Step/CheckFile.zig +17 -63
  1605. package/std/Build/Step/Compile.zig +103 -1426
  1606. package/std/Build/Step/ConfigHeader.zig +56 -944
  1607. package/std/Build/Step/Fail.zig +10 -20
  1608. package/std/Build/Step/FindProgram.zig +31 -0
  1609. package/std/Build/Step/Fmt.zig +22 -57
  1610. package/std/Build/Step/InstallArtifact.zig +26 -141
  1611. package/std/Build/Step/InstallDir.zig +14 -67
  1612. package/std/Build/Step/InstallFile.zig +12 -21
  1613. package/std/Build/Step/ObjCopy.zig +82 -199
  1614. package/std/Build/Step/Options.zig +55 -284
  1615. package/std/Build/Step/Run.zig +138 -2246
  1616. package/std/Build/Step/TranslateC.zig +55 -164
  1617. package/std/Build/Step/UpdateSourceFiles.zig +38 -91
  1618. package/std/Build/Step/WriteFile.zig +113 -328
  1619. package/std/Build/Step.zig +45 -916
  1620. package/std/Build/abi.zig +1 -1
  1621. package/std/Build.zig +725 -770
  1622. package/std/Io/Dir.zig +12 -7
  1623. package/std/Io/Dispatch.zig +5 -5
  1624. package/std/Io/File/Writer.zig +8 -6
  1625. package/std/Io/File.zig +6 -9
  1626. package/std/Io/Kqueue.zig +5 -5
  1627. package/std/Io/Reader.zig +66 -23
  1628. package/std/Io/RwLock.zig +2 -0
  1629. package/std/Io/Terminal.zig +1 -1
  1630. package/std/Io/Threaded.zig +36 -30
  1631. package/std/Io/Uring.zig +11 -9
  1632. package/std/Io/Writer.zig +125 -37
  1633. package/std/Io/net/HostName.zig +11 -6
  1634. package/std/Io/net.zig +3 -1
  1635. package/std/Io.zig +29 -19
  1636. package/std/Progress.zig +2 -2
  1637. package/std/Random/ChaCha.zig +2 -2
  1638. package/std/Random/benchmark.zig +2 -2
  1639. package/std/Random.zig +6 -6
  1640. package/std/SemanticVersion.zig +1 -1
  1641. package/std/Target/Query.zig +4 -5
  1642. package/std/Target/aarch64.zig +622 -79
  1643. package/std/Target/alpha.zig +2 -2
  1644. package/std/Target/amdgcn.zig +423 -23
  1645. package/std/Target/arc.zig +2 -2
  1646. package/std/Target/arm.zig +42 -8
  1647. package/std/Target/avr.zig +2 -2
  1648. package/std/Target/bpf.zig +8 -2
  1649. package/std/Target/csky.zig +2 -2
  1650. package/std/Target/hexagon.zig +43 -8
  1651. package/std/Target/hppa.zig +2 -2
  1652. package/std/Target/kvx.zig +2 -2
  1653. package/std/Target/lanai.zig +2 -2
  1654. package/std/Target/loongarch.zig +20 -2
  1655. package/std/Target/m68k.zig +2 -2
  1656. package/std/Target/mips.zig +8 -2
  1657. package/std/Target/msp430.zig +2 -2
  1658. package/std/Target/nvptx.zig +60 -37
  1659. package/std/Target/powerpc.zig +29 -21
  1660. package/std/Target/propeller.zig +2 -2
  1661. package/std/Target/riscv.zig +514 -179
  1662. package/std/Target/s390x.zig +2 -2
  1663. package/std/Target/sparc.zig +19 -2
  1664. package/std/Target/spirv.zig +3 -3
  1665. package/std/Target/ve.zig +2 -2
  1666. package/std/Target/wasm.zig +9 -2
  1667. package/std/Target/x86.zig +202 -33
  1668. package/std/Target/xcore.zig +2 -2
  1669. package/std/Target/xtensa.zig +67 -2
  1670. package/std/Target.zig +103 -63
  1671. package/std/Thread.zig +39 -6
  1672. package/std/array_hash_map.zig +104 -59
  1673. package/std/array_list.zig +20 -35
  1674. package/std/ascii.zig +0 -9
  1675. package/std/atomic.zig +2 -0
  1676. package/std/base64.zig +5 -5
  1677. package/std/bit_set.zig +85 -93
  1678. package/std/c/darwin.zig +7 -1
  1679. package/std/c.zig +88 -29
  1680. package/std/coff.zig +1 -1
  1681. package/std/compress/flate/Compress.zig +4 -2
  1682. package/std/compress/flate/Decompress.zig +3 -4
  1683. package/std/compress/zstd/Decompress.zig +7 -9
  1684. package/std/compress/zstd.zig +0 -11
  1685. package/std/crypto/25519/curve25519.zig +2 -2
  1686. package/std/crypto/25519/edwards25519.zig +3 -3
  1687. package/std/crypto/25519/ristretto255.zig +2 -2
  1688. package/std/crypto/25519/scalar.zig +6 -6
  1689. package/std/crypto/25519/x25519.zig +1 -1
  1690. package/std/crypto/Certificate.zig +14 -2
  1691. package/std/crypto/Sha1.zig +1 -1
  1692. package/std/crypto/aegis.zig +45 -39
  1693. package/std/crypto/aes/aesni.zig +1 -1
  1694. package/std/crypto/aes/armcrypto.zig +4 -4
  1695. package/std/crypto/aes/soft.zig +4 -4
  1696. package/std/crypto/aes.zig +12 -0
  1697. package/std/crypto/aes_ccm.zig +22 -22
  1698. package/std/crypto/aes_gcm.zig +10 -12
  1699. package/std/crypto/aes_ocb.zig +9 -9
  1700. package/std/crypto/aes_siv.zig +4 -2
  1701. package/std/crypto/argon2.zig +15 -15
  1702. package/std/crypto/ascon.zig +75 -35
  1703. package/std/crypto/bcrypt.zig +20 -10
  1704. package/std/crypto/benchmark.zig +7 -7
  1705. package/std/crypto/blake2.zig +100 -64
  1706. package/std/crypto/cbc_mac.zig +1 -1
  1707. package/std/crypto/chacha20.zig +10 -10
  1708. package/std/crypto/cmac.zig +3 -3
  1709. package/std/crypto/codecs/asn1/Oid.zig +22 -11
  1710. package/std/crypto/codecs/asn1/der/Decoder.zig +51 -20
  1711. package/std/crypto/codecs/asn1/der/Encoder.zig +111 -46
  1712. package/std/crypto/codecs/asn1/der.zig +42 -0
  1713. package/std/crypto/codecs/asn1.zig +97 -38
  1714. package/std/crypto/codecs/base64_hex_ct.zig +3 -5
  1715. package/std/crypto/codecs.zig +6 -0
  1716. package/std/crypto/ecdsa.zig +9 -9
  1717. package/std/crypto/ff.zig +7 -6
  1718. package/std/crypto/ghash_polyval.zig +4 -4
  1719. package/std/crypto/hkdf.zig +1 -1
  1720. package/std/crypto/isap.zig +3 -3
  1721. package/std/crypto/kangarootwelve.zig +1 -1
  1722. package/std/crypto/keccak_p.zig +8 -8
  1723. package/std/crypto/md5.zig +1 -1
  1724. package/std/crypto/ml_dsa.zig +39 -39
  1725. package/std/crypto/ml_kem.zig +12 -34
  1726. package/std/crypto/modes.zig +2 -2
  1727. package/std/crypto/pbkdf2.zig +1 -1
  1728. package/std/crypto/pcurves/common.zig +4 -5
  1729. package/std/crypto/pcurves/p256/scalar.zig +3 -3
  1730. package/std/crypto/pcurves/p384/scalar.zig +2 -2
  1731. package/std/crypto/pcurves/secp256k1/scalar.zig +3 -3
  1732. package/std/crypto/pcurves/tests/p256.zig +5 -5
  1733. package/std/crypto/pcurves/tests/p384.zig +5 -5
  1734. package/std/crypto/pcurves/tests/secp256k1.zig +3 -3
  1735. package/std/crypto/phc_encoding.zig +23 -20
  1736. package/std/crypto/salsa20.zig +8 -14
  1737. package/std/crypto/sha2.zig +2 -2
  1738. package/std/crypto/sha3.zig +2 -4
  1739. package/std/crypto/siphash.zig +1 -1
  1740. package/std/crypto/timing_safe.zig +11 -10
  1741. package/std/crypto/tls/Client.zig +107 -16
  1742. package/std/crypto/tls.zig +2 -2
  1743. package/std/crypto.zig +4 -3
  1744. package/std/debug/Dwarf/Unwind/VirtualMachine.zig +11 -5
  1745. package/std/debug/Dwarf.zig +21 -12
  1746. package/std/debug/ElfFile.zig +12 -8
  1747. package/std/debug/MachOFile.zig +2 -2
  1748. package/std/debug/Pdb.zig +86 -51
  1749. package/std/debug/SelfInfo/Elf.zig +13 -9
  1750. package/std/debug/SelfInfo/MachO.zig +44 -17
  1751. package/std/debug/SelfInfo/Windows.zig +5 -7
  1752. package/std/debug/cpu_context.zig +231 -39
  1753. package/std/debug.zig +16 -8
  1754. package/std/deque.zig +1 -1
  1755. package/std/elf.zig +29 -12
  1756. package/std/enums.zig +74 -87
  1757. package/std/fmt/float.zig +2 -0
  1758. package/std/fmt/parse_float/decimal.zig +1 -1
  1759. package/std/fmt/parse_float.zig +1 -1
  1760. package/std/fmt.zig +7 -8
  1761. package/std/fs/path.zig +7 -5
  1762. package/std/gpu.zig +1 -1
  1763. package/std/hash/Adler32.zig +3 -3
  1764. package/std/hash/auto_hash.zig +9 -8
  1765. package/std/hash/benchmark.zig +2 -2
  1766. package/std/hash/verify.zig +3 -3
  1767. package/std/hash/wyhash.zig +2 -2
  1768. package/std/hash/xxhash.zig +0 -6
  1769. package/std/hash_map.zig +22 -2
  1770. package/std/heap/ArenaAllocator.zig +3 -5
  1771. package/std/heap/BrkAllocator.zig +1 -1
  1772. package/std/heap/BufferFirstAllocator.zig +165 -0
  1773. package/std/heap/SafeAllocator.zig +2180 -0
  1774. package/std/heap/debug_allocator.zig +2 -2
  1775. package/std/heap/memory_pool.zig +34 -197
  1776. package/std/heap.zig +20 -133
  1777. package/std/http/Client.zig +2 -2
  1778. package/std/http.zig +4 -5
  1779. package/std/json/Scanner.zig +2 -2
  1780. package/std/json/Stringify.zig +14 -14
  1781. package/std/json/static.zig +49 -32
  1782. package/std/json.zig +1 -1
  1783. package/std/{builtin → lang}/assembly.zig +71 -0
  1784. package/std/{builtin.zig → lang.zig} +124 -100
  1785. package/std/leb128.zig +2 -2
  1786. package/std/math/acos.zig +6 -0
  1787. package/std/math/asin.zig +6 -0
  1788. package/std/math/atan.zig +5 -0
  1789. package/std/math/big/int.zig +5 -5
  1790. package/std/math/big.zig +4 -4
  1791. package/std/math/copysign.zig +1 -1
  1792. package/std/math/float.zig +62 -0
  1793. package/std/math/frexp.zig +4 -4
  1794. package/std/math/hypot.zig +4 -0
  1795. package/std/math/ilogb.zig +1 -1
  1796. package/std/math/isfinite.zig +1 -1
  1797. package/std/math/isinf.zig +1 -1
  1798. package/std/math/isnan.zig +6 -2
  1799. package/std/math/isnormal.zig +2 -2
  1800. package/std/math/iszero.zig +2 -2
  1801. package/std/math/ldexp.zig +2 -2
  1802. package/std/math/log10.zig +0 -2
  1803. package/std/math/log1p.zig +13 -19
  1804. package/std/math/modf.zig +1 -2
  1805. package/std/math/nextafter.zig +3 -4
  1806. package/std/math/pow.zig +1 -1
  1807. package/std/math/powi.zig +2 -3
  1808. package/std/math/signbit.zig +0 -1
  1809. package/std/math.zig +28 -28
  1810. package/std/mem/Allocator.zig +14 -18
  1811. package/std/mem.zig +138 -176
  1812. package/std/meta/trailer_flags.zig +27 -20
  1813. package/std/meta.zig +133 -231
  1814. package/std/multi_array_list.zig +70 -54
  1815. package/std/os/emscripten.zig +7 -6
  1816. package/std/os/linux/IoUring.zig +2 -0
  1817. package/std/os/linux/alpha.zig +358 -0
  1818. package/std/os/linux/arm.zig +0 -26
  1819. package/std/os/linux/bpf.zig +6 -0
  1820. package/std/os/linux/csky.zig +165 -0
  1821. package/std/os/linux/ioctl.zig +3 -2
  1822. package/std/os/linux/microblaze.zig +170 -0
  1823. package/std/os/linux/sh.zig +239 -0
  1824. package/std/os/linux/sparc.zig +277 -0
  1825. package/std/os/linux/sparc64.zig +44 -30
  1826. package/std/os/linux/syscalls.zig +2246 -13
  1827. package/std/os/linux/tls.zig +12 -1
  1828. package/std/os/linux/x86.zig +2 -2
  1829. package/std/os/linux/xtensa.zig +193 -0
  1830. package/std/os/linux.zig +829 -58
  1831. package/std/os/plan9.zig +1 -1
  1832. package/std/os/uefi/hii.zig +1 -1
  1833. package/std/os/uefi/protocol/device_path.zig +8 -7
  1834. package/std/os/uefi/protocol/file.zig +16 -0
  1835. package/std/os/uefi/tables/boot_services.zig +9 -8
  1836. package/std/os/uefi/tables/runtime_services.zig +1 -1
  1837. package/std/os/windows.zig +139 -16
  1838. package/std/os.zig +0 -15
  1839. package/std/pie.zig +19 -0
  1840. package/std/posix.zig +2 -2
  1841. package/std/process/Child.zig +20 -0
  1842. package/std/process/Environ.zig +28 -4
  1843. package/std/process.zig +13 -5
  1844. package/std/simd.zig +4 -21
  1845. package/std/sort/pdq.zig +91 -13
  1846. package/std/start.zig +66 -23
  1847. package/std/static_string_map.zig +87 -0
  1848. package/std/std.zig +8 -1
  1849. package/std/tar/Writer.zig +39 -33
  1850. package/std/tar.zig +8 -4
  1851. package/std/testing/Smith.zig +35 -21
  1852. package/std/testing.zig +85 -30
  1853. package/std/unicode.zig +13 -8
  1854. package/std/zig/Ast/Render.zig +6 -30
  1855. package/std/zig/Ast.zig +16 -41
  1856. package/std/zig/AstGen.zig +226 -300
  1857. package/std/zig/AstRlAnnotate.zig +5 -11
  1858. package/std/zig/AstSmith.zig +13 -20
  1859. package/std/zig/BuiltinFn.zig +8 -0
  1860. package/std/zig/ErrorBundle.zig +22 -15
  1861. package/std/zig/LibCDirs.zig +14 -7
  1862. package/std/zig/LibCInstallation.zig +61 -26
  1863. package/std/zig/Parse.zig +19 -84
  1864. package/std/zig/PkgConfig.zig +151 -0
  1865. package/std/zig/TokenSmith.zig +0 -6
  1866. package/std/zig/WindowsSdk.zig +18 -18
  1867. package/std/zig/Zir.zig +36 -76
  1868. package/std/zig/ZonGen.zig +19 -27
  1869. package/std/zig/c_translation/helpers.zig +2 -2
  1870. package/std/zig/llvm/BitcodeReader.zig +3 -3
  1871. package/std/zig/llvm/Builder.zig +163 -126
  1872. package/std/zig/llvm/bitcode_writer.zig +7 -7
  1873. package/std/zig/llvm/ir.zig +8 -8
  1874. package/std/zig/system/arm.zig +56 -2
  1875. package/std/zig/system/darwin/macos.zig +11 -7
  1876. package/std/zig/system/linux.zig +4 -0
  1877. package/std/zig/system/loongarch.zig +25 -9
  1878. package/std/zig/system/windows.zig +45 -12
  1879. package/std/zig/system/x86.zig +60 -16
  1880. package/std/zig/system.zig +23 -30
  1881. package/std/zig/target.zig +3 -5
  1882. package/std/zig/tokenizer.zig +4 -43
  1883. package/std/zig.zig +114 -26
  1884. package/std/zip.zig +5 -49
  1885. package/std/zon/Serializer.zig +35 -25
  1886. package/std/zon/parse.zig +93 -63
  1887. package/ubsan_rt.zig +3 -3
  1888. package/zig.h +61 -11
  1889. package/compiler/build_runner.zig +0 -1857
  1890. package/compiler_rt/long_double.zig +0 -37
  1891. package/include/amxbf16transposeintrin.h +0 -94
  1892. package/include/amxcomplextransposeintrin.h +0 -303
  1893. package/include/amxfp16transposeintrin.h +0 -94
  1894. package/include/amxmovrstransposeintrin.h +0 -200
  1895. package/include/amxtf32transposeintrin.h +0 -105
  1896. package/include/amxtransposeintrin.h +0 -248
  1897. package/libc/include/arm-netbsd-eabi/machine/frame.h +0 -130
  1898. package/libc/include/generic-netbsd/powerpc/bswap.h +0 -8
  1899. package/libc/include/hexagon-linux-any/asm/signal.h +0 -29
  1900. package/libc/include/mips-netbsd-eabi/machine/psl.h +0 -3
  1901. package/libc/include/mips-netbsd-eabi/machine/reloc.h +0 -3
  1902. package/libc/include/mips-netbsd-eabi/machine/trap.h +0 -3
  1903. package/libc/include/mips64el-openbsd-none/loongson/hibernate.h +0 -33
  1904. package/libc/include/mips64el-openbsd-none/loongson/hibernate_var.h +0 -39
  1905. package/libc/include/mips64el-openbsd-none/machine/hibernate.h +0 -33
  1906. package/libc/include/mips64el-openbsd-none/machine/hibernate_var.h +0 -39
  1907. package/libc/include/s390x-linux-any/asm/tape390.h +0 -103
  1908. package/libc/mingw/math/lrintl.c +0 -18
  1909. package/libc/mingw/math/lroundl.c +0 -37
  1910. package/libc/mingw/math/rintl.c +0 -16
  1911. package/libc/mingw/winpthreads/spinlock.c +0 -82
  1912. package/libc/musl/src/linux/tee.c +0 -8
  1913. package/libc/musl/src/math/aarch64/lround.c +0 -8
  1914. package/libc/musl/src/math/aarch64/lroundf.c +0 -8
  1915. package/libc/musl/src/math/i386/log1p.s +0 -25
  1916. package/libc/musl/src/math/i386/log1pf.s +0 -26
  1917. package/libc/musl/src/math/i386/lrintl.c +0 -8
  1918. package/libc/musl/src/math/i386/rintl.c +0 -7
  1919. package/libc/musl/src/math/log1p.c +0 -122
  1920. package/libc/musl/src/math/log1pf.c +0 -77
  1921. package/libc/musl/src/math/lrintl.c +0 -36
  1922. package/libc/musl/src/math/lround.c +0 -6
  1923. package/libc/musl/src/math/lroundf.c +0 -6
  1924. package/libc/musl/src/math/lroundl.c +0 -6
  1925. package/libc/musl/src/math/powerpc64/lround.c +0 -18
  1926. package/libc/musl/src/math/powerpc64/lroundf.c +0 -18
  1927. package/libc/musl/src/math/rintl.c +0 -29
  1928. package/libc/musl/src/math/s390x/rintl.c +0 -15
  1929. package/libc/musl/src/math/x32/lrintl.s +0 -7
  1930. package/libc/musl/src/math/x32/rintl.s +0 -6
  1931. package/libc/musl/src/math/x86_64/lrintl.c +0 -8
  1932. package/libc/musl/src/math/x86_64/rintl.c +0 -7
  1933. package/libc/musl/src/string/strdup.c +0 -10
  1934. package/libc/musl/src/string/strndup.c +0 -12
  1935. package/libc/musl/src/string/wcsdup.c +0 -10
  1936. package/libc/musl/src/thread/pthread_spin_destroy.c +0 -6
  1937. package/libc/musl/src/thread/pthread_spin_init.c +0 -6
  1938. package/libc/musl/src/thread/pthread_spin_lock.c +0 -8
  1939. package/libc/musl/src/thread/pthread_spin_trylock.c +0 -7
  1940. package/libc/musl/src/thread/pthread_spin_unlock.c +0 -7
  1941. package/libc/wasi/thread-stub/pthread_spin_lock.c +0 -8
  1942. package/libc/wasi/thread-stub/pthread_spin_trylock.c +0 -8
  1943. package/libc/wasi/thread-stub/pthread_spin_unlock.c +0 -7
  1944. package/libtsan/sanitizer_common/sanitizer_coverage_interface.inc +0 -43
  1945. package/std/Build/Step/CheckObject.zig +0 -2764
  1946. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/ansi.h +0 -0
  1947. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/aout_machdep.h +0 -0
  1948. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/asm.h +0 -0
  1949. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/bswap.h +0 -0
  1950. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/cdefs.h +0 -0
  1951. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/cpu.h +0 -0
  1952. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/disklabel.h +0 -0
  1953. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/elf_machdep.h +0 -0
  1954. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/endian.h +0 -0
  1955. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/endian_machdep.h +0 -0
  1956. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/fenv.h +0 -0
  1957. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/float.h +0 -0
  1958. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/fpu.h +0 -0
  1959. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/frame.h +0 -0
  1960. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/ieee.h +0 -0
  1961. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/ieeefp.h +0 -0
  1962. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/int_const.h +0 -0
  1963. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/int_fmtio.h +0 -0
  1964. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/int_limits.h +0 -0
  1965. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/int_mwgwtypes.h +0 -0
  1966. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/int_types.h +0 -0
  1967. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/intr.h +0 -0
  1968. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/kcore.h +0 -0
  1969. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/limits.h +0 -0
  1970. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/lock.h +0 -0
  1971. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/math.h +0 -0
  1972. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/mcontext.h +0 -0
  1973. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/mutex.h +0 -0
  1974. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/param.h +0 -0
  1975. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/pcb.h +0 -0
  1976. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/pmap.h +0 -0
  1977. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/proc.h +0 -0
  1978. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/profile.h +0 -0
  1979. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/psl.h +0 -0
  1980. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/pte.h +0 -0
  1981. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/ptrace.h +0 -0
  1982. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/reg.h +0 -0
  1983. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/reloc.h +0 -0
  1984. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/rwlock.h +0 -0
  1985. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/setjmp.h +0 -0
  1986. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/signal.h +0 -0
  1987. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/sljit_machdep.h +0 -0
  1988. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/trap.h +0 -0
  1989. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/types.h +0 -0
  1990. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/vmparam.h +0 -0
  1991. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/evbppc/wchar_limits.h +0 -0
  1992. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/machine/fpu.h +0 -0
  1993. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/machine/intr.h +0 -0
  1994. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ansi.h +0 -0
  1995. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/aout_machdep.h +0 -0
  1996. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/cdefs.h +0 -0
  1997. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/elf_machdep.h +0 -0
  1998. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/endian.h +0 -0
  1999. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/endian_machdep.h +0 -0
  2000. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/float.h +0 -0
  2001. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/fpu.h +0 -0
  2002. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/frame.h +0 -0
  2003. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ibm4xx/cpu.h +0 -0
  2004. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ibm4xx/spr.h +0 -0
  2005. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ibm4xx/tlb.h +0 -0
  2006. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ieeefp.h +0 -0
  2007. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/int_const.h +0 -0
  2008. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/int_fmtio.h +0 -0
  2009. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/int_limits.h +0 -0
  2010. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/int_mwgwtypes.h +0 -0
  2011. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/int_types.h +0 -0
  2012. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/kcore.h +0 -0
  2013. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/lock.h +0 -0
  2014. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/math.h +0 -0
  2015. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/bat.h +0 -0
  2016. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/hid_601.h +0 -0
  2017. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/pte.h +0 -0
  2018. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/spr.h +0 -0
  2019. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/sr_601.h +0 -0
  2020. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/oea/vmparam.h +0 -0
  2021. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/param.h +0 -0
  2022. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/pcb.h +0 -0
  2023. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/proc.h +0 -0
  2024. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/profile.h +0 -0
  2025. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/pte.h +0 -0
  2026. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/ptrace.h +0 -0
  2027. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/reg.h +0 -0
  2028. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/reloc.h +0 -0
  2029. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/rwlock.h +0 -0
  2030. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/setjmp.h +0 -0
  2031. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/signal.h +0 -0
  2032. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/sljit_machdep.h +0 -0
  2033. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/spr.h +0 -0
  2034. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/trap.h +0 -0
  2035. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/types.h +0 -0
  2036. /package/libc/include/{generic-netbsd → powerpc-netbsd-eabi}/powerpc/wchar_limits.h +0 -0
@@ -74,25 +74,25 @@ src_hasher: std.zig.SrcHasher,
74
74
  const InnerError = error{ OutOfMemory, AnalysisFail };
75
75
 
76
76
  fn addExtra(astgen: *AstGen, extra: anytype) Allocator.Error!u32 {
77
- const fields = std.meta.fields(@TypeOf(extra));
78
- try astgen.extra.ensureUnusedCapacity(astgen.gpa, fields.len);
77
+ const field_count = std.meta.fieldNames(@TypeOf(extra)).len;
78
+ try astgen.extra.ensureUnusedCapacity(astgen.gpa, field_count);
79
79
  return addExtraAssumeCapacity(astgen, extra);
80
80
  }
81
81
 
82
82
  fn addExtraAssumeCapacity(astgen: *AstGen, extra: anytype) u32 {
83
- const fields = std.meta.fields(@TypeOf(extra));
83
+ const field_count = std.meta.fieldNames(@TypeOf(extra)).len;
84
84
  const extra_index: u32 = @intCast(astgen.extra.items.len);
85
- astgen.extra.items.len += fields.len;
85
+ astgen.extra.items.len += field_count;
86
86
  setExtra(astgen, extra_index, extra);
87
87
  return extra_index;
88
88
  }
89
89
 
90
90
  fn setExtra(astgen: *AstGen, index: usize, extra: anytype) void {
91
- const fields = std.meta.fields(@TypeOf(extra));
91
+ const info = @typeInfo(@TypeOf(extra)).@"struct";
92
92
  var i = index;
93
- inline for (fields) |field| {
94
- astgen.extra.items[i] = switch (field.type) {
95
- u32 => @field(extra, field.name),
93
+ inline for (info.field_names, info.field_types) |field_name, field_type| {
94
+ astgen.extra.items[i] = switch (field_type) {
95
+ u32 => @field(extra, field_name),
96
96
 
97
97
  Zir.Inst.Ref,
98
98
  Zir.Inst.Index,
@@ -103,13 +103,13 @@ fn setExtra(astgen: *AstGen, index: usize, extra: anytype) void {
103
103
  Ast.OptionalTokenIndex,
104
104
  Ast.Node.Index,
105
105
  Ast.Node.OptionalIndex,
106
- => @intFromEnum(@field(extra, field.name)),
106
+ => @intFromEnum(@field(extra, field_name)),
107
107
 
108
108
  Ast.TokenOffset,
109
109
  Ast.OptionalTokenOffset,
110
110
  Ast.Node.Offset,
111
111
  Ast.Node.OptionalOffset,
112
- => @bitCast(@intFromEnum(@field(extra, field.name))),
112
+ => @bitCast(@intFromEnum(@field(extra, field_name))),
113
113
 
114
114
  i32,
115
115
  Zir.Inst.Call.Flags,
@@ -118,7 +118,7 @@ fn setExtra(astgen: *AstGen, index: usize, extra: anytype) void {
118
118
  Zir.Inst.FuncFancy.Bits,
119
119
  Zir.Inst.Param.Type,
120
120
  Zir.Inst.Func.RetTy,
121
- => @bitCast(@field(extra, field.name)),
121
+ => @bitCast(@field(extra, field_name)),
122
122
 
123
123
  else => @compileError("bad field type"),
124
124
  };
@@ -166,7 +166,7 @@ pub fn generate(gpa: Allocator, tree: Ast) Allocator.Error!Zir {
166
166
  try astgen.instructions.ensureTotalCapacity(gpa, tree.nodes.len);
167
167
 
168
168
  // First few indexes of extra are reserved and set at the end.
169
- const reserved_count = @typeInfo(Zir.ExtraIndex).@"enum".fields.len;
169
+ const reserved_count = @typeInfo(Zir.ExtraIndex).@"enum".field_names.len;
170
170
  try astgen.extra.ensureTotalCapacity(gpa, tree.nodes.len + reserved_count);
171
171
  astgen.extra.items.len += reserved_count;
172
172
 
@@ -199,7 +199,7 @@ pub fn generate(gpa: Allocator, tree: Ast) Allocator.Error!Zir {
199
199
  assert(struct_decl_ref.toIndex().? == .main_struct_inst);
200
200
  break :fatal false;
201
201
  } else |err| switch (err) {
202
- error.OutOfMemory => return error.OutOfMemory,
202
+ error.OutOfMemory => |e| return e,
203
203
  error.AnalysisFail => break :fatal true, // Handled via compile_errors below.
204
204
  }
205
205
  } else fatal: {
@@ -212,7 +212,7 @@ pub fn generate(gpa: Allocator, tree: Ast) Allocator.Error!Zir {
212
212
  astgen.extra.items[err_index] = 0;
213
213
  } else {
214
214
  try astgen.extra.ensureUnusedCapacity(gpa, 1 + astgen.compile_errors.items.len *
215
- @typeInfo(Zir.Inst.CompileErrors.Item).@"struct".fields.len);
215
+ @typeInfo(Zir.Inst.CompileErrors.Item).@"struct".field_names.len);
216
216
 
217
217
  astgen.extra.items[err_index] = astgen.addExtraAssumeCapacity(Zir.Inst.CompileErrors{
218
218
  .items_len = @intCast(astgen.compile_errors.items.len),
@@ -227,8 +227,8 @@ pub fn generate(gpa: Allocator, tree: Ast) Allocator.Error!Zir {
227
227
  if (astgen.imports.count() == 0) {
228
228
  astgen.extra.items[imports_index] = 0;
229
229
  } else {
230
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Imports).@"struct".fields.len +
231
- astgen.imports.count() * @typeInfo(Zir.Inst.Imports.Item).@"struct".fields.len);
230
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Imports).@"struct".field_names.len +
231
+ astgen.imports.count() * @typeInfo(Zir.Inst.Imports.Item).@"struct".field_names.len);
232
232
 
233
233
  astgen.extra.items[imports_index] = astgen.addExtraAssumeCapacity(Zir.Inst.Imports{
234
234
  .imports_len = @intCast(astgen.imports.count()),
@@ -243,10 +243,13 @@ pub fn generate(gpa: Allocator, tree: Ast) Allocator.Error!Zir {
243
243
  }
244
244
  }
245
245
 
246
+ try astgen.extra.shrinkToLen(gpa);
247
+ try astgen.string_bytes.shrinkToLen(gpa);
248
+
246
249
  return .{
247
250
  .instructions = if (fatal) .empty else astgen.instructions.toOwnedSlice(),
248
- .string_bytes = try astgen.string_bytes.toOwnedSlice(gpa),
249
- .extra = try astgen.extra.toOwnedSlice(gpa),
251
+ .string_bytes = astgen.string_bytes.toOwnedSliceAssert(),
252
+ .extra = astgen.extra.toOwnedSliceAssert(),
250
253
  };
251
254
  }
252
255
 
@@ -504,7 +507,6 @@ fn lvalExpr(gz: *GenZir, scope: *Scope, node: Ast.Node.Index) InnerError!Zir.Ins
504
507
  .less_than,
505
508
  .less_or_equal,
506
509
  .array_cat,
507
- .array_mult,
508
510
  .bool_and,
509
511
  .bool_or,
510
512
  .@"asm",
@@ -774,19 +776,6 @@ fn expr(gz: *GenZir, scope: *Scope, ri: ResultInfo, node: Ast.Node.Index) InnerE
774
776
  .less_or_equal => return simpleBinOp(gz, scope, ri, node, .cmp_lte),
775
777
  .array_cat => return simpleBinOp(gz, scope, ri, node, .array_cat),
776
778
 
777
- .array_mult => {
778
- // This syntax form does not currently use the result type in the language specification.
779
- // However, the result type can be used to emit more optimal code for large multiplications by
780
- // having Sema perform a coercion before the multiplication operation.
781
- const lhs_node, const rhs_node = tree.nodeData(node).node_and_node;
782
- const result = try gz.addPlNode(.array_mul, node, Zir.Inst.ArrayMul{
783
- .res_ty = if (try ri.rl.resultType(gz, node)) |t| t else .none,
784
- .lhs = try expr(gz, scope, .{ .rl = .none }, lhs_node),
785
- .rhs = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .usize_type } }, rhs_node, .array_mul_factor),
786
- });
787
- return rvalue(gz, ri, result, node);
788
- },
789
-
790
779
  .error_union, .merge_error_sets => |tag| {
791
780
  const inst_tag: Zir.Inst.Tag = switch (tag) {
792
781
  .error_union => .error_union_type,
@@ -1409,12 +1398,12 @@ fn fnProtoExprInner(
1409
1398
  try comptimeExpr(
1410
1399
  &block_scope,
1411
1400
  scope,
1412
- .{ .rl = .{ .coerced_ty = try block_scope.addBuiltinValue(callconv_expr, .calling_convention) } },
1401
+ .{ .rl = .{ .coerced_ty = try block_scope.addStdLangValue(callconv_expr, .calling_convention) } },
1413
1402
  callconv_expr,
1414
1403
  .@"callconv",
1415
1404
  )
1416
1405
  else if (implicit_ccc)
1417
- try block_scope.addBuiltinValue(node, .calling_convention_c)
1406
+ try block_scope.addStdLangValue(node, .calling_convention_c)
1418
1407
  else
1419
1408
  .none;
1420
1409
 
@@ -1776,11 +1765,12 @@ fn structInitExpr(
1776
1765
  }
1777
1766
 
1778
1767
  {
1779
- var sfba = std.heap.stackFallback(256, astgen.arena);
1780
- const sfba_allocator = sfba.get();
1768
+ var bfa_buf: [256]u8 = undefined;
1769
+ var bfa_state: std.heap.BufferFirstAllocator = .init(&bfa_buf, astgen.arena);
1770
+ const bfa = bfa_state.allocator();
1781
1771
 
1782
1772
  var duplicate_names: std.array_hash_map.Auto(Zir.NullTerminatedString, ArrayList(Ast.TokenIndex)) = .empty;
1783
- try duplicate_names.ensureTotalCapacity(sfba_allocator, @intCast(struct_init.ast.fields.len));
1773
+ try duplicate_names.ensureTotalCapacity(bfa, @intCast(struct_init.ast.fields.len));
1784
1774
 
1785
1775
  // When there aren't errors, use this to avoid a second iteration.
1786
1776
  var any_duplicate = false;
@@ -1789,14 +1779,14 @@ fn structInitExpr(
1789
1779
  const name_token = tree.firstToken(field) - 2;
1790
1780
  const name_index = try astgen.identAsString(name_token);
1791
1781
 
1792
- const gop = try duplicate_names.getOrPut(sfba_allocator, name_index);
1782
+ const gop = try duplicate_names.getOrPut(bfa, name_index);
1793
1783
 
1794
1784
  if (gop.found_existing) {
1795
- try gop.value_ptr.append(sfba_allocator, name_token);
1785
+ try gop.value_ptr.append(bfa, name_token);
1796
1786
  any_duplicate = true;
1797
1787
  } else {
1798
1788
  gop.value_ptr.* = .empty;
1799
- try gop.value_ptr.append(sfba_allocator, name_token);
1789
+ try gop.value_ptr.append(bfa, name_token);
1800
1790
  }
1801
1791
  }
1802
1792
 
@@ -1898,7 +1888,7 @@ fn structInitExprAnon(
1898
1888
  .abs_line = astgen.source_line,
1899
1889
  .fields_len = @intCast(struct_init.ast.fields.len),
1900
1890
  });
1901
- const field_size = @typeInfo(Zir.Inst.StructInitAnon.Item).@"struct".fields.len;
1891
+ const field_size = @typeInfo(Zir.Inst.StructInitAnon.Item).@"struct".field_names.len;
1902
1892
  var extra_index: usize = try reserveExtra(astgen, struct_init.ast.fields.len * field_size);
1903
1893
 
1904
1894
  for (struct_init.ast.fields) |field_init| {
@@ -1931,7 +1921,7 @@ fn structInitExprTyped(
1931
1921
  .abs_line = astgen.source_line,
1932
1922
  .fields_len = @intCast(struct_init.ast.fields.len),
1933
1923
  });
1934
- const field_size = @typeInfo(Zir.Inst.StructInit.Item).@"struct".fields.len;
1924
+ const field_size = @typeInfo(Zir.Inst.StructInit.Item).@"struct".field_names.len;
1935
1925
  var extra_index: usize = try reserveExtra(astgen, struct_init.ast.fields.len * field_size);
1936
1926
 
1937
1927
  for (struct_init.ast.fields) |field_init| {
@@ -2709,7 +2699,6 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As
2709
2699
  .alloc_inferred_comptime_mut,
2710
2700
  .make_ptr_const,
2711
2701
  .array_cat,
2712
- .array_mul,
2713
2702
  .array_type,
2714
2703
  .array_type_sentinel,
2715
2704
  .elem_type,
@@ -2871,7 +2860,6 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As
2871
2860
  .max,
2872
2861
  .min,
2873
2862
  .@"resume",
2874
- .ret_err_value_code,
2875
2863
  .ret_ptr,
2876
2864
  .ret_type,
2877
2865
  .for_len,
@@ -2960,7 +2948,6 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As
2960
2948
  => break :b true,
2961
2949
 
2962
2950
  .@"defer" => unreachable,
2963
- .defer_err_code => unreachable,
2964
2951
  }
2965
2952
  } else switch (maybe_unused_result) {
2966
2953
  .none => unreachable,
@@ -2980,60 +2967,28 @@ fn addEnsureResult(gz: *GenZir, maybe_unused_result: Zir.Inst.Ref, statement: As
2980
2967
  return noreturn_src_node;
2981
2968
  }
2982
2969
 
2983
- fn countDefers(outer_scope: *Scope, inner_scope: *Scope) struct {
2984
- have_any: bool,
2985
- have_normal: bool,
2986
- have_err: bool,
2987
- need_err_code: bool,
2988
- } {
2989
- var have_normal = false;
2990
- var have_err = false;
2991
- var need_err_code = false;
2970
+ fn anyErrdefers(outer_scope: *Scope, inner_scope: *Scope) bool {
2992
2971
  var scope = inner_scope;
2993
2972
  while (scope != outer_scope) {
2994
2973
  switch (scope.unwrap()) {
2995
2974
  .gen_zir => |gen_zir| scope = gen_zir.parent,
2996
2975
  .local_val => |local_val| scope = local_val.parent,
2997
2976
  .local_ptr => |local_ptr| scope = local_ptr.parent,
2998
- .defer_normal => |defer_scope| {
2999
- scope = defer_scope.parent;
3000
-
3001
- have_normal = true;
3002
- },
3003
- .defer_error => |defer_scope| {
3004
- scope = defer_scope.parent;
3005
-
3006
- have_err = true;
3007
-
3008
- const have_err_payload = defer_scope.remapped_err_code != .none;
3009
- need_err_code = need_err_code or have_err_payload;
3010
- },
2977
+ .defer_normal => |defer_normal| scope = defer_normal.parent,
2978
+ .defer_error => return true,
3011
2979
  .namespace => unreachable,
3012
2980
  .top => unreachable,
3013
2981
  }
3014
2982
  }
3015
- return .{
3016
- .have_any = have_normal or have_err,
3017
- .have_normal = have_normal,
3018
- .have_err = have_err,
3019
- .need_err_code = need_err_code,
3020
- };
2983
+ return false;
3021
2984
  }
3022
2985
 
3023
- const DefersToEmit = union(enum) {
3024
- both: Zir.Inst.Ref, // err code
3025
- both_sans_err,
3026
- normal_only,
3027
- };
3028
-
3029
2986
  fn genDefers(
3030
2987
  gz: *GenZir,
3031
2988
  outer_scope: *Scope,
3032
2989
  inner_scope: *Scope,
3033
- which_ones: DefersToEmit,
2990
+ which_ones: enum { normal_only, normal_and_error },
3034
2991
  ) InnerError!void {
3035
- const gpa = gz.astgen.gpa;
3036
-
3037
2992
  var scope = inner_scope;
3038
2993
  while (scope != outer_scope) {
3039
2994
  switch (scope.unwrap()) {
@@ -3047,33 +3002,10 @@ fn genDefers(
3047
3002
  .defer_error => |defer_scope| {
3048
3003
  scope = defer_scope.parent;
3049
3004
  switch (which_ones) {
3050
- .both_sans_err => {
3005
+ .normal_only => continue,
3006
+ .normal_and_error => {
3051
3007
  try gz.addDefer(defer_scope.index, defer_scope.len);
3052
3008
  },
3053
- .both => |err_code| {
3054
- if (defer_scope.remapped_err_code.unwrap()) |remapped_err_code| {
3055
- try gz.instructions.ensureUnusedCapacity(gpa, 1);
3056
- try gz.astgen.instructions.ensureUnusedCapacity(gpa, 1);
3057
-
3058
- const payload_index = try gz.astgen.addExtra(Zir.Inst.DeferErrCode{
3059
- .remapped_err_code = remapped_err_code,
3060
- .index = defer_scope.index,
3061
- .len = defer_scope.len,
3062
- });
3063
- const new_index: Zir.Inst.Index = @enumFromInt(gz.astgen.instructions.len);
3064
- gz.astgen.instructions.appendAssumeCapacity(.{
3065
- .tag = .defer_err_code,
3066
- .data = .{ .defer_err_code = .{
3067
- .err_code = err_code,
3068
- .payload_index = payload_index,
3069
- } },
3070
- });
3071
- gz.instructions.appendAssumeCapacity(new_index);
3072
- } else {
3073
- try gz.addDefer(defer_scope.index, defer_scope.len);
3074
- }
3075
- },
3076
- .normal_only => continue,
3077
3009
  }
3078
3010
  },
3079
3011
  .namespace => unreachable,
@@ -3136,46 +3068,17 @@ fn deferStmt(
3136
3068
  defer defer_gen.unstack();
3137
3069
 
3138
3070
  const tree = gz.astgen.tree;
3139
- var local_val_scope: Scope.LocalVal = undefined;
3140
- var opt_remapped_err_code: Zir.Inst.OptionalIndex = .none;
3141
- const sub_scope = if (scope_tag != .defer_error) &defer_gen.base else blk: {
3142
- const payload_token = tree.nodeData(node).opt_token_and_node[0].unwrap() orelse break :blk &defer_gen.base;
3143
- const ident_name = try gz.astgen.identAsString(payload_token);
3144
- if (std.mem.eql(u8, tree.tokenSlice(payload_token), "_")) {
3145
- try gz.astgen.appendErrorTok(payload_token, "discard of error capture; omit it instead", .{});
3146
- break :blk &defer_gen.base;
3147
- }
3148
- const remapped_err_code: Zir.Inst.Index = @enumFromInt(gz.astgen.instructions.len);
3149
- opt_remapped_err_code = remapped_err_code.toOptional();
3150
- _ = try gz.astgen.appendPlaceholder();
3151
- const remapped_err_code_ref = remapped_err_code.toRef();
3152
- local_val_scope = .{
3153
- .parent = &defer_gen.base,
3154
- .gen_zir = gz,
3155
- .name = ident_name,
3156
- .inst = remapped_err_code_ref,
3157
- .token_src = payload_token,
3158
- .id_cat = .capture,
3159
- };
3160
- try gz.addDbgVar(.dbg_var_val, ident_name, remapped_err_code_ref);
3161
- break :blk &local_val_scope.base;
3162
- };
3163
- const expr_node = switch (scope_tag) {
3164
- .defer_normal => tree.nodeData(node).node,
3165
- .defer_error => tree.nodeData(node).opt_token_and_node[1],
3166
- else => unreachable,
3167
- };
3168
- _ = try unusedResultExpr(&defer_gen, sub_scope, expr_node);
3169
- try checkUsed(gz, scope, sub_scope);
3071
+ const expr_node = tree.nodeData(node).node;
3072
+ _ = try unusedResultExpr(&defer_gen, &defer_gen.base, expr_node);
3073
+ try checkUsed(gz, scope, &defer_gen.base);
3170
3074
  _ = try defer_gen.addBreak(.break_inline, @enumFromInt(0), .void_value);
3171
3075
 
3172
3076
  const body = defer_gen.instructionsSlice();
3173
- const extra_insts: []const Zir.Inst.Index = if (opt_remapped_err_code.unwrap()) |ec| &.{ec} else &.{};
3174
- const body_len = gz.astgen.countBodyLenAfterFixupsExtraRefs(body, extra_insts);
3077
+ const body_len = gz.astgen.countBodyLenAfterFixupsExtraRefs(body, &.{});
3175
3078
 
3176
3079
  const index: u32 = @intCast(gz.astgen.extra.items.len);
3177
3080
  try gz.astgen.extra.ensureUnusedCapacity(gz.astgen.gpa, body_len);
3178
- gz.astgen.appendBodyWithFixupsExtraRefsArrayList(&gz.astgen.extra, body, extra_insts);
3081
+ gz.astgen.appendBodyWithFixupsExtraRefsArrayList(&gz.astgen.extra, body, &.{});
3179
3082
 
3180
3083
  const defer_scope = try block_arena.create(Scope.Defer);
3181
3084
 
@@ -3184,7 +3087,6 @@ fn deferStmt(
3184
3087
  .parent = scope,
3185
3088
  .index = index,
3186
3089
  .len = body_len,
3187
- .remapped_err_code = opt_remapped_err_code,
3188
3090
  };
3189
3091
  return &defer_scope.base;
3190
3092
  }
@@ -3880,7 +3782,7 @@ fn ptrType(
3880
3782
  gz.astgen.source_line = source_line;
3881
3783
  gz.astgen.source_column = source_column;
3882
3784
 
3883
- const addrspace_ty = try gz.addBuiltinValue(addrspace_node, .address_space);
3785
+ const addrspace_ty = try gz.addStdLangValue(addrspace_node, .address_space);
3884
3786
  addrspace_ref = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = addrspace_ty } }, addrspace_node, .@"addrspace");
3885
3787
  trailing_count += 1;
3886
3788
  }
@@ -3902,7 +3804,7 @@ fn ptrType(
3902
3804
  const gpa = gz.astgen.gpa;
3903
3805
  try gz.instructions.ensureUnusedCapacity(gpa, 1);
3904
3806
  try gz.astgen.instructions.ensureUnusedCapacity(gpa, 1);
3905
- try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.PtrType).@"struct".fields.len +
3807
+ try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.PtrType).@"struct".field_names.len +
3906
3808
  trailing_count);
3907
3809
 
3908
3810
  const payload_index = gz.astgen.addExtraAssumeCapacity(Zir.Inst.PtrType{
@@ -4175,7 +4077,7 @@ fn fnDecl(
4175
4077
 
4176
4078
  if (fn_proto.ast.addrspace_expr.unwrap()) |addrspace_expr| {
4177
4079
  astgen.restoreSourceCursor(saved_cursor);
4178
- const addrspace_ty = try addrspace_gz.addBuiltinValue(addrspace_expr, .address_space);
4080
+ const addrspace_ty = try addrspace_gz.addStdLangValue(addrspace_expr, .address_space);
4179
4081
  const inst = try expr(&addrspace_gz, &addrspace_gz.base, .{ .rl = .{ .coerced_ty = addrspace_ty } }, addrspace_expr);
4180
4082
  _ = try addrspace_gz.addBreakWithSrcNode(.break_inline, decl_inst, inst, decl_node);
4181
4083
  }
@@ -4383,7 +4285,7 @@ fn fnDeclInner(
4383
4285
  const inst = try expr(
4384
4286
  &cc_gz,
4385
4287
  scope,
4386
- .{ .rl = .{ .coerced_ty = try cc_gz.addBuiltinValue(callconv_expr, .calling_convention) } },
4288
+ .{ .rl = .{ .coerced_ty = try cc_gz.addStdLangValue(callconv_expr, .calling_convention) } },
4387
4289
  callconv_expr,
4388
4290
  );
4389
4291
  if (cc_gz.instructionsSlice().len == 0) {
@@ -4393,7 +4295,7 @@ fn fnDeclInner(
4393
4295
  _ = try cc_gz.addBreak(.break_inline, @enumFromInt(0), inst);
4394
4296
  break :blk inst;
4395
4297
  } else if (has_inline_keyword) {
4396
- const inst = try cc_gz.addBuiltinValue(decl_node, .calling_convention_inline);
4298
+ const inst = try cc_gz.addStdLangValue(decl_node, .calling_convention_inline);
4397
4299
  _ = try cc_gz.addBreak(.break_inline, @enumFromInt(0), inst);
4398
4300
  break :blk inst;
4399
4301
  } else {
@@ -4591,7 +4493,7 @@ fn globalVarDecl(
4591
4493
  defer addrspace_gz.unstack();
4592
4494
 
4593
4495
  if (var_decl.ast.addrspace_node.unwrap()) |addrspace_node| {
4594
- const addrspace_ty = try addrspace_gz.addBuiltinValue(addrspace_node, .address_space);
4496
+ const addrspace_ty = try addrspace_gz.addStdLangValue(addrspace_node, .address_space);
4595
4497
  const addrspace_inst = try expr(&addrspace_gz, &addrspace_gz.base, .{ .rl = .{ .coerced_ty = addrspace_ty } }, addrspace_node);
4596
4498
  _ = try addrspace_gz.addBreakWithSrcNode(.break_inline, decl_inst, addrspace_inst, node);
4597
4499
  }
@@ -4878,7 +4780,7 @@ fn testDecl(
4878
4780
  .noalias_bits = 0,
4879
4781
 
4880
4782
  // Tests don't have a prototype that needs hashing
4881
- .proto_hash = .{0} ** 16,
4783
+ .proto_hash = @splat(0),
4882
4784
  });
4883
4785
 
4884
4786
  _ = try decl_block.addBreak(.break_inline, decl_inst, func_inst);
@@ -4913,7 +4815,7 @@ fn structDeclInner(
4913
4815
  scope: *Scope,
4914
4816
  node: Ast.Node.Index,
4915
4817
  container_decl: Ast.full.ContainerDecl,
4916
- layout: std.builtin.Type.ContainerLayout,
4818
+ layout: std.lang.Type.ContainerLayout,
4917
4819
  maybe_backing_int_node: Ast.Node.OptionalIndex,
4918
4820
  name_strat: Zir.Inst.NameStrategy,
4919
4821
  ) InnerError!Zir.Inst.Ref {
@@ -4997,6 +4899,10 @@ fn structDeclInner(
4997
4899
  );
4998
4900
  if (field_comptime_bits) |bits| @memset(bits.get(astgen), 0);
4999
4901
 
4902
+ const old_hasher = astgen.src_hasher;
4903
+ defer astgen.src_hasher = old_hasher;
4904
+ astgen.src_hasher = .init(.{});
4905
+
5000
4906
  // Before any field bodies comes the backing int type, if specified.
5001
4907
  const backing_int_type_body_len: ?u32 = if (maybe_backing_int_node.unwrap()) |backing_int_node| len: {
5002
4908
  if (layout != .@"packed") return astgen.failNode(
@@ -5004,6 +4910,7 @@ fn structDeclInner(
5004
4910
  "non-packed struct does not support backing integer type",
5005
4911
  .{},
5006
4912
  );
4913
+ astgen.src_hasher.update(astgen.tree.getNodeSource(backing_int_node));
5007
4914
  const type_ref = try typeExpr(&block_scope, &namespace.base, backing_int_node);
5008
4915
  if (!block_scope.endsWithNoReturn()) {
5009
4916
  _ = try block_scope.addBreak(.break_inline, decl_inst, type_ref);
@@ -5013,10 +4920,6 @@ fn structDeclInner(
5013
4920
  break :len body_len;
5014
4921
  } else null;
5015
4922
 
5016
- const old_hasher = astgen.src_hasher;
5017
- defer astgen.src_hasher = old_hasher;
5018
- astgen.src_hasher = .init(.{});
5019
-
5020
4923
  var next_field_idx: u32 = 0;
5021
4924
  for (container_decl.ast.members) |member_node| {
5022
4925
  var member = switch (try containerMember(&block_scope, &namespace.base, &wip_decls, member_node)) {
@@ -5117,7 +5020,7 @@ fn tupleDecl(
5117
5020
  scope: *Scope,
5118
5021
  node: Ast.Node.Index,
5119
5022
  container_decl: Ast.full.ContainerDecl,
5120
- layout: std.builtin.Type.ContainerLayout,
5023
+ layout: std.lang.Type.ContainerLayout,
5121
5024
  backing_int_node: Ast.Node.OptionalIndex,
5122
5025
  ) InnerError!Zir.Inst.Ref {
5123
5026
  const astgen = gz.astgen;
@@ -5193,7 +5096,7 @@ fn tupleDecl(
5193
5096
 
5194
5097
  const extra_trail = astgen.scratch.items[fields_start..];
5195
5098
  assert(extra_trail.len == fields_len * 2);
5196
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.TupleDecl).@"struct".fields.len + extra_trail.len);
5099
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.TupleDecl).@"struct".field_names.len + extra_trail.len);
5197
5100
  const payload_index = astgen.addExtraAssumeCapacity(Zir.Inst.TupleDecl{
5198
5101
  .src_node = gz.nodeIndexToRelative(node),
5199
5102
  });
@@ -5214,7 +5117,7 @@ fn unionDeclInner(
5214
5117
  scope: *Scope,
5215
5118
  node: Ast.Node.Index,
5216
5119
  members: []const Ast.Node.Index,
5217
- layout: std.builtin.Type.ContainerLayout,
5120
+ layout: std.lang.Type.ContainerLayout,
5218
5121
  opt_arg_node: Ast.Node.OptionalIndex,
5219
5122
  auto_enum_tok: ?Ast.TokenIndex,
5220
5123
  name_strat: Zir.Inst.NameStrategy,
@@ -5277,8 +5180,13 @@ fn unionDeclInner(
5277
5180
  const field_align_body_lens = try scratch.addOptionalSlice(scan_result.any_field_aligns, scan_result.fields_len);
5278
5181
  const field_value_body_lens = try scratch.addOptionalSlice(scan_result.any_field_values, scan_result.fields_len);
5279
5182
 
5183
+ const old_hasher = astgen.src_hasher;
5184
+ defer astgen.src_hasher = old_hasher;
5185
+ astgen.src_hasher = .init(.{});
5186
+
5280
5187
  // Before any field bodies comes the tag/backing type, if specified.
5281
5188
  const arg_type_body_len: ?u32 = if (opt_arg_node.unwrap()) |arg_node| len: {
5189
+ astgen.src_hasher.update(astgen.tree.getNodeSource(arg_node));
5282
5190
  const type_ref = try typeExpr(&block_scope, &namespace.base, arg_node);
5283
5191
  if (!block_scope.endsWithNoReturn()) {
5284
5192
  _ = try block_scope.addBreak(.break_inline, decl_inst, type_ref);
@@ -5288,10 +5196,6 @@ fn unionDeclInner(
5288
5196
  break :len body_len;
5289
5197
  } else null;
5290
5198
 
5291
- const old_hasher = astgen.src_hasher;
5292
- defer astgen.src_hasher = old_hasher;
5293
- astgen.src_hasher = .init(.{});
5294
-
5295
5199
  var next_field_idx: u32 = 0;
5296
5200
  for (members) |member_node| {
5297
5201
  var member = switch (try containerMember(&block_scope, &namespace.base, &wip_decls, member_node)) {
@@ -5420,7 +5324,7 @@ fn containerDecl(
5420
5324
 
5421
5325
  switch (tree.tokenTag(container_decl.ast.main_token)) {
5422
5326
  .keyword_struct => {
5423
- const layout: std.builtin.Type.ContainerLayout = if (container_decl.layout_token) |t| switch (tree.tokenTag(t)) {
5327
+ const layout: std.lang.Type.ContainerLayout = if (container_decl.layout_token) |t| switch (tree.tokenTag(t)) {
5424
5328
  .keyword_packed => .@"packed",
5425
5329
  .keyword_extern => .@"extern",
5426
5330
  else => unreachable,
@@ -5430,7 +5334,7 @@ fn containerDecl(
5430
5334
  return rvalue(gz, ri, result, node);
5431
5335
  },
5432
5336
  .keyword_union => {
5433
- const layout: std.builtin.Type.ContainerLayout = if (container_decl.layout_token) |t| switch (tree.tokenTag(t)) {
5337
+ const layout: std.lang.Type.ContainerLayout = if (container_decl.layout_token) |t| switch (tree.tokenTag(t)) {
5434
5338
  .keyword_packed => .@"packed",
5435
5339
  .keyword_extern => .@"extern",
5436
5340
  else => unreachable,
@@ -5482,8 +5386,13 @@ fn containerDecl(
5482
5386
  const field_names = try scratch.addSlice(fields_len);
5483
5387
  const field_value_body_lens = try scratch.addOptionalSlice(scan_result.any_field_values, fields_len);
5484
5388
 
5389
+ const old_hasher = astgen.src_hasher;
5390
+ defer astgen.src_hasher = old_hasher;
5391
+ astgen.src_hasher = .init(.{});
5392
+
5485
5393
  // Before any field bodies comes the tag type, if specified.
5486
5394
  const tag_type_body_len: ?u32 = if (container_decl.ast.arg.unwrap()) |tag_type_node| len: {
5395
+ astgen.src_hasher.update(astgen.tree.getNodeSource(tag_type_node));
5487
5396
  const type_ref = try typeExpr(&block_scope, &namespace.base, tag_type_node);
5488
5397
  if (!block_scope.endsWithNoReturn()) {
5489
5398
  _ = try block_scope.addBreak(.break_inline, decl_inst, type_ref);
@@ -5493,10 +5402,6 @@ fn containerDecl(
5493
5402
  break :len body_len;
5494
5403
  } else null;
5495
5404
 
5496
- const old_hasher = astgen.src_hasher;
5497
- defer astgen.src_hasher = old_hasher;
5498
- astgen.src_hasher = .init(.{});
5499
-
5500
5405
  var next_field_idx: u32 = 0;
5501
5406
  var opt_nonexhaustive_node: Ast.Node.OptionalIndex = .none;
5502
5407
  for (container_decl.ast.members) |member_node| {
@@ -5680,7 +5585,7 @@ fn containerMember(
5680
5585
 
5681
5586
  const prev_decl_index = wip_decls.index;
5682
5587
  astgen.fnDecl(gz, scope, wip_decls, member_node, body, full) catch |err| switch (err) {
5683
- error.OutOfMemory => return error.OutOfMemory,
5588
+ error.OutOfMemory => |e| return e,
5684
5589
  error.AnalysisFail => {
5685
5590
  wip_decls.index = prev_decl_index;
5686
5591
  try addFailedDeclaration(
@@ -5703,7 +5608,7 @@ fn containerMember(
5703
5608
  const full = tree.fullVarDecl(member_node).?;
5704
5609
  const prev_decl_index = wip_decls.index;
5705
5610
  astgen.globalVarDecl(gz, scope, wip_decls, member_node, full) catch |err| switch (err) {
5706
- error.OutOfMemory => return error.OutOfMemory,
5611
+ error.OutOfMemory => |e| return e,
5707
5612
  error.AnalysisFail => {
5708
5613
  wip_decls.index = prev_decl_index;
5709
5614
  try addFailedDeclaration(
@@ -5721,7 +5626,7 @@ fn containerMember(
5721
5626
  .@"comptime" => {
5722
5627
  const prev_decl_index = wip_decls.index;
5723
5628
  astgen.comptimeDecl(gz, scope, wip_decls, member_node) catch |err| switch (err) {
5724
- error.OutOfMemory => return error.OutOfMemory,
5629
+ error.OutOfMemory => |e| return e,
5725
5630
  error.AnalysisFail => {
5726
5631
  wip_decls.index = prev_decl_index;
5727
5632
  try addFailedDeclaration(
@@ -5741,7 +5646,7 @@ fn containerMember(
5741
5646
  // Since it doesn't strictly matter *what* this is, let's save ourselves the trouble
5742
5647
  // of duplicating the test name logic, and just assume this is an unnamed test.
5743
5648
  astgen.testDecl(gz, scope, wip_decls, member_node) catch |err| switch (err) {
5744
- error.OutOfMemory => return error.OutOfMemory,
5649
+ error.OutOfMemory => |e| return e,
5745
5650
  error.AnalysisFail => {
5746
5651
  wip_decls.index = prev_decl_index;
5747
5652
  try addFailedDeclaration(
@@ -5765,7 +5670,7 @@ fn errorSetDecl(gz: *GenZir, ri: ResultInfo, node: Ast.Node.Index) InnerError!Zi
5765
5670
  const gpa = astgen.gpa;
5766
5671
  const tree = astgen.tree;
5767
5672
 
5768
- const payload_index = try reserveExtra(astgen, @typeInfo(Zir.Inst.ErrorSetDecl).@"struct".fields.len);
5673
+ const payload_index = try reserveExtra(astgen, @typeInfo(Zir.Inst.ErrorSetDecl).@"struct".field_names.len);
5769
5674
  var fields_len: usize = 0;
5770
5675
  {
5771
5676
  var idents: std.AutoHashMapUnmanaged(Zir.NullTerminatedString, Ast.TokenIndex) = .empty;
@@ -5875,7 +5780,7 @@ fn tryExpr(
5875
5780
  else => Zir.Inst.Tag.err_union_code,
5876
5781
  };
5877
5782
  const err_code = try else_scope.addUnNode(err_tag, operand, node);
5878
- try genDefers(&else_scope, &fn_block.base, scope, .{ .both = err_code });
5783
+ try genDefers(&else_scope, &fn_block.base, scope, .normal_and_error);
5879
5784
  try emitDbgStmt(&else_scope, try_lc);
5880
5785
  _ = try else_scope.addUnNode(.ret_node, err_code, node);
5881
5786
 
@@ -6427,7 +6332,7 @@ fn setCondBrPayload(
6427
6332
  const else_body_len = astgen.countBodyLenAfterFixups(else_body);
6428
6333
  try astgen.extra.ensureUnusedCapacity(
6429
6334
  astgen.gpa,
6430
- @typeInfo(Zir.Inst.CondBr).@"struct".fields.len + then_body_len + else_body_len,
6335
+ @typeInfo(Zir.Inst.CondBr).@"struct".field_names.len + then_body_len + else_body_len,
6431
6336
  );
6432
6337
 
6433
6338
  const zir_datas = astgen.instructions.items(.data);
@@ -6655,9 +6560,16 @@ fn whileExpr(
6655
6560
  .operand = undefined,
6656
6561
  } },
6657
6562
  });
6563
+ if (!continue_scope.is_comptime) {
6564
+ _ = try continue_scope.addRestoreErrRetIndex(.{ .block = continue_block }, .always, then_node);
6565
+ }
6658
6566
  _ = try continue_scope.addBreak(break_tag, continue_block, .void_value);
6659
6567
  }
6660
6568
  try continue_scope.setBlockBody(continue_block);
6569
+ if (!then_scope.is_comptime) {
6570
+ const cont_node = while_full.ast.cont_expr.unwrap() orelse then_node;
6571
+ _ = try then_scope.addRestoreErrRetIndex(.{ .block = cond_block }, .always, cont_node);
6572
+ }
6661
6573
  _ = try then_scope.addBreak(break_tag, cond_block, .void_value);
6662
6574
 
6663
6575
  var else_scope = parent_gz.makeSubBlock(&cond_scope.base);
@@ -6702,6 +6614,9 @@ fn whileExpr(
6702
6614
 
6703
6615
  try checkUsed(parent_gz, &else_scope.base, sub_scope);
6704
6616
  if (!else_scope.endsWithNoReturn()) {
6617
+ if (!else_scope.is_comptime) {
6618
+ _ = try else_scope.addRestoreErrRetIndex(.{ .block = loop_block }, .always, else_node);
6619
+ }
6705
6620
  _ = try else_scope.addBreakWithSrcNode(break_tag, loop_block, else_result, else_node);
6706
6621
  }
6707
6622
  } else {
@@ -6846,7 +6761,7 @@ fn forExpr(
6846
6761
  const len: Zir.Inst.Ref = len: {
6847
6762
  const all_lens = @as([*]Zir.Inst.Ref, @ptrCast(lens))[0 .. lens.len * 2];
6848
6763
  const lens_len: u32 = @intCast(all_lens.len);
6849
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.MultiOp).@"struct".fields.len + lens_len);
6764
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.MultiOp).@"struct".field_names.len + lens_len);
6850
6765
  const len = try parent_gz.addPlNode(.for_len, node, Zir.Inst.MultiOp{
6851
6766
  .operands_len = lens_len,
6852
6767
  });
@@ -6972,6 +6887,9 @@ fn forExpr(
6972
6887
  });
6973
6888
 
6974
6889
  const break_tag: Zir.Inst.Tag = if (is_inline) .break_inline else .@"break";
6890
+ if (!then_scope.is_comptime) {
6891
+ _ = try then_scope.addRestoreErrRetIndex(.{ .block = cond_block }, .always, then_node);
6892
+ }
6975
6893
  _ = try then_scope.addBreak(break_tag, cond_block, .void_value);
6976
6894
 
6977
6895
  var else_scope = parent_gz.makeSubBlock(&cond_scope.base);
@@ -6989,6 +6907,9 @@ fn forExpr(
6989
6907
  _ = try addEnsureResult(&else_scope, else_result, else_node);
6990
6908
  }
6991
6909
  if (!else_scope.endsWithNoReturn()) {
6910
+ if (!else_scope.is_comptime) {
6911
+ _ = try else_scope.addRestoreErrRetIndex(.{ .block = loop_block }, .always, else_node);
6912
+ }
6992
6913
  _ = try else_scope.addBreakWithSrcNode(break_tag, loop_block, else_result, else_node);
6993
6914
  }
6994
6915
  } else {
@@ -7870,7 +7791,7 @@ fn switchExpr(
7870
7791
  // by copying our bodies from `payloads` to `extra`, this time in the order
7871
7792
  // expected by ZIR consumers.
7872
7793
 
7873
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.SwitchBlock).@"struct".fields.len +
7794
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.SwitchBlock).@"struct".field_names.len +
7874
7795
  @intFromBool(multi_cases_len > 0) + // multi_cases_len
7875
7796
  @intFromBool(payload_capture_inst_is_placeholder) + // payload_capture_placeholder
7876
7797
  @intFromBool(tag_capture_inst_is_placeholder) + // tag_capture_placeholder
@@ -8010,18 +7931,10 @@ fn ret(gz: *GenZir, scope: *Scope, node: Ast.Node.Index) InnerError!Zir.Inst.Ref
8010
7931
  // for detecting whether to add something to the function's inferred error set.
8011
7932
  const ident_token = tree.nodeMainToken(operand_node) + 2;
8012
7933
  const err_name_str_index = try astgen.identAsString(ident_token);
8013
- const defer_counts = countDefers(defer_outer, scope);
8014
- if (!defer_counts.need_err_code) {
8015
- try genDefers(gz, defer_outer, scope, .both_sans_err);
8016
- try emitDbgStmt(gz, ret_lc);
8017
- _ = try gz.addStrTok(.ret_err_value, err_name_str_index, ident_token);
8018
- return Zir.Inst.Ref.unreachable_value;
8019
- }
8020
- const err_code = try gz.addStrTok(.ret_err_value_code, err_name_str_index, ident_token);
8021
- try genDefers(gz, defer_outer, scope, .{ .both = err_code });
7934
+ try genDefers(gz, defer_outer, scope, .normal_and_error);
8022
7935
  try emitDbgStmt(gz, ret_lc);
8023
- _ = try gz.addUnNode(.ret_node, err_code, node);
8024
- return Zir.Inst.Ref.unreachable_value;
7936
+ _ = try gz.addStrTok(.ret_err_value, err_name_str_index, ident_token);
7937
+ return .unreachable_value;
8025
7938
  }
8026
7939
 
8027
7940
  const ri: ResultInfo = if (astgen.nodes_need_rl.contains(node)) .{
@@ -8048,15 +7961,13 @@ fn ret(gz: *GenZir, scope: *Scope, node: Ast.Node.Index) InnerError!Zir.Inst.Ref
8048
7961
  },
8049
7962
  .always => {
8050
7963
  // Value is always an error. Emit both error defers and regular defers.
8051
- const err_code = if (ri.rl == .ptr) try gz.addUnNode(.load, ri.rl.ptr.inst, node) else operand;
8052
- try genDefers(gz, defer_outer, scope, .{ .both = err_code });
7964
+ try genDefers(gz, defer_outer, scope, .normal_and_error);
8053
7965
  try emitDbgStmt(gz, ret_lc);
8054
7966
  try gz.addRet(ri, operand, node);
8055
7967
  return Zir.Inst.Ref.unreachable_value;
8056
7968
  },
8057
7969
  .maybe => {
8058
- const defer_counts = countDefers(defer_outer, scope);
8059
- if (!defer_counts.have_err) {
7970
+ if (!anyErrdefers(defer_outer, scope)) {
8060
7971
  // Only regular defers; no branch needed.
8061
7972
  try genDefers(gz, defer_outer, scope, .normal_only);
8062
7973
  try emitDbgStmt(gz, ret_lc);
@@ -8088,10 +7999,7 @@ fn ret(gz: *GenZir, scope: *Scope, node: Ast.Node.Index) InnerError!Zir.Inst.Ref
8088
7999
  var else_scope = gz.makeSubBlock(scope);
8089
8000
  defer else_scope.unstack();
8090
8001
 
8091
- const which_ones: DefersToEmit = if (!defer_counts.need_err_code) .both_sans_err else .{
8092
- .both = try else_scope.addUnNode(.err_union_code, result, node),
8093
- };
8094
- try genDefers(&else_scope, defer_outer, scope, which_ones);
8002
+ try genDefers(&else_scope, defer_outer, scope, .normal_and_error);
8095
8003
  try emitDbgStmt(&else_scope, ret_lc);
8096
8004
  try else_scope.addRet(ri, operand, node);
8097
8005
 
@@ -8150,39 +8058,42 @@ fn identifier(
8150
8058
  return rvalue(gz, ri, zir_const_ref, ident);
8151
8059
  }
8152
8060
 
8153
- if (ident_name_raw.len >= 2) integer: {
8154
- // Keep in sync with logic in `comptimeExpr2`.
8155
- const first_c = ident_name_raw[0];
8156
- if (first_c == 'i' or first_c == 'u') {
8157
- const signedness: std.builtin.Signedness = switch (first_c == 'i') {
8158
- true => .signed,
8159
- false => .unsigned,
8160
- };
8161
- if (ident_name_raw.len >= 3 and ident_name_raw[1] == '0') {
8162
- return astgen.failNode(
8163
- ident,
8164
- "primitive integer type '{s}' has leading zero",
8165
- .{ident_name_raw},
8166
- );
8167
- }
8168
- const bit_count = parseBitCount(ident_name_raw[1..]) catch |err| switch (err) {
8169
- error.Overflow => return astgen.failNode(
8170
- ident,
8171
- "primitive integer type '{s}' exceeds maximum bit width of 65535",
8172
- .{ident_name_raw},
8173
- ),
8174
- error.InvalidCharacter => break :integer,
8175
- };
8176
- const result = try gz.add(.{
8177
- .tag = .int_type,
8178
- .data = .{ .int_type = .{
8179
- .src_node = gz.nodeIndexToRelative(ident),
8180
- .signedness = signedness,
8181
- .bit_count = bit_count,
8182
- } },
8183
- });
8184
- return rvalue(gz, ri, result, ident);
8061
+ int_type: {
8062
+ if (ident_name_raw.len < 2) break :int_type;
8063
+ const signedness: std.lang.Signedness = switch (ident_name_raw[0]) {
8064
+ 'u' => .unsigned,
8065
+ 'i' => .signed,
8066
+ else => break :int_type,
8067
+ };
8068
+ // `u0` already handled by `primitive_instrs`
8069
+ if (std.mem.eql(u8, ident_name_raw, "i0")) {
8070
+ return astgen.failNode(ident, "signed integer cannot have bit width 0", .{});
8185
8071
  }
8072
+ if (ident_name_raw[1] == '0') {
8073
+ assert(ident_name_raw.len >= 3); // `u0` and `i0` handled
8074
+ return astgen.failNode(
8075
+ ident,
8076
+ "primitive integer type '{s}' has leading zero",
8077
+ .{ident_name_raw},
8078
+ );
8079
+ }
8080
+ const bit_count = parseBitCount(ident_name_raw[1..]) catch |err| switch (err) {
8081
+ error.Overflow => return astgen.failNode(
8082
+ ident,
8083
+ "primitive integer type '{s}' exceeds maximum bit width of 65535",
8084
+ .{ident_name_raw},
8085
+ ),
8086
+ error.InvalidCharacter => break :int_type,
8087
+ };
8088
+ const result = try gz.add(.{
8089
+ .tag = .int_type,
8090
+ .data = .{ .int_type = .{
8091
+ .src_node = gz.nodeIndexToRelative(ident),
8092
+ .signedness = signedness,
8093
+ .bit_count = bit_count,
8094
+ } },
8095
+ });
8096
+ return rvalue(gz, ri, result, ident);
8186
8097
  }
8187
8098
  }
8188
8099
 
@@ -8404,9 +8315,10 @@ fn tunnelThroughClosure(
8404
8315
 
8405
8316
  // Otherwise we need a tunnel. First, figure out the path of namespaces we
8406
8317
  // are tunneling through. This is usually only going to be one or two, so
8407
- // use an SFBA to optimize for the common case.
8408
- var sfba = std.heap.stackFallback(@sizeOf(usize) * 2, astgen.arena);
8409
- var intermediate_tunnels = try sfba.get().alloc(*Scope.Namespace, num_tunnels - 1);
8318
+ // use an BFA to optimize for the common case.
8319
+ var bfa_buf: [2]usize = undefined;
8320
+ var bfa: std.heap.BufferFirstAllocator = .init(@ptrCast(&bfa_buf), astgen.arena);
8321
+ var intermediate_tunnels = try bfa.allocator().alloc(*Scope.Namespace, num_tunnels - 1);
8410
8322
 
8411
8323
  const root_ns = ns: {
8412
8324
  var i: usize = num_tunnels - 1;
@@ -8561,7 +8473,7 @@ fn numberLiteral(gz: *GenZir, ri: ResultInfo, node: Ast.Node.Index, source_node:
8561
8473
  big_int.setString(@intFromEnum(base), bytes[prefix_offset..]) catch |err| switch (err) {
8562
8474
  error.InvalidCharacter => unreachable, // caught in `parseNumberLiteral`
8563
8475
  error.InvalidBase => unreachable, // we only pass 16, 8, 2, see above
8564
- error.OutOfMemory => return error.OutOfMemory,
8476
+ error.OutOfMemory => |e| return e,
8565
8477
  };
8566
8478
 
8567
8479
  const limbs = big_int.limbs[0..big_int.len()];
@@ -8738,7 +8650,7 @@ fn asmExpr(
8738
8650
 
8739
8651
  const clobbers: Zir.Inst.Ref = if (full.ast.clobbers.unwrap()) |clobbers_node|
8740
8652
  try comptimeExpr(gz, scope, .{ .rl = .{
8741
- .coerced_ty = try gz.addBuiltinValue(clobbers_node, .clobbers),
8653
+ .coerced_ty = try gz.addStdLangValue(clobbers_node, .clobbers),
8742
8654
  } }, clobbers_node, .clobber)
8743
8655
  else
8744
8656
  .none;
@@ -8966,7 +8878,7 @@ fn typeOf(
8966
8878
  try gz.instructions.append(gpa, typeof_inst);
8967
8879
  return rvalue(gz, ri, typeof_inst.toRef(), node);
8968
8880
  }
8969
- const payload_size: u32 = std.meta.fields(Zir.Inst.TypeOfPeer).len;
8881
+ const payload_size: u32 = @typeInfo(Zir.Inst.TypeOfPeer).@"struct".field_names.len;
8970
8882
  const payload_index = try reserveExtra(astgen, payload_size + args.len);
8971
8883
  const args_index = payload_index + payload_size;
8972
8884
 
@@ -9080,7 +8992,7 @@ fn builtinCall(
9080
8992
  if (!allow_branch_hint) {
9081
8993
  return astgen.failNode(node, "'@branchHint' must appear as the first statement in a function or conditional branch", .{});
9082
8994
  }
9083
- const hint_ty = try gz.addBuiltinValue(node, .branch_hint);
8995
+ const hint_ty = try gz.addStdLangValue(node, .branch_hint);
9084
8996
  const hint_val = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = hint_ty } }, params[0], .operand_branchHint);
9085
8997
  _ = try gz.addExtendedPayload(.branch_hint, Zir.Inst.UnNode{
9086
8998
  .node = gz.nodeIndexToRelative(node),
@@ -9178,7 +9090,7 @@ fn builtinCall(
9178
9090
 
9179
9091
  .@"export" => {
9180
9092
  const exported = try expr(gz, scope, .{ .rl = .none }, params[0]);
9181
- const export_options_ty = try gz.addBuiltinValue(node, .export_options);
9093
+ const export_options_ty = try gz.addStdLangValue(node, .export_options);
9182
9094
  const options = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = export_options_ty } }, params[1], .export_options);
9183
9095
  _ = try gz.addPlNode(.@"export", node, Zir.Inst.Export{
9184
9096
  .exported = exported,
@@ -9188,7 +9100,7 @@ fn builtinCall(
9188
9100
  },
9189
9101
  .@"extern" => {
9190
9102
  const type_inst = try typeExpr(gz, scope, params[0]);
9191
- const extern_options_ty = try gz.addBuiltinValue(node, .extern_options);
9103
+ const extern_options_ty = try gz.addStdLangValue(node, .extern_options);
9192
9104
  const options = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = extern_options_ty } }, params[1], .extern_options);
9193
9105
  const result = try gz.addExtendedPayload(.builtin_extern, Zir.Inst.BinNode{
9194
9106
  .node = gz.nodeIndexToRelative(node),
@@ -9198,7 +9110,7 @@ fn builtinCall(
9198
9110
  return rvalue(gz, ri, result, node);
9199
9111
  },
9200
9112
  .set_float_mode => {
9201
- const float_mode_ty = try gz.addBuiltinValue(node, .float_mode);
9113
+ const float_mode_ty = try gz.addStdLangValue(node, .float_mode);
9202
9114
  const order = try expr(gz, scope, .{ .rl = .{ .coerced_ty = float_mode_ty } }, params[0]);
9203
9115
  _ = try gz.addExtendedPayload(.set_float_mode, Zir.Inst.UnNode{
9204
9116
  .node = gz.nodeIndexToRelative(node),
@@ -9284,7 +9196,7 @@ fn builtinCall(
9284
9196
 
9285
9197
  .EnumLiteral => return rvalue(gz, ri, .enum_literal_type, node),
9286
9198
  .Int => {
9287
- const signedness_ty = try gz.addBuiltinValue(node, .signedness);
9199
+ const signedness_ty = try gz.addStdLangValue(node, .signedness);
9288
9200
  const result = try gz.addPlNode(.reify_int, node, Zir.Inst.Bin{
9289
9201
  .lhs = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = signedness_ty } }, params[0], .int_signedness),
9290
9202
  .rhs = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .u16_type } }, params[1], .int_bit_width),
@@ -9299,8 +9211,8 @@ fn builtinCall(
9299
9211
  return rvalue(gz, ri, result, node);
9300
9212
  },
9301
9213
  .Pointer => {
9302
- const ptr_size_ty = try gz.addBuiltinValue(node, .pointer_size);
9303
- const ptr_attrs_ty = try gz.addBuiltinValue(node, .pointer_attributes);
9214
+ const ptr_size_ty = try gz.addStdLangValue(node, .pointer_size);
9215
+ const ptr_attrs_ty = try gz.addStdLangValue(node, .pointer_attributes);
9304
9216
  const size = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = ptr_size_ty } }, params[0], .pointer_size);
9305
9217
  const attrs = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = ptr_attrs_ty } }, params[1], .pointer_attrs);
9306
9218
  const elem_ty = try typeExpr(gz, scope, params[2]);
@@ -9319,7 +9231,7 @@ fn builtinCall(
9319
9231
  return rvalue(gz, ri, result, node);
9320
9232
  },
9321
9233
  .Fn => {
9322
- const fn_attrs_ty = try gz.addBuiltinValue(node, .fn_attributes);
9234
+ const fn_attrs_ty = try gz.addStdLangValue(node, .fn_attributes);
9323
9235
  const param_types = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .slice_const_type_type } }, params[0], .fn_param_types);
9324
9236
  const param_attrs_ty = try gz.addExtendedPayloadSmall(
9325
9237
  .reify_slice_arg_ty,
@@ -9339,7 +9251,7 @@ fn builtinCall(
9339
9251
  return rvalue(gz, ri, result, node);
9340
9252
  },
9341
9253
  .Struct => {
9342
- const container_layout_ty = try gz.addBuiltinValue(node, .container_layout);
9254
+ const container_layout_ty = try gz.addStdLangValue(node, .container_layout);
9343
9255
  const layout = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = container_layout_ty } }, params[0], .struct_layout);
9344
9256
  const backing_ty = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .optional_type_type } }, params[1], .type);
9345
9257
  const field_names = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .slice_const_slice_const_u8_type } }, params[2], .struct_field_names);
@@ -9367,7 +9279,7 @@ fn builtinCall(
9367
9279
  return rvalue(gz, ri, result, node);
9368
9280
  },
9369
9281
  .Union => {
9370
- const container_layout_ty = try gz.addBuiltinValue(node, .container_layout);
9282
+ const container_layout_ty = try gz.addStdLangValue(node, .container_layout);
9371
9283
  const layout = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = container_layout_ty } }, params[0], .union_layout);
9372
9284
  const arg_ty = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .optional_type_type } }, params[1], .type);
9373
9285
  const field_names = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .slice_const_slice_const_u8_type } }, params[2], .union_field_names);
@@ -9395,7 +9307,7 @@ fn builtinCall(
9395
9307
  return rvalue(gz, ri, result, node);
9396
9308
  },
9397
9309
  .Enum => {
9398
- const enum_mode_ty = try gz.addBuiltinValue(node, .enum_mode);
9310
+ const enum_mode_ty = try gz.addStdLangValue(node, .enum_mode);
9399
9311
  const tag_ty = try typeExpr(gz, scope, params[0]);
9400
9312
  const mode = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = enum_mode_ty } }, params[1], .type);
9401
9313
  const field_names = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = .slice_const_slice_const_u8_type } }, params[2], .enum_field_names);
@@ -9415,6 +9327,16 @@ fn builtinCall(
9415
9327
  });
9416
9328
  return rvalue(gz, ri, result, node);
9417
9329
  },
9330
+ .SpirvType => {
9331
+ const spirv_type_options_ty = try gz.addStdLangValue(node, .spirv_type_options);
9332
+ const operand = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = spirv_type_options_ty } }, params[0], .type);
9333
+ const result = try gz.addExtendedPayload(.reify_spirv_type, Zir.Inst.ReifySpirvType{
9334
+ .src_line = gz.astgen.source_line,
9335
+ .node = node,
9336
+ .operand = operand,
9337
+ });
9338
+ return rvalue(gz, ri, result, node);
9339
+ },
9418
9340
 
9419
9341
  .panic => {
9420
9342
  try emitDbgNode(gz, node);
@@ -9513,7 +9435,7 @@ fn builtinCall(
9513
9435
  return rvalue(gz, ri, result, node);
9514
9436
  },
9515
9437
  .reduce => {
9516
- const reduce_op_ty = try gz.addBuiltinValue(node, .reduce_op);
9438
+ const reduce_op_ty = try gz.addStdLangValue(node, .reduce_op);
9517
9439
  const op = try expr(gz, scope, .{ .rl = .{ .coerced_ty = reduce_op_ty } }, params[0]);
9518
9440
  const scalar = try expr(gz, scope, .{ .rl = .none }, params[1]);
9519
9441
  const result = try gz.addPlNode(.reduce, node, Zir.Inst.Bin{
@@ -9529,7 +9451,7 @@ fn builtinCall(
9529
9451
  .shl_with_overflow => return overflowArithmetic(gz, scope, ri, node, params, .shl_with_overflow),
9530
9452
 
9531
9453
  .atomic_load => {
9532
- const atomic_order_type = try gz.addBuiltinValue(node, .atomic_order);
9454
+ const atomic_order_type = try gz.addStdLangValue(node, .atomic_order);
9533
9455
  const result = try gz.addPlNode(.atomic_load, node, Zir.Inst.AtomicLoad{
9534
9456
  // zig fmt: off
9535
9457
  .elem_type = try typeExpr(gz, scope, params[0]),
@@ -9540,8 +9462,8 @@ fn builtinCall(
9540
9462
  return rvalue(gz, ri, result, node);
9541
9463
  },
9542
9464
  .atomic_rmw => {
9543
- const atomic_order_type = try gz.addBuiltinValue(node, .atomic_order);
9544
- const atomic_rmw_op_type = try gz.addBuiltinValue(node, .atomic_rmw_op);
9465
+ const atomic_order_type = try gz.addStdLangValue(node, .atomic_order);
9466
+ const atomic_rmw_op_type = try gz.addStdLangValue(node, .atomic_rmw_op);
9545
9467
  const int_type = try typeExpr(gz, scope, params[0]);
9546
9468
  const result = try gz.addPlNode(.atomic_rmw, node, Zir.Inst.AtomicRmw{
9547
9469
  // zig fmt: off
@@ -9554,7 +9476,7 @@ fn builtinCall(
9554
9476
  return rvalue(gz, ri, result, node);
9555
9477
  },
9556
9478
  .atomic_store => {
9557
- const atomic_order_type = try gz.addBuiltinValue(node, .atomic_order);
9479
+ const atomic_order_type = try gz.addStdLangValue(node, .atomic_order);
9558
9480
  const int_type = try typeExpr(gz, scope, params[0]);
9559
9481
  _ = try gz.addPlNode(.atomic_store, node, Zir.Inst.AtomicStore{
9560
9482
  // zig fmt: off
@@ -9578,7 +9500,7 @@ fn builtinCall(
9578
9500
  return rvalue(gz, ri, result, node);
9579
9501
  },
9580
9502
  .call => {
9581
- const call_modifier_ty = try gz.addBuiltinValue(node, .call_modifier);
9503
+ const call_modifier_ty = try gz.addStdLangValue(node, .call_modifier);
9582
9504
  const modifier = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = call_modifier_ty } }, params[0], .call_modifier);
9583
9505
  const callee = try expr(gz, scope, .{ .rl = .none }, params[1]);
9584
9506
  const args = try expr(gz, scope, .{ .rl = .none }, params[2]);
@@ -9655,7 +9577,7 @@ fn builtinCall(
9655
9577
  return rvalue(gz, ri, result, node);
9656
9578
  },
9657
9579
  .prefetch => {
9658
- const prefetch_options_ty = try gz.addBuiltinValue(node, .prefetch_options);
9580
+ const prefetch_options_ty = try gz.addStdLangValue(node, .prefetch_options);
9659
9581
  const ptr = try expr(gz, scope, .{ .rl = .none }, params[0]);
9660
9582
  const options = try comptimeExpr(gz, scope, .{ .rl = .{ .coerced_ty = prefetch_options_ty } }, params[1], .prefetch_options);
9661
9583
  _ = try gz.addExtendedPayload(.prefetch, Zir.Inst.BinNode{
@@ -9888,7 +9810,7 @@ fn cmpxchg(
9888
9810
  small: u16,
9889
9811
  ) InnerError!Zir.Inst.Ref {
9890
9812
  const int_type = try typeExpr(gz, scope, params[0]);
9891
- const atomic_order_type = try gz.addBuiltinValue(node, .atomic_order);
9813
+ const atomic_order_type = try gz.addStdLangValue(node, .atomic_order);
9892
9814
  const result = try gz.addExtendedPayloadSmall(.cmpxchg, small, Zir.Inst.Cmpxchg{
9893
9815
  // zig fmt: off
9894
9816
  .node = gz.nodeIndexToRelative(node),
@@ -10013,7 +9935,7 @@ fn callExpr(
10013
9935
  const astgen = gz.astgen;
10014
9936
 
10015
9937
  const callee = try calleeExpr(gz, scope, ri.rl, override_decl_literal_type, call.ast.fn_expr);
10016
- const modifier: std.builtin.CallModifier = blk: {
9938
+ const modifier: std.lang.CallModifier = blk: {
10017
9939
  if (gz.nosuspend_node != .none) {
10018
9940
  break :blk .no_suspend;
10019
9941
  }
@@ -10198,32 +10120,37 @@ const primitive_instrs = std.StaticStringMap(Zir.Inst.Ref).initComptime(.{
10198
10120
  .{ "c_ushort", .c_ushort_type },
10199
10121
  .{ "comptime_float", .comptime_float_type },
10200
10122
  .{ "comptime_int", .comptime_int_type },
10201
- .{ "f128", .f128_type },
10202
- .{ "f16", .f16_type },
10203
- .{ "f32", .f32_type },
10204
- .{ "f64", .f64_type },
10205
- .{ "f80", .f80_type },
10206
10123
  .{ "false", .bool_false },
10207
- .{ "i16", .i16_type },
10208
- .{ "i32", .i32_type },
10209
- .{ "i64", .i64_type },
10210
- .{ "i128", .i128_type },
10211
- .{ "i8", .i8_type },
10212
- .{ "isize", .isize_type },
10213
10124
  .{ "noreturn", .noreturn_type },
10214
10125
  .{ "null", .null_value },
10215
10126
  .{ "true", .bool_true },
10216
10127
  .{ "type", .type_type },
10128
+ .{ "undefined", .undef },
10129
+ .{ "void", .void_type },
10130
+
10131
+ .{ "f16", .f16_type },
10132
+ .{ "f32", .f32_type },
10133
+ .{ "f64", .f64_type },
10134
+ .{ "f80", .f80_type },
10135
+ .{ "f128", .f128_type },
10136
+
10137
+ .{ "u0", .u0_type },
10138
+ .{ "u1", .u1_type },
10139
+ .{ "u8", .u8_type },
10140
+ .{ "i8", .i8_type },
10217
10141
  .{ "u16", .u16_type },
10142
+ .{ "i16", .i16_type },
10218
10143
  .{ "u29", .u29_type },
10219
10144
  .{ "u32", .u32_type },
10145
+ .{ "i32", .i32_type },
10220
10146
  .{ "u64", .u64_type },
10147
+ .{ "i64", .i64_type },
10148
+ .{ "u80", .u80_type },
10221
10149
  .{ "u128", .u128_type },
10222
- .{ "u1", .u1_type },
10223
- .{ "u8", .u8_type },
10224
- .{ "undefined", .undef },
10150
+ .{ "i128", .i128_type },
10151
+ .{ "u256", .u256_type },
10225
10152
  .{ "usize", .usize_type },
10226
- .{ "void", .void_type },
10153
+ .{ "isize", .isize_type },
10227
10154
  });
10228
10155
 
10229
10156
  comptime {
@@ -10375,7 +10302,6 @@ fn nodeMayEvalToError(tree: *const Ast, start_node: Ast.Node.Index) BuiltinFn.Ev
10375
10302
  .add_wrap,
10376
10303
  .add_sat,
10377
10304
  .array_cat,
10378
- .array_mult,
10379
10305
  .assign,
10380
10306
  .assign_destructure,
10381
10307
  .assign_bit_and,
@@ -11215,7 +11141,6 @@ const Scope = struct {
11215
11141
  parent: *Scope,
11216
11142
  index: u32,
11217
11143
  len: u32,
11218
- remapped_err_code: Zir.Inst.OptionalIndex = .none,
11219
11144
  };
11220
11145
 
11221
11146
  /// Represents a global scope that has any number of declarations in it.
@@ -11433,7 +11358,7 @@ const GenZir = struct {
11433
11358
  const body_len = astgen.countBodyLenAfterFixups(body);
11434
11359
  try astgen.extra.ensureUnusedCapacity(
11435
11360
  gpa,
11436
- @typeInfo(Zir.Inst.BoolBr).@"struct".fields.len + body_len,
11361
+ @typeInfo(Zir.Inst.BoolBr).@"struct".field_names.len + body_len,
11437
11362
  );
11438
11363
  const zir_datas = astgen.instructions.items(.data);
11439
11364
  zir_datas[@intFromEnum(bool_br)].pl_node.payload_index = astgen.addExtraAssumeCapacity(Zir.Inst.BoolBr{
@@ -11457,7 +11382,7 @@ const GenZir = struct {
11457
11382
 
11458
11383
  try astgen.extra.ensureUnusedCapacity(
11459
11384
  gpa,
11460
- @typeInfo(Zir.Inst.Block).@"struct".fields.len + body_len,
11385
+ @typeInfo(Zir.Inst.Block).@"struct".field_names.len + body_len,
11461
11386
  );
11462
11387
  const zir_datas = astgen.instructions.items(.data);
11463
11388
  zir_datas[@intFromEnum(inst)].pl_node.payload_index = astgen.addExtraAssumeCapacity(
@@ -11480,7 +11405,7 @@ const GenZir = struct {
11480
11405
 
11481
11406
  try astgen.extra.ensureUnusedCapacity(
11482
11407
  gpa,
11483
- @typeInfo(Zir.Inst.BlockComptime).@"struct".fields.len + body_len,
11408
+ @typeInfo(Zir.Inst.BlockComptime).@"struct".field_names.len + body_len,
11484
11409
  );
11485
11410
  const zir_datas = astgen.instructions.items(.data);
11486
11411
  zir_datas[@intFromEnum(inst)].pl_node.payload_index = astgen.addExtraAssumeCapacity(
@@ -11501,7 +11426,7 @@ const GenZir = struct {
11501
11426
  const body_len = astgen.countBodyLenAfterFixups(body);
11502
11427
  try astgen.extra.ensureUnusedCapacity(
11503
11428
  gpa,
11504
- @typeInfo(Zir.Inst.Try).@"struct".fields.len + body_len,
11429
+ @typeInfo(Zir.Inst.Try).@"struct".field_names.len + body_len,
11505
11430
  );
11506
11431
  const zir_datas = astgen.instructions.items(.data);
11507
11432
  zir_datas[@intFromEnum(inst)].pl_node.payload_index = astgen.addExtraAssumeCapacity(
@@ -11614,7 +11539,7 @@ const GenZir = struct {
11614
11539
  inst_info: {
11615
11540
  try astgen.extra.ensureUnusedCapacity(
11616
11541
  gpa,
11617
- @typeInfo(Zir.Inst.FuncFancy).@"struct".fields.len +
11542
+ @typeInfo(Zir.Inst.FuncFancy).@"struct".field_names.len +
11618
11543
  fancyFnExprExtraLen(astgen, &.{}, cc_body, args.cc_ref) +
11619
11544
  fancyFnExprExtraLen(astgen, args.ret_param_refs, ret_body, ret_ref) +
11620
11545
  body_len + src_locs_and_hash.len +
@@ -11674,7 +11599,7 @@ const GenZir = struct {
11674
11599
  } else inst_info: {
11675
11600
  try astgen.extra.ensureUnusedCapacity(
11676
11601
  gpa,
11677
- @typeInfo(Zir.Inst.Func).@"struct".fields.len + 1 +
11602
+ @typeInfo(Zir.Inst.Func).@"struct".field_names.len + 1 +
11678
11603
  fancyFnExprExtraLen(astgen, args.ret_param_refs, ret_body, ret_ref) +
11679
11604
  body_len + src_locs_and_hash.len,
11680
11605
  );
@@ -11862,7 +11787,7 @@ const GenZir = struct {
11862
11787
  const param_body = param_gz.instructionsSlice();
11863
11788
  const body_len = gz.astgen.countBodyLenAfterFixupsExtraRefs(param_body, prev_param_insts);
11864
11789
  try gz.astgen.instructions.ensureUnusedCapacity(gpa, 1);
11865
- try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Param).@"struct".fields.len + body_len);
11790
+ try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Param).@"struct".field_names.len + body_len);
11866
11791
 
11867
11792
  const payload_index = gz.astgen.addExtraAssumeCapacity(Zir.Inst.Param{
11868
11793
  .name = name,
@@ -11886,8 +11811,8 @@ const GenZir = struct {
11886
11811
  return new_index;
11887
11812
  }
11888
11813
 
11889
- fn addBuiltinValue(gz: *GenZir, src_node: Ast.Node.Index, val: Zir.Inst.BuiltinValue) !Zir.Inst.Ref {
11890
- return addExtendedNodeSmall(gz, .builtin_value, src_node, @intFromEnum(val));
11814
+ fn addStdLangValue(gz: *GenZir, src_node: Ast.Node.Index, val: Zir.Inst.StdLangValue) !Zir.Inst.Ref {
11815
+ return addExtendedNodeSmall(gz, .std_lang_value, src_node, @intFromEnum(val));
11891
11816
  }
11892
11817
 
11893
11818
  fn addExtendedPayload(gz: *GenZir, opcode: Zir.Inst.Extended, extra: anytype) !Zir.Inst.Ref {
@@ -11932,7 +11857,7 @@ const GenZir = struct {
11932
11857
  try astgen.instructions.ensureUnusedCapacity(gpa, 1);
11933
11858
  try astgen.extra.ensureUnusedCapacity(
11934
11859
  gpa,
11935
- @typeInfo(Zir.Inst.NodeMultiOp).@"struct".fields.len + operands.len,
11860
+ @typeInfo(Zir.Inst.NodeMultiOp).@"struct".field_names.len + operands.len,
11936
11861
  );
11937
11862
 
11938
11863
  const payload_index = astgen.addExtraAssumeCapacity(Zir.Inst.NodeMultiOp{
@@ -12173,7 +12098,7 @@ const GenZir = struct {
12173
12098
  ) !Zir.Inst.Index {
12174
12099
  const gpa = gz.astgen.gpa;
12175
12100
  try gz.astgen.instructions.ensureUnusedCapacity(gpa, 1);
12176
- try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Break).@"struct".fields.len);
12101
+ try gz.astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Break).@"struct".field_names.len);
12177
12102
 
12178
12103
  const new_index: Zir.Inst.Index = @enumFromInt(gz.astgen.instructions.len);
12179
12104
  gz.astgen.instructions.appendAssumeCapacity(.{
@@ -12296,7 +12221,7 @@ const GenZir = struct {
12296
12221
  try astgen.instructions.ensureUnusedCapacity(gpa, 1);
12297
12222
  try astgen.extra.ensureUnusedCapacity(
12298
12223
  gpa,
12299
- @typeInfo(Zir.Inst.AllocExtended).@"struct".fields.len +
12224
+ @typeInfo(Zir.Inst.AllocExtended).@"struct".field_names.len +
12300
12225
  @intFromBool(args.type_inst != .none) +
12301
12226
  @intFromBool(args.align_inst != .none),
12302
12227
  );
@@ -12348,9 +12273,9 @@ const GenZir = struct {
12348
12273
 
12349
12274
  try gz.instructions.ensureUnusedCapacity(gpa, 1);
12350
12275
  try astgen.instructions.ensureUnusedCapacity(gpa, 1);
12351
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Asm).@"struct".fields.len +
12352
- args.outputs.len * @typeInfo(Zir.Inst.Asm.Output).@"struct".fields.len +
12353
- args.inputs.len * @typeInfo(Zir.Inst.Asm.Input).@"struct".fields.len);
12276
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.Asm).@"struct".field_names.len +
12277
+ args.outputs.len * @typeInfo(Zir.Inst.Asm.Output).@"struct".field_names.len +
12278
+ args.inputs.len * @typeInfo(Zir.Inst.Asm.Input).@"struct".field_names.len);
12354
12279
 
12355
12280
  const payload_index = gz.astgen.addExtraAssumeCapacity(Zir.Inst.Asm{
12356
12281
  .src_node = gz.nodeIndexToRelative(args.node),
@@ -12435,7 +12360,7 @@ const GenZir = struct {
12435
12360
  fn setStruct(gz: *GenZir, inst: Zir.Inst.Index, args: struct {
12436
12361
  src_node: Ast.Node.Index,
12437
12362
  name_strat: Zir.Inst.NameStrategy,
12438
- layout: std.builtin.Type.ContainerLayout,
12363
+ layout: std.lang.Type.ContainerLayout,
12439
12364
  backing_int_type_body_len: ?u32,
12440
12365
  decls_len: u32,
12441
12366
  fields_len: u32,
@@ -12459,7 +12384,7 @@ const GenZir = struct {
12459
12384
 
12460
12385
  const fields_hash_arr: [4]u32 = @bitCast(args.fields_hash);
12461
12386
 
12462
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.StructDecl).@"struct".fields.len +
12387
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.StructDecl).@"struct".field_names.len +
12463
12388
  4 + // `captures_len`, `decls_len`, `fields_len`, `backing_int_type_body_len`
12464
12389
  captures_len * 2 + // `capture`, `capture_name`
12465
12390
  args.remaining.len);
@@ -12526,7 +12451,7 @@ const GenZir = struct {
12526
12451
 
12527
12452
  const fields_hash_arr: [4]u32 = @bitCast(args.fields_hash);
12528
12453
 
12529
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.UnionDecl).@"struct".fields.len +
12454
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.UnionDecl).@"struct".field_names.len +
12530
12455
  4 + // `captures_len`, `decls_len`, `fields_len`, `arg_type_body_len`
12531
12456
  captures_len * 2 + // `capture`, `capture_name`
12532
12457
  args.remaining.len);
@@ -12594,7 +12519,7 @@ const GenZir = struct {
12594
12519
 
12595
12520
  const fields_hash_arr: [4]u32 = @bitCast(args.fields_hash);
12596
12521
 
12597
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.EnumDecl).@"struct".fields.len +
12522
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.EnumDecl).@"struct".field_names.len +
12598
12523
  4 + // `captures_len`, `decls_len`, `fields_len`, `tag_type_body_len`
12599
12524
  captures_len * 2 + // `capture`, `capture_name`
12600
12525
  args.remaining.len);
@@ -12650,7 +12575,7 @@ const GenZir = struct {
12650
12575
  const captures_len: u32 = @intCast(args.captures.len);
12651
12576
  assert(args.capture_names.len == captures_len);
12652
12577
 
12653
- try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.OpaqueDecl).@"struct".fields.len +
12578
+ try astgen.extra.ensureUnusedCapacity(gpa, @typeInfo(Zir.Inst.OpaqueDecl).@"struct".field_names.len +
12654
12579
  2 + // `captures_len`, `decls_len`
12655
12580
  captures_len * 2 + // `capture`, `capture_name`
12656
12581
  args.decls.len);
@@ -12926,17 +12851,18 @@ fn scanContainer(
12926
12851
  next: ?*@This(),
12927
12852
  };
12928
12853
 
12929
- // The maps below are allocated into this SFBA to avoid using the GPA for small namespaces.
12930
- var sfba_state = std.heap.stackFallback(512, astgen.gpa);
12931
- const sfba = sfba_state.get();
12854
+ // The maps below are allocated into this BFA to avoid using the GPA for small namespaces.
12855
+ var bfa_buf: [512]u8 = undefined;
12856
+ var bfa_state: std.heap.BufferFirstAllocator = .init(&bfa_buf, astgen.gpa);
12857
+ const bfa = bfa_state.allocator();
12932
12858
 
12933
12859
  var names: std.AutoArrayHashMapUnmanaged(Zir.NullTerminatedString, NameEntry) = .empty;
12934
12860
  var test_names: std.AutoArrayHashMapUnmanaged(Zir.NullTerminatedString, NameEntry) = .empty;
12935
12861
  var decltest_names: std.AutoArrayHashMapUnmanaged(Zir.NullTerminatedString, NameEntry) = .empty;
12936
12862
  defer {
12937
- names.deinit(sfba);
12938
- test_names.deinit(sfba);
12939
- decltest_names.deinit(sfba);
12863
+ names.deinit(bfa);
12864
+ test_names.deinit(bfa);
12865
+ decltest_names.deinit(bfa);
12940
12866
  }
12941
12867
 
12942
12868
  var any_duplicates = false;
@@ -13008,7 +12934,7 @@ fn scanContainer(
13008
12934
  else => {}, // unnamed test
13009
12935
  .string_literal => {
13010
12936
  const name = try astgen.strLitAsString(test_name_token);
13011
- const gop = try test_names.getOrPut(sfba, name.index);
12937
+ const gop = try test_names.getOrPut(bfa, name.index);
13012
12938
  if (gop.found_existing) {
13013
12939
  var e = gop.value_ptr;
13014
12940
  while (e.next) |n| e = n;
@@ -13021,7 +12947,7 @@ fn scanContainer(
13021
12947
  },
13022
12948
  .identifier => {
13023
12949
  const name = try astgen.identAsString(test_name_token);
13024
- const gop = try decltest_names.getOrPut(sfba, name);
12950
+ const gop = try decltest_names.getOrPut(bfa, name);
13025
12951
  if (gop.found_existing) {
13026
12952
  var e = gop.value_ptr;
13027
12953
  while (e.next) |n| e = n;
@@ -13048,7 +12974,7 @@ fn scanContainer(
13048
12974
  }
13049
12975
 
13050
12976
  {
13051
- const gop = try names.getOrPut(sfba, name_str_index);
12977
+ const gop = try names.getOrPut(bfa, name_str_index);
13052
12978
  const new_ent: NameEntry = .{
13053
12979
  .tok = name_token,
13054
12980
  .next = null,
@@ -13549,7 +13475,7 @@ fn setDeclaration(
13549
13475
  const flags_arr: [2]u32 = @bitCast(flags);
13550
13476
 
13551
13477
  const need_extra: usize =
13552
- @typeInfo(Zir.Inst.Declaration).@"struct".fields.len +
13478
+ @typeInfo(Zir.Inst.Declaration).@"struct".field_names.len +
13553
13479
  @as(usize, @intFromBool(id.hasName())) +
13554
13480
  @as(usize, @intFromBool(id.hasLibName())) +
13555
13481
  @as(usize, @intFromBool(id.hasTypeBody())) +