@zigc/lib 0.17.0-dev.27 → 0.17.0-dev.296

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 (1103) hide show
  1. package/c/fcntl.zig +6 -1
  2. package/c/inttypes.zig +0 -10
  3. package/c/math.zig +52 -112
  4. package/c/pthread.zig +57 -0
  5. package/c/search.zig +1 -27
  6. package/c/stdlib/drand48.zig +0 -57
  7. package/c/stdlib.zig +31 -121
  8. package/c/string.zig +20 -7
  9. package/c/strings.zig +0 -38
  10. package/c/unistd.zig +27 -26
  11. package/c/wchar.zig +10 -0
  12. package/c.zig +2 -2
  13. package/compiler/aro/aro/CodeGen.zig +7 -8
  14. package/compiler/aro/aro/Compilation.zig +17 -17
  15. package/compiler/aro/aro/Driver.zig +14 -13
  16. package/compiler/aro/aro/Parser.zig +20 -15
  17. package/compiler/aro/aro/Pragma.zig +3 -2
  18. package/compiler/aro/aro/Preprocessor.zig +9 -6
  19. package/compiler/aro/aro/pragmas/message.zig +3 -2
  20. package/compiler/aro/aro/text_literal.zig +3 -2
  21. package/compiler/aro/assembly_backend/x86_64.zig +4 -4
  22. package/compiler/build_runner.zig +2 -4
  23. package/compiler/reduce/Walk.zig +8 -13
  24. package/compiler/resinator/compile.zig +1 -1
  25. package/compiler/resinator/cvtres.zig +4 -4
  26. package/compiler/resinator/errors.zig +7 -7
  27. package/compiler/resinator/ico.zig +4 -4
  28. package/compiler/resinator/parse.zig +2 -2
  29. package/compiler/resinator/res.zig +1 -1
  30. package/compiler/std-docs.zig +1 -1
  31. package/compiler/test_runner.zig +1 -1
  32. package/compiler/translate-c/MacroTranslator.zig +1 -1
  33. package/compiler/translate-c/Translator.zig +6 -2
  34. package/compiler/translate-c/ast.zig +16 -23
  35. package/compiler/translate-c/main.zig +1 -1
  36. package/compiler_rt/addf3.zig +1 -1
  37. package/compiler_rt/arm.zig +3 -3
  38. package/compiler_rt/atomics.zig +1 -1
  39. package/compiler_rt/comparef.zig +3 -3
  40. package/compiler_rt/cos.zig +1 -3
  41. package/compiler_rt/count0bits.zig +1 -1
  42. package/compiler_rt/divdf3.zig +2 -2
  43. package/compiler_rt/divsf3.zig +1 -1
  44. package/compiler_rt/divtf3.zig +1 -1
  45. package/compiler_rt/divxf3.zig +1 -1
  46. package/compiler_rt/exp.zig +0 -2
  47. package/compiler_rt/exp2.zig +0 -2
  48. package/compiler_rt/extendf.zig +5 -5
  49. package/compiler_rt/fabs.zig +1 -3
  50. package/compiler_rt/float_from_int.zig +3 -4
  51. package/compiler_rt/fma.zig +0 -2
  52. package/compiler_rt/fmax.zig +1 -3
  53. package/compiler_rt/fmin.zig +1 -3
  54. package/compiler_rt/fmod.zig +2 -4
  55. package/compiler_rt/limb64.zig +3 -2
  56. package/compiler_rt/log.zig +0 -2
  57. package/compiler_rt/log10.zig +0 -2
  58. package/compiler_rt/log2.zig +0 -2
  59. package/compiler_rt/mulf3.zig +2 -2
  60. package/compiler_rt/rem_pio2l.zig +1 -1
  61. package/compiler_rt/round.zig +0 -2
  62. package/compiler_rt/sin.zig +1 -3
  63. package/compiler_rt/sincos.zig +1 -3
  64. package/compiler_rt/sqrt.zig +0 -2
  65. package/compiler_rt/ssp.zig +2 -2
  66. package/compiler_rt/tan.zig +1 -3
  67. package/compiler_rt/trunc.zig +0 -2
  68. package/compiler_rt/truncf.zig +3 -3
  69. package/compiler_rt/trunctfhf2.zig +3 -0
  70. package/compiler_rt.zig +5 -26
  71. package/docs/wasm/Walk.zig +1 -3
  72. package/docs/wasm/html_render.zig +1 -2
  73. package/docs/wasm/markdown/Parser.zig +16 -20
  74. package/fuzzer.zig +2 -0
  75. package/include/__clang_spirv_builtins.h +12 -12
  76. package/include/__float_float.h +176 -0
  77. package/include/__float_header_macro.h +12 -0
  78. package/include/__float_infinity_nan.h +20 -0
  79. package/include/amo.h +131 -0
  80. package/include/amxavx512intrin.h +215 -1
  81. package/include/amxintrin.h +0 -2
  82. package/include/arm_acle.h +37 -27
  83. package/include/arm_neon.h +218 -82
  84. package/include/arm_sme.h +8 -8
  85. package/include/arm_sve.h +4162 -3782
  86. package/include/avx10_2_512bf16intrin.h +19 -12
  87. package/include/avx10_2_512convertintrin.h +1 -1
  88. package/include/avx10_2_512niintrin.h +31 -31
  89. package/include/avx10_2_512satcvtdsintrin.h +1 -1
  90. package/include/avx10_2bf16intrin.h +54 -45
  91. package/include/avx10_2convertintrin.h +2 -2
  92. package/include/avx10_2copyintrin.h +1 -1
  93. package/include/avx10_2niintrin.h +14 -14
  94. package/include/avx10_2satcvtdsintrin.h +2 -2
  95. package/include/avx2intrin.h +275 -377
  96. package/include/avx512bf16intrin.h +25 -16
  97. package/include/avx512bitalgintrin.h +19 -30
  98. package/include/avx512bwintrin.h +386 -505
  99. package/include/avx512cdintrin.h +42 -55
  100. package/include/avx512dqintrin.h +132 -161
  101. package/include/avx512fintrin.h +1015 -1424
  102. package/include/avx512fp16intrin.h +112 -110
  103. package/include/avx512ifmaintrin.h +32 -34
  104. package/include/avx512ifmavlintrin.h +73 -46
  105. package/include/avx512vbmi2intrin.h +43 -32
  106. package/include/avx512vbmiintrin.h +19 -27
  107. package/include/avx512vbmivlintrin.h +35 -49
  108. package/include/avx512vlbf16intrin.h +32 -22
  109. package/include/avx512vlbitalgintrin.h +37 -53
  110. package/include/avx512vlbwintrin.h +470 -573
  111. package/include/avx512vlcdintrin.h +74 -102
  112. package/include/avx512vldqintrin.h +110 -127
  113. package/include/avx512vlfp16intrin.h +130 -111
  114. package/include/avx512vlintrin.h +945 -1299
  115. package/include/avx512vlvbmi2intrin.h +78 -63
  116. package/include/avx512vlvnniintrin.h +21 -18
  117. package/include/avx512vlvp2intersectintrin.h +2 -2
  118. package/include/avx512vnniintrin.h +10 -10
  119. package/include/avx512vp2intersectintrin.h +1 -2
  120. package/include/avx512vpopcntdqintrin.h +8 -10
  121. package/include/avx512vpopcntdqvlintrin.h +17 -15
  122. package/include/avxifmaintrin.h +16 -0
  123. package/include/avxintrin.h +165 -241
  124. package/include/avxvnniint16intrin.h +118 -99
  125. package/include/avxvnniint8intrin.h +56 -32
  126. package/include/avxvnniintrin.h +16 -8
  127. package/include/cpuid.h +101 -4
  128. package/include/emmintrin.h +168 -168
  129. package/include/f16cintrin.h +23 -9
  130. package/include/float.h +16 -155
  131. package/include/fma4intrin.h +98 -96
  132. package/include/fmaintrin.h +96 -66
  133. package/include/gfniintrin.h +21 -16
  134. package/include/hexagon_types.h +23 -20
  135. package/include/hvx_hexagon_protos.h +649 -860
  136. package/include/immintrin.h +0 -12
  137. package/include/intrin.h +4 -0
  138. package/include/lasxintrin.h +113 -0
  139. package/include/llvm_libc_wrappers/assert.h +3 -5
  140. package/include/llvm_libc_wrappers/ctype.h +3 -115
  141. package/include/llvm_libc_wrappers/inttypes.h +3 -5
  142. package/include/llvm_libc_wrappers/stdio.h +10 -38
  143. package/include/llvm_libc_wrappers/stdlib.h +3 -24
  144. package/include/llvm_libc_wrappers/string.h +2 -70
  145. package/include/llvm_libc_wrappers/time.h +4 -10
  146. package/include/mmintrin.h +188 -257
  147. package/include/module.modulemap +23 -4
  148. package/include/movrs_avx10_2_512intrin.h +2 -2
  149. package/include/movrs_avx10_2intrin.h +4 -4
  150. package/include/pmmintrin.h +12 -24
  151. package/include/ptrauth.h +16 -2
  152. package/include/riscv_mips.h +34 -0
  153. package/include/riscv_nds.h +89 -0
  154. package/include/sifive_vector.h +58 -2
  155. package/include/sm4evexintrin.h +2 -2
  156. package/include/smmintrin.h +77 -59
  157. package/include/spirvintrin.h +194 -0
  158. package/include/stddefer.h +19 -0
  159. package/include/tmmintrin.h +116 -147
  160. package/include/vaesintrin.h +1 -2
  161. package/include/xmmintrin.h +44 -70
  162. package/include/xopintrin.h +20 -10
  163. package/libc/include/aarch64-linux-any/asm/hwcap.h +1 -0
  164. package/libc/include/aarch64-linux-any/asm/unistd_64.h +1 -0
  165. package/libc/include/any-linux-any/asm-generic/errno.h +2 -0
  166. package/libc/include/any-linux-any/asm-generic/unistd.h +4 -1
  167. package/libc/include/any-linux-any/drm/amdgpu_drm.h +20 -6
  168. package/libc/include/any-linux-any/drm/amdxdna_accel.h +8 -0
  169. package/libc/include/any-linux-any/drm/drm_fourcc.h +6 -6
  170. package/libc/include/any-linux-any/drm/panfrost_drm.h +75 -1
  171. package/libc/include/any-linux-any/drm/panthor_drm.h +154 -3
  172. package/libc/include/any-linux-any/drm/rocket_accel.h +74 -24
  173. package/libc/include/any-linux-any/drm/xe_drm.h +89 -6
  174. package/libc/include/any-linux-any/linux/android/binder.h +1 -1
  175. package/libc/include/any-linux-any/linux/bpf.h +28 -0
  176. package/libc/include/any-linux-any/linux/btrfs.h +1 -0
  177. package/libc/include/any-linux-any/linux/btrfs_tree.h +32 -2
  178. package/libc/include/any-linux-any/linux/dma-buf.h +1 -0
  179. package/libc/include/any-linux-any/linux/dpll.h +1 -0
  180. package/libc/include/any-linux-any/linux/elf.h +2 -0
  181. package/libc/include/any-linux-any/linux/ethtool.h +21 -5
  182. package/libc/include/any-linux-any/linux/fs.h +1 -0
  183. package/libc/include/any-linux-any/linux/hyperv.h +1 -1
  184. package/libc/include/any-linux-any/linux/idxd.h +134 -134
  185. package/libc/include/any-linux-any/linux/if_alg.h +1 -1
  186. package/libc/include/any-linux-any/linux/if_link.h +1 -0
  187. package/libc/include/any-linux-any/linux/input-event-codes.h +4 -0
  188. package/libc/include/any-linux-any/linux/io_uring/bpf_filter.h +68 -0
  189. package/libc/include/any-linux-any/linux/io_uring/query.h +5 -1
  190. package/libc/include/any-linux-any/linux/io_uring.h +33 -2
  191. package/libc/include/any-linux-any/linux/iommufd.h +39 -0
  192. package/libc/include/any-linux-any/linux/kfd_ioctl.h +13 -3
  193. package/libc/include/any-linux-any/linux/kfd_sysfs.h +2 -1
  194. package/libc/include/any-linux-any/linux/kvm.h +30 -6
  195. package/libc/include/any-linux-any/linux/landlock.h +22 -8
  196. package/libc/include/any-linux-any/linux/magic.h +1 -0
  197. package/libc/include/any-linux-any/linux/mempolicy.h +3 -0
  198. package/libc/include/any-linux-any/linux/mount.h +11 -2
  199. package/libc/include/any-linux-any/linux/mptcp_pm.h +1 -1
  200. package/libc/include/any-linux-any/linux/mshv.h +2 -0
  201. package/libc/include/any-linux-any/linux/netfilter_bridge.h +5 -4
  202. package/libc/include/any-linux-any/linux/netfilter_ipv4.h +4 -5
  203. package/libc/include/any-linux-any/linux/netfilter_ipv6.h +3 -4
  204. package/libc/include/any-linux-any/linux/nfs.h +1 -1
  205. package/libc/include/any-linux-any/linux/nfsd_netlink.h +1 -0
  206. package/libc/include/any-linux-any/linux/nilfs2_api.h +2 -2
  207. package/libc/include/any-linux-any/linux/nilfs2_ondisk.h +97 -66
  208. package/libc/include/any-linux-any/linux/nl80211.h +104 -3
  209. package/libc/include/any-linux-any/linux/pci.h +7 -0
  210. package/libc/include/any-linux-any/linux/pci_regs.h +65 -6
  211. package/libc/include/any-linux-any/linux/pcitest.h +1 -0
  212. package/libc/include/any-linux-any/linux/perf_event.h +24 -3
  213. package/libc/include/any-linux-any/linux/pkt_sched.h +1 -0
  214. package/libc/include/any-linux-any/linux/prctl.h +30 -0
  215. package/libc/include/any-linux-any/linux/rseq.h +62 -5
  216. package/libc/include/any-linux-any/linux/shm.h +0 -1
  217. package/libc/include/any-linux-any/linux/stddef.h +4 -0
  218. package/libc/include/any-linux-any/linux/sysctl.h +1 -2
  219. package/libc/include/any-linux-any/linux/taskstats.h +12 -1
  220. package/libc/include/any-linux-any/linux/tcp.h +23 -3
  221. package/libc/include/any-linux-any/linux/typelimits.h +8 -0
  222. package/libc/include/any-linux-any/linux/ublk_cmd.h +120 -1
  223. package/libc/include/any-linux-any/linux/v4l2-controls.h +63 -0
  224. package/libc/include/any-linux-any/linux/vbox_vmmdev_types.h +2 -2
  225. package/libc/include/any-linux-any/linux/vduse.h +80 -5
  226. package/libc/include/any-linux-any/linux/version.h +3 -3
  227. package/libc/include/any-linux-any/linux/vfio.h +4 -0
  228. package/libc/include/any-linux-any/linux/videodev2.h +3 -0
  229. package/libc/include/any-linux-any/linux/virtio_ring.h +1 -2
  230. package/libc/include/any-linux-any/linux/vmclock-abi.h +20 -0
  231. package/libc/include/any-linux-any/rdma/bnxt_re-abi.h +16 -0
  232. package/libc/include/any-linux-any/rdma/ib_user_ioctl_cmds.h +16 -0
  233. package/libc/include/any-linux-any/rdma/mana-abi.h +3 -0
  234. package/libc/include/any-linux-any/scsi/scsi_bsg_ufs.h +8 -9
  235. package/libc/include/any-linux-any/sound/sof/tokens.h +6 -0
  236. package/libc/include/arc-linux-any/asm/swab.h +0 -63
  237. package/libc/include/arc-linux-any/asm/unistd_32.h +1 -0
  238. package/libc/include/arm-linux-any/asm/ptrace.h +0 -9
  239. package/libc/include/arm-linux-any/asm/unistd-eabi.h +1 -0
  240. package/libc/include/arm-linux-any/asm/unistd-oabi.h +1 -0
  241. package/libc/include/csky-linux-any/asm/unistd_32.h +1 -0
  242. package/libc/include/hexagon-linux-any/asm/unistd_32.h +1 -0
  243. package/libc/include/loongarch-linux-any/asm/hwcap.h +1 -0
  244. package/libc/include/loongarch-linux-any/asm/kvm.h +1 -0
  245. package/libc/include/loongarch-linux-any/asm/kvm_para.h +1 -0
  246. package/libc/include/loongarch-linux-any/asm/unistd_32.h +2 -0
  247. package/libc/include/loongarch-linux-any/asm/unistd_64.h +2 -0
  248. package/libc/include/m68k-linux-any/asm/unistd_32.h +1 -0
  249. package/libc/include/mips-linux-any/asm/errno.h +2 -0
  250. package/libc/include/mips-linux-any/asm/unistd_n32.h +1 -0
  251. package/libc/include/mips-linux-any/asm/unistd_n64.h +1 -0
  252. package/libc/include/mips-linux-any/asm/unistd_o32.h +1 -0
  253. package/libc/include/powerpc-linux-any/asm/unistd_32.h +1 -0
  254. package/libc/include/powerpc-linux-any/asm/unistd_64.h +1 -0
  255. package/libc/include/riscv-linux-any/asm/hwprobe.h +4 -0
  256. package/libc/include/riscv-linux-any/asm/kvm.h +3 -0
  257. package/libc/include/riscv-linux-any/asm/ptrace.h +37 -0
  258. package/libc/include/riscv-linux-any/asm/sigcontext.h +1 -0
  259. package/libc/include/riscv-linux-any/asm/unistd_32.h +1 -0
  260. package/libc/include/riscv-linux-any/asm/unistd_64.h +1 -0
  261. package/libc/include/s390x-linux-any/asm/unistd_64.h +1 -0
  262. package/libc/include/sparc-linux-any/asm/errno.h +2 -0
  263. package/libc/include/sparc-linux-any/asm/ioctls.h +4 -4
  264. package/libc/include/sparc-linux-any/asm/unistd_32.h +2 -0
  265. package/libc/include/sparc-linux-any/asm/unistd_64.h +2 -0
  266. package/libc/include/x86-linux-any/asm/auxvec.h +0 -4
  267. package/libc/include/x86-linux-any/asm/kvm.h +13 -8
  268. package/libc/include/x86-linux-any/asm/svm.h +16 -16
  269. package/libc/include/x86-linux-any/asm/unistd_32.h +1 -0
  270. package/libc/include/x86-linux-any/asm/unistd_64.h +1 -0
  271. package/libc/include/x86-linux-any/asm/unistd_x32.h +1 -0
  272. package/libc/include/xtensa-linux-any/asm/unistd_32.h +1 -0
  273. package/libc/musl/arch/mipsn32/syscall_arch.h +35 -32
  274. package/libcxx/include/__algorithm/all_of.h +11 -5
  275. package/libcxx/include/__algorithm/comp.h +4 -0
  276. package/libcxx/include/__algorithm/copy.h +28 -147
  277. package/libcxx/include/__algorithm/copy_backward.h +9 -24
  278. package/libcxx/include/__algorithm/copy_n.h +50 -16
  279. package/libcxx/include/__algorithm/count.h +2 -2
  280. package/libcxx/include/__algorithm/equal.h +43 -55
  281. package/libcxx/include/__algorithm/fill.h +26 -8
  282. package/libcxx/include/__algorithm/fill_n.h +32 -46
  283. package/libcxx/include/__algorithm/find.h +96 -39
  284. package/libcxx/include/__algorithm/find_end.h +105 -0
  285. package/libcxx/include/__algorithm/for_each.h +18 -24
  286. package/libcxx/include/__algorithm/for_each_n.h +20 -47
  287. package/libcxx/include/__algorithm/for_each_n_segment.h +1 -1
  288. package/libcxx/include/__algorithm/for_each_segment.h +26 -0
  289. package/libcxx/include/__algorithm/generate.h +4 -2
  290. package/libcxx/include/__algorithm/generate_n.h +19 -6
  291. package/libcxx/include/__algorithm/is_permutation.h +4 -4
  292. package/libcxx/include/__algorithm/iterator_operations.h +3 -0
  293. package/libcxx/include/__algorithm/lexicographical_compare.h +2 -2
  294. package/libcxx/include/__algorithm/lexicographical_compare_three_way.h +6 -6
  295. package/libcxx/include/__algorithm/make_heap.h +16 -4
  296. package/libcxx/include/__algorithm/mismatch.h +2 -2
  297. package/libcxx/include/__algorithm/move.h +8 -19
  298. package/libcxx/include/__algorithm/move_backward.h +9 -24
  299. package/libcxx/include/__algorithm/none_of.h +4 -4
  300. package/libcxx/include/__algorithm/partial_sort.h +1 -1
  301. package/libcxx/include/__algorithm/partial_sort_copy.h +1 -1
  302. package/libcxx/include/__algorithm/pstl.h +9 -9
  303. package/libcxx/include/__algorithm/radix_sort.h +27 -25
  304. package/libcxx/include/__algorithm/ranges_copy_n.h +3 -26
  305. package/libcxx/include/__algorithm/ranges_equal.h +17 -26
  306. package/libcxx/include/__algorithm/ranges_fill.h +7 -6
  307. package/libcxx/include/__algorithm/ranges_for_each.h +9 -1
  308. package/libcxx/include/__algorithm/ranges_generate_n.h +2 -6
  309. package/libcxx/include/__algorithm/ranges_search_n.h +2 -2
  310. package/libcxx/include/__algorithm/rotate.h +27 -44
  311. package/libcxx/include/__algorithm/search_n.h +49 -37
  312. package/libcxx/include/__algorithm/sift_down.h +19 -18
  313. package/libcxx/include/__algorithm/simd_utils.h +33 -4
  314. package/libcxx/include/__algorithm/specialized_algorithms.h +54 -0
  315. package/libcxx/include/__algorithm/stable_sort.h +1 -1
  316. package/libcxx/include/__assertion_handler +31 -4
  317. package/libcxx/include/__atomic/atomic.h +36 -60
  318. package/libcxx/include/__atomic/atomic_flag.h +19 -37
  319. package/libcxx/include/__atomic/atomic_ref.h +29 -12
  320. package/libcxx/include/__atomic/atomic_sync.h +127 -55
  321. package/libcxx/include/__atomic/atomic_sync_timed.h +144 -0
  322. package/libcxx/include/__atomic/atomic_waitable_traits.h +103 -0
  323. package/libcxx/include/__atomic/contention_t.h +27 -3
  324. package/libcxx/include/__atomic/floating_point_helper.h +55 -0
  325. package/libcxx/include/__bit/countl.h +1 -2
  326. package/libcxx/include/__bit/countr.h +1 -2
  327. package/libcxx/include/__bit/has_single_bit.h +1 -1
  328. package/libcxx/include/__bit/popcount.h +0 -1
  329. package/libcxx/include/__bit/rotate.h +15 -26
  330. package/libcxx/include/__bit_reference +207 -18
  331. package/libcxx/include/__charconv/from_chars_integral.h +1 -1
  332. package/libcxx/include/__charconv/from_chars_result.h +1 -1
  333. package/libcxx/include/__charconv/to_chars_integral.h +1 -0
  334. package/libcxx/include/__charconv/to_chars_result.h +1 -1
  335. package/libcxx/include/__charconv/traits.h +3 -24
  336. package/libcxx/include/__chrono/day.h +11 -0
  337. package/libcxx/include/__chrono/duration.h +58 -33
  338. package/libcxx/include/__chrono/file_clock.h +4 -2
  339. package/libcxx/include/__chrono/is_clock.h +72 -0
  340. package/libcxx/include/__chrono/leap_second.h +13 -0
  341. package/libcxx/include/__chrono/month.h +13 -0
  342. package/libcxx/include/__chrono/month_weekday.h +22 -0
  343. package/libcxx/include/__chrono/monthday.h +20 -0
  344. package/libcxx/include/__chrono/steady_clock.h +1 -1
  345. package/libcxx/include/__chrono/system_clock.h +3 -3
  346. package/libcxx/include/__chrono/time_point.h +37 -13
  347. package/libcxx/include/__chrono/weekday.h +25 -0
  348. package/libcxx/include/__chrono/year.h +11 -0
  349. package/libcxx/include/__chrono/year_month.h +13 -0
  350. package/libcxx/include/__chrono/year_month_day.h +23 -0
  351. package/libcxx/include/__chrono/year_month_weekday.h +26 -0
  352. package/libcxx/include/__chrono/zoned_time.h +16 -0
  353. package/libcxx/include/__compare/is_eq.h +6 -6
  354. package/libcxx/include/__compare/strong_order.h +12 -30
  355. package/libcxx/include/__compare/three_way_comparable.h +2 -2
  356. package/libcxx/include/__concepts/comparison_common_type.h +40 -0
  357. package/libcxx/include/__concepts/equality_comparable.h +2 -1
  358. package/libcxx/include/__condition_variable/condition_variable.h +1 -1
  359. package/libcxx/include/__config +63 -280
  360. package/libcxx/include/__configuration/abi.h +14 -24
  361. package/libcxx/include/__configuration/availability.h +65 -118
  362. package/libcxx/include/__configuration/compiler.h +6 -6
  363. package/libcxx/include/__configuration/experimental.h +38 -0
  364. package/libcxx/include/__configuration/hardening.h +215 -0
  365. package/libcxx/include/__configuration/language.h +3 -0
  366. package/libcxx/include/__configuration/platform.h +9 -16
  367. package/libcxx/include/__coroutine/coroutine_handle.h +9 -9
  368. package/libcxx/include/__coroutine/noop_coroutine_handle.h +11 -13
  369. package/libcxx/include/__debug_utils/strict_weak_ordering_check.h +1 -1
  370. package/libcxx/include/__exception/exception.h +6 -4
  371. package/libcxx/include/__exception/exception_ptr.h +27 -5
  372. package/libcxx/include/__exception/nested_exception.h +2 -2
  373. package/libcxx/include/__exception/operations.h +5 -5
  374. package/libcxx/include/__expected/bad_expected_access.h +8 -6
  375. package/libcxx/include/__expected/expected.h +62 -64
  376. package/libcxx/include/__expected/unexpected.h +4 -4
  377. package/libcxx/include/__filesystem/copy_options.h +4 -4
  378. package/libcxx/include/__filesystem/directory_entry.h +37 -33
  379. package/libcxx/include/__filesystem/directory_iterator.h +9 -11
  380. package/libcxx/include/__filesystem/directory_options.h +7 -4
  381. package/libcxx/include/__filesystem/file_status.h +3 -3
  382. package/libcxx/include/__filesystem/filesystem_error.h +9 -10
  383. package/libcxx/include/__filesystem/operations.h +97 -66
  384. package/libcxx/include/__filesystem/path.h +68 -64
  385. package/libcxx/include/__filesystem/path_iterator.h +1 -3
  386. package/libcxx/include/__filesystem/perm_options.h +4 -4
  387. package/libcxx/include/__filesystem/perms.h +4 -4
  388. package/libcxx/include/__filesystem/recursive_directory_iterator.h +9 -14
  389. package/libcxx/include/__filesystem/space_info.h +1 -1
  390. package/libcxx/include/__filesystem/u8path.h +12 -14
  391. package/libcxx/include/__flat_map/flat_map.h +88 -71
  392. package/libcxx/include/__flat_map/flat_multimap.h +251 -172
  393. package/libcxx/include/__flat_map/key_value_iterator.h +0 -1
  394. package/libcxx/include/__flat_map/utils.h +1 -0
  395. package/libcxx/include/__flat_set/flat_multiset.h +211 -143
  396. package/libcxx/include/__flat_set/flat_set.h +86 -68
  397. package/libcxx/include/__format/concepts.h +0 -14
  398. package/libcxx/include/__format/extended_grapheme_cluster_table.h +3 -2
  399. package/libcxx/include/__format/fmt_pair_like.h +42 -0
  400. package/libcxx/include/__format/format_arg.h +7 -10
  401. package/libcxx/include/__format/format_args.h +1 -1
  402. package/libcxx/include/__format/format_context.h +5 -5
  403. package/libcxx/include/__format/format_parse_context.h +2 -2
  404. package/libcxx/include/__format/formatter_output.h +30 -34
  405. package/libcxx/include/__format/indic_conjunct_break_table.h +3 -2
  406. package/libcxx/include/__format/range_default_formatter.h +2 -41
  407. package/libcxx/include/__format/range_format.h +71 -0
  408. package/libcxx/include/__format/range_formatter.h +1 -0
  409. package/libcxx/include/__format/width_estimation_table.h +4 -2
  410. package/libcxx/include/__functional/bind.h +10 -15
  411. package/libcxx/include/__functional/bind_back.h +1 -1
  412. package/libcxx/include/__functional/bind_front.h +1 -1
  413. package/libcxx/include/__functional/function.h +57 -75
  414. package/libcxx/include/__functional/hash.h +1 -10
  415. package/libcxx/include/__functional/identity.h +1 -1
  416. package/libcxx/include/__functional/is_transparent.h +8 -0
  417. package/libcxx/include/__functional/mem_fn.h +2 -1
  418. package/libcxx/include/__functional/operations.h +18 -0
  419. package/libcxx/include/__functional/ranges_operations.h +7 -0
  420. package/libcxx/include/__functional/reference_wrapper.h +7 -5
  421. package/libcxx/include/__functional/weak_result_type.h +14 -28
  422. package/libcxx/include/__fwd/ios.h +1 -1
  423. package/libcxx/include/__fwd/tuple.h +14 -0
  424. package/libcxx/include/__hash_table +371 -357
  425. package/libcxx/include/__ios/fpos.h +4 -4
  426. package/libcxx/include/__iterator/back_insert_iterator.h +1 -7
  427. package/libcxx/include/__iterator/bounded_iter.h +7 -8
  428. package/libcxx/include/__iterator/concepts.h +6 -9
  429. package/libcxx/include/__iterator/cpp17_iterator_concepts.h +13 -12
  430. package/libcxx/include/__iterator/distance.h +40 -18
  431. package/libcxx/include/__iterator/front_insert_iterator.h +1 -7
  432. package/libcxx/include/__iterator/insert_iterator.h +1 -7
  433. package/libcxx/include/__iterator/istream_iterator.h +6 -7
  434. package/libcxx/include/__iterator/istreambuf_iterator.h +6 -7
  435. package/libcxx/include/__iterator/iter_move.h +1 -1
  436. package/libcxx/include/__iterator/iterator.h +13 -0
  437. package/libcxx/include/__iterator/iterator_traits.h +13 -14
  438. package/libcxx/include/__iterator/ostream_iterator.h +1 -7
  439. package/libcxx/include/__iterator/ostreambuf_iterator.h +1 -7
  440. package/libcxx/include/__iterator/reverse_iterator.h +8 -13
  441. package/libcxx/include/__iterator/segmented_iterator.h +3 -8
  442. package/libcxx/include/__iterator/static_bounded_iter.h +3 -3
  443. package/libcxx/include/__iterator/wrap_iter.h +8 -6
  444. package/libcxx/include/__locale +3 -10
  445. package/libcxx/include/__locale_dir/locale_base_api/bsd_locale_fallbacks.h +0 -10
  446. package/libcxx/include/__locale_dir/locale_base_api.h +5 -28
  447. package/libcxx/include/__locale_dir/messages.h +1 -1
  448. package/libcxx/include/__locale_dir/money.h +2 -2
  449. package/libcxx/include/__locale_dir/num.h +190 -243
  450. package/libcxx/include/__locale_dir/pad_and_output.h +5 -6
  451. package/libcxx/include/__locale_dir/support/bsd_like.h +0 -20
  452. package/libcxx/include/__locale_dir/support/fuchsia.h +0 -7
  453. package/libcxx/include/__locale_dir/support/linux.h +0 -37
  454. package/libcxx/include/__locale_dir/support/netbsd.h +0 -2
  455. package/libcxx/include/__locale_dir/support/newlib.h +243 -0
  456. package/libcxx/include/__locale_dir/support/no_locale/characters.h +0 -4
  457. package/libcxx/include/__locale_dir/support/no_locale/strtonum.h +0 -9
  458. package/libcxx/include/__locale_dir/support/windows.h +0 -29
  459. package/libcxx/include/__locale_dir/time.h +3 -7
  460. package/libcxx/include/__math/hypot.h +1 -1
  461. package/libcxx/include/__math/logarithms.h +1 -1
  462. package/libcxx/include/__math/traits.h +80 -11
  463. package/libcxx/include/__mdspan/extents.h +7 -4
  464. package/libcxx/include/__mdspan/layout_stride.h +4 -5
  465. package/libcxx/include/__mdspan/mdspan.h +29 -23
  466. package/libcxx/include/__memory/addressof.h +7 -5
  467. package/libcxx/include/__memory/align.h +18 -1
  468. package/libcxx/include/__memory/allocate_at_least.h +15 -10
  469. package/libcxx/include/__memory/allocator.h +14 -26
  470. package/libcxx/include/__memory/allocator_traits.h +6 -4
  471. package/libcxx/include/__memory/compressed_pair.h +15 -9
  472. package/libcxx/include/__memory/construct_at.h +12 -23
  473. package/libcxx/include/__memory/inout_ptr.h +1 -1
  474. package/libcxx/include/__memory/is_sufficiently_aligned.h +1 -1
  475. package/libcxx/include/__memory/out_ptr.h +1 -1
  476. package/libcxx/include/__memory/pointer_traits.h +1 -1
  477. package/libcxx/include/__memory/raw_storage_iterator.h +3 -9
  478. package/libcxx/include/__memory/shared_count.h +9 -30
  479. package/libcxx/include/__memory/shared_ptr.h +100 -145
  480. package/libcxx/include/__memory/temp_value.h +1 -2
  481. package/libcxx/include/__memory/uninitialized_algorithms.h +44 -115
  482. package/libcxx/include/__memory/unique_ptr.h +14 -16
  483. package/libcxx/include/__memory/uses_allocator_construction.h +1 -0
  484. package/libcxx/include/__memory_resource/memory_resource.h +4 -2
  485. package/libcxx/include/__memory_resource/monotonic_buffer_resource.h +1 -1
  486. package/libcxx/include/__memory_resource/polymorphic_allocator.h +13 -8
  487. package/libcxx/include/__memory_resource/pool_options.h +1 -1
  488. package/libcxx/include/__memory_resource/synchronized_pool_resource.h +4 -2
  489. package/libcxx/include/__memory_resource/unsynchronized_pool_resource.h +1 -1
  490. package/libcxx/include/__mutex/mutex.h +2 -2
  491. package/libcxx/include/__mutex/once_flag.h +14 -11
  492. package/libcxx/include/__mutex/tag_types.h +3 -3
  493. package/libcxx/include/__mutex/unique_lock.h +8 -7
  494. package/libcxx/include/__new/align_val_t.h +6 -0
  495. package/libcxx/include/__new/allocate.h +1 -2
  496. package/libcxx/include/__new/exceptions.h +8 -2
  497. package/libcxx/include/__new/global_new_delete.h +4 -11
  498. package/libcxx/include/__new/interference_size.h +0 -4
  499. package/libcxx/include/__new/launder.h +3 -5
  500. package/libcxx/include/__new/nothrow_t.h +1 -1
  501. package/libcxx/include/__numeric/gcd_lcm.h +24 -34
  502. package/libcxx/include/__numeric/midpoint.h +9 -14
  503. package/libcxx/include/__numeric/pstl.h +2 -2
  504. package/libcxx/include/__numeric/saturation_arithmetic.h +13 -5
  505. package/libcxx/include/__ostream/basic_ostream.h +8 -8
  506. package/libcxx/include/__pstl/backends/default.h +14 -14
  507. package/libcxx/include/__pstl/backends/libdispatch.h +2 -2
  508. package/libcxx/include/__pstl/cpu_algos/find_if.h +1 -1
  509. package/libcxx/include/__pstl/cpu_algos/transform.h +5 -6
  510. package/libcxx/include/__pstl/cpu_algos/transform_reduce.h +5 -4
  511. package/libcxx/include/__random/binomial_distribution.h +10 -4
  512. package/libcxx/include/__random/mersenne_twister_engine.h +50 -154
  513. package/libcxx/include/__random/piecewise_constant_distribution.h +3 -2
  514. package/libcxx/include/__random/piecewise_linear_distribution.h +3 -2
  515. package/libcxx/include/__ranges/adjacent_transform_view.h +406 -0
  516. package/libcxx/include/__ranges/adjacent_view.h +419 -0
  517. package/libcxx/include/__ranges/as_rvalue_view.h +9 -9
  518. package/libcxx/include/__ranges/chunk_by_view.h +6 -6
  519. package/libcxx/include/__ranges/common_view.h +7 -7
  520. package/libcxx/include/__ranges/drop_view.h +8 -8
  521. package/libcxx/include/__ranges/drop_while_view.h +5 -5
  522. package/libcxx/include/__ranges/elements_of.h +49 -0
  523. package/libcxx/include/__ranges/empty_view.h +5 -5
  524. package/libcxx/include/__ranges/filter_view.h +10 -10
  525. package/libcxx/include/__ranges/iota_view.h +41 -22
  526. package/libcxx/include/__ranges/owning_view.h +15 -15
  527. package/libcxx/include/__ranges/ref_view.h +6 -6
  528. package/libcxx/include/__ranges/repeat_view.h +17 -10
  529. package/libcxx/include/__ranges/single_view.h +8 -8
  530. package/libcxx/include/__ranges/take_view.h +9 -9
  531. package/libcxx/include/__ranges/transform_view.h +1 -2
  532. package/libcxx/include/__ranges/view_interface.h +10 -10
  533. package/libcxx/include/__ranges/zip_transform_view.h +357 -0
  534. package/libcxx/include/__ranges/zip_view.h +20 -20
  535. package/libcxx/include/__split_buffer +612 -240
  536. package/libcxx/include/__stop_token/atomic_unique_lock.h +1 -1
  537. package/libcxx/include/__stop_token/stop_callback.h +2 -2
  538. package/libcxx/include/__stop_token/stop_source.h +1 -1
  539. package/libcxx/include/__stop_token/stop_state.h +4 -4
  540. package/libcxx/include/__stop_token/stop_token.h +1 -1
  541. package/libcxx/include/__string/char_traits.h +51 -31
  542. package/libcxx/include/__string/constexpr_c_functions.h +5 -5
  543. package/libcxx/include/__support/xlocale/__strtonum_fallback.h +0 -8
  544. package/libcxx/include/__system_error/error_category.h +8 -8
  545. package/libcxx/include/__system_error/error_code.h +5 -5
  546. package/libcxx/include/__system_error/error_condition.h +4 -4
  547. package/libcxx/include/__system_error/system_error.h +1 -1
  548. package/libcxx/include/__thread/id.h +1 -1
  549. package/libcxx/include/__thread/jthread.h +1 -1
  550. package/libcxx/include/__thread/poll_with_backoff.h +27 -8
  551. package/libcxx/include/__thread/support/c11.h +8 -8
  552. package/libcxx/include/__thread/support/pthread.h +8 -8
  553. package/libcxx/include/__thread/support/windows.h +8 -8
  554. package/libcxx/include/__thread/thread.h +13 -8
  555. package/libcxx/include/__thread/timed_backoff_policy.h +3 -2
  556. package/libcxx/include/__tree +849 -701
  557. package/libcxx/include/__tuple/sfinae_helpers.h +1 -44
  558. package/libcxx/include/__tuple/tuple_element.h +0 -12
  559. package/libcxx/include/__tuple/tuple_size.h +0 -4
  560. package/libcxx/include/__tuple/tuple_transform.h +45 -0
  561. package/libcxx/include/__type_traits/aligned_storage.h +13 -40
  562. package/libcxx/include/__type_traits/desugars_to.h +4 -0
  563. package/libcxx/include/__type_traits/invoke.h +8 -0
  564. package/libcxx/include/__type_traits/is_allocator.h +6 -7
  565. package/libcxx/include/__type_traits/is_array.h +26 -0
  566. package/libcxx/include/__type_traits/is_equality_comparable.h +16 -21
  567. package/libcxx/include/__type_traits/is_final.h +1 -1
  568. package/libcxx/include/__type_traits/is_floating_point.h +7 -6
  569. package/libcxx/include/__type_traits/is_generic_transparent_comparator.h +30 -0
  570. package/libcxx/include/__type_traits/is_specialization.h +2 -6
  571. package/libcxx/include/__type_traits/is_within_lifetime.h +29 -0
  572. package/libcxx/include/__type_traits/make_transparent.h +52 -0
  573. package/libcxx/include/__type_traits/reference_constructs_from_temporary.h +1 -7
  574. package/libcxx/include/__type_traits/reference_converts_from_temporary.h +1 -1
  575. package/libcxx/include/__utility/cmp.h +19 -7
  576. package/libcxx/include/__utility/default_three_way_comparator.h +70 -0
  577. package/libcxx/include/__utility/in_place.h +1 -1
  578. package/libcxx/include/__utility/integer_sequence.h +56 -41
  579. package/libcxx/include/__utility/lazy_synth_three_way_comparator.h +120 -0
  580. package/libcxx/include/__utility/pair.h +22 -25
  581. package/libcxx/include/__utility/scope_guard.h +2 -0
  582. package/libcxx/include/__utility/try_key_extraction.h +114 -0
  583. package/libcxx/include/__vector/vector.h +187 -160
  584. package/libcxx/include/__vector/vector_bool.h +76 -83
  585. package/libcxx/include/any +118 -155
  586. package/libcxx/include/array +88 -56
  587. package/libcxx/include/atomic +2 -0
  588. package/libcxx/include/barrier +20 -24
  589. package/libcxx/include/bitset +49 -30
  590. package/libcxx/include/ccomplex +3 -11
  591. package/libcxx/include/chrono +47 -0
  592. package/libcxx/include/ciso646 +3 -6
  593. package/libcxx/include/complex +77 -65
  594. package/libcxx/include/complex.h +10 -10
  595. package/libcxx/include/condition_variable +3 -3
  596. package/libcxx/include/cstdalign +3 -10
  597. package/libcxx/include/cstdbool +3 -10
  598. package/libcxx/include/ctgmath +2 -11
  599. package/libcxx/include/ctype.h +24 -24
  600. package/libcxx/include/cwchar +2 -2
  601. package/libcxx/include/deque +109 -225
  602. package/libcxx/include/errno.h +269 -269
  603. package/libcxx/include/exception +4 -1
  604. package/libcxx/include/ext/hash_map +7 -48
  605. package/libcxx/include/ext/hash_set +2 -8
  606. package/libcxx/include/fenv.h +43 -43
  607. package/libcxx/include/flat_map +663 -11
  608. package/libcxx/include/flat_set +543 -8
  609. package/libcxx/include/float.h +16 -16
  610. package/libcxx/include/forward_list +33 -53
  611. package/libcxx/include/fstream +57 -42
  612. package/libcxx/include/future +41 -51
  613. package/libcxx/include/initializer_list +9 -3
  614. package/libcxx/include/inttypes.h +16 -16
  615. package/libcxx/include/ios +28 -28
  616. package/libcxx/include/istream +19 -13
  617. package/libcxx/include/iterator +10 -0
  618. package/libcxx/include/latch +7 -5
  619. package/libcxx/include/limits +4 -4
  620. package/libcxx/include/list +61 -79
  621. package/libcxx/include/map +386 -274
  622. package/libcxx/include/math.h +19 -0
  623. package/libcxx/include/mdspan +1 -5
  624. package/libcxx/include/mutex +29 -19
  625. package/libcxx/include/optional +644 -149
  626. package/libcxx/include/print +9 -5
  627. package/libcxx/include/queue +39 -37
  628. package/libcxx/include/ranges +48 -0
  629. package/libcxx/include/regex +33 -31
  630. package/libcxx/include/scoped_allocator +16 -11
  631. package/libcxx/include/semaphore +15 -18
  632. package/libcxx/include/set +220 -192
  633. package/libcxx/include/shared_mutex +3 -8
  634. package/libcxx/include/span +53 -37
  635. package/libcxx/include/sstream +34 -28
  636. package/libcxx/include/stack +13 -15
  637. package/libcxx/include/stddef.h +10 -10
  638. package/libcxx/include/stdexcept +2 -2
  639. package/libcxx/include/stdio.h +20 -21
  640. package/libcxx/include/streambuf +59 -19
  641. package/libcxx/include/string +574 -573
  642. package/libcxx/include/string_view +113 -89
  643. package/libcxx/include/strstream +10 -10
  644. package/libcxx/include/syncstream +4 -4
  645. package/libcxx/include/tgmath.h +12 -12
  646. package/libcxx/include/tuple +242 -212
  647. package/libcxx/include/type_traits +8 -2
  648. package/libcxx/include/typeindex +5 -3
  649. package/libcxx/include/typeinfo +92 -89
  650. package/libcxx/include/unordered_map +179 -304
  651. package/libcxx/include/unordered_set +168 -195
  652. package/libcxx/include/utility +12 -0
  653. package/libcxx/include/valarray +106 -161
  654. package/libcxx/include/variant +25 -33
  655. package/libcxx/include/version +41 -24
  656. package/libcxx/include/wctype.h +29 -29
  657. package/libcxx/libc/hdr/errno_macros.h +3 -1
  658. package/libcxx/libc/hdr/stdint_proxy.h +18 -0
  659. package/libcxx/libc/hdr/types/wchar_t.h +23 -0
  660. package/libcxx/libc/hdr/wchar_overlay.h +69 -0
  661. package/libcxx/libc/include/llvm-libc-macros/cfloat128-macros.h +41 -0
  662. package/libcxx/libc/include/llvm-libc-macros/cfloat16-macros.h +20 -0
  663. package/libcxx/libc/include/llvm-libc-macros/wchar-macros.h +18 -0
  664. package/libcxx/libc/include/llvm-libc-types/cfloat128.h +11 -28
  665. package/libcxx/libc/include/llvm-libc-types/cfloat16.h +4 -7
  666. package/libcxx/libc/include/llvm-libc-types/wint_t.h +14 -0
  667. package/libcxx/libc/shared/libc_common.h +5 -0
  668. package/libcxx/libc/src/__support/CPP/bit.h +50 -12
  669. package/libcxx/libc/src/__support/CPP/type_traits/is_complex.h +7 -0
  670. package/libcxx/libc/src/__support/CPP/type_traits/is_destructible.h +2 -1
  671. package/libcxx/libc/src/__support/CPP/type_traits/is_unsigned.h +6 -0
  672. package/libcxx/libc/src/__support/CPP/utility/integer_sequence.h +10 -0
  673. package/libcxx/libc/src/__support/FPUtil/FPBits.h +6 -7
  674. package/libcxx/libc/src/__support/FPUtil/rounding_mode.h +50 -4
  675. package/libcxx/libc/src/__support/big_int.h +14 -14
  676. package/libcxx/libc/src/__support/common.h +3 -2
  677. package/libcxx/libc/src/__support/ctype_utils.h +19 -12
  678. package/libcxx/libc/src/__support/detailed_powers_of_ten.h +1 -2
  679. package/libcxx/libc/src/__support/high_precision_decimal.h +33 -14
  680. package/libcxx/libc/src/__support/libc_assert.h +2 -0
  681. package/libcxx/libc/src/__support/macros/attributes.h +44 -1
  682. package/libcxx/libc/src/__support/macros/config.h +23 -0
  683. package/libcxx/libc/src/__support/macros/null_check.h +1 -2
  684. package/libcxx/libc/src/__support/macros/optimization.h +3 -0
  685. package/libcxx/libc/src/__support/macros/properties/architectures.h +5 -1
  686. package/libcxx/libc/src/__support/macros/properties/compiler.h +8 -3
  687. package/libcxx/libc/src/__support/macros/properties/cpu_features.h +17 -1
  688. package/libcxx/libc/src/__support/macros/properties/types.h +2 -3
  689. package/libcxx/libc/src/__support/macros/sanitizer.h +0 -10
  690. package/libcxx/libc/src/__support/math_extras.h +20 -4
  691. package/libcxx/libc/src/__support/str_to_float.h +98 -125
  692. package/libcxx/libc/src/__support/str_to_integer.h +39 -27
  693. package/libcxx/libc/src/__support/wctype_utils.h +588 -0
  694. package/libcxx/src/any.cpp +4 -0
  695. package/libcxx/src/atomic.cpp +365 -80
  696. package/libcxx/src/barrier.cpp +4 -3
  697. package/libcxx/src/charconv.cpp +6 -3
  698. package/libcxx/src/condition_variable_destructor.cpp +1 -1
  699. package/libcxx/src/error_category.cpp +3 -1
  700. package/libcxx/src/exception.cpp +2 -10
  701. package/libcxx/src/experimental/time_zone.cpp +1 -1
  702. package/libcxx/src/experimental/tzdb.cpp +4 -1
  703. package/libcxx/src/filesystem/error.h +4 -22
  704. package/libcxx/src/filesystem/format_string.h +9 -18
  705. package/libcxx/src/filesystem/int128_builtins.cpp +2 -0
  706. package/libcxx/src/filesystem/operations.cpp +2 -9
  707. package/libcxx/src/filesystem/path.cpp +3 -1
  708. package/libcxx/src/include/aligned_alloc.h +65 -0
  709. package/libcxx/src/include/config_elast.h +1 -1
  710. package/libcxx/src/include/from_chars_floating_point.h +11 -7
  711. package/libcxx/src/include/overridable_function.h +8 -10
  712. package/libcxx/src/iostream.cpp +56 -37
  713. package/libcxx/src/locale.cpp +213 -196
  714. package/libcxx/src/memory.cpp +12 -14
  715. package/libcxx/src/mutex_destructor.cpp +1 -1
  716. package/libcxx/src/new.cpp +5 -5
  717. package/libcxx/src/optional.cpp +4 -0
  718. package/libcxx/src/print.cpp +9 -1
  719. package/libcxx/src/random.cpp +0 -26
  720. package/libcxx/src/string.cpp +10 -25
  721. package/libcxx/src/support/runtime/exception_fallback.ipp +2 -0
  722. package/libcxx/src/support/runtime/exception_glibcxx.ipp +3 -0
  723. package/libcxx/src/support/runtime/exception_libcxxabi.ipp +6 -2
  724. package/libcxx/src/support/runtime/exception_libcxxrt.ipp +2 -0
  725. package/libcxx/src/support/runtime/exception_msvc.ipp +2 -0
  726. package/libcxx/src/support/runtime/exception_pointer_cxxabi.ipp +9 -10
  727. package/libcxx/src/support/runtime/exception_pointer_glibcxx.ipp +2 -0
  728. package/libcxx/src/support/runtime/exception_pointer_msvc.ipp +1 -0
  729. package/libcxx/src/support/runtime/exception_pointer_unimplemented.ipp +1 -0
  730. package/libcxx/src/support/win32/locale_win32.cpp +1 -1
  731. package/libcxx/src/system_error.cpp +2 -0
  732. package/libcxx/src/thread.cpp +1 -3
  733. package/libcxx/src/valarray.cpp +1 -2
  734. package/libcxx/src/vector.cpp +2 -2
  735. package/libcxxabi/include/__cxxabi_config.h +42 -23
  736. package/libcxxabi/src/cxa_exception.cpp +4 -2
  737. package/libcxxabi/src/cxa_exception.h +16 -14
  738. package/libcxxabi/src/cxa_personality.cpp +126 -9
  739. package/libcxxabi/src/cxa_thread_atexit.cpp +2 -1
  740. package/libcxxabi/src/demangle/DemangleConfig.h +4 -0
  741. package/libcxxabi/src/demangle/ItaniumDemangle.h +9 -6
  742. package/libcxxabi/src/demangle/Utility.h +21 -7
  743. package/libcxxabi/src/fallback_malloc.cpp +1 -1
  744. package/libcxxabi/src/private_typeinfo.cpp +6 -0
  745. package/libcxxabi/src/stdlib_new_delete.cpp +5 -5
  746. package/libtsan/LICENSE.TXT +311 -0
  747. package/libtsan/builtins/assembly.h +41 -8
  748. package/libtsan/interception/interception_win.cpp +4 -0
  749. package/libtsan/sanitizer_common/sanitizer_allocator_primary32.h +1 -0
  750. package/libtsan/sanitizer_common/sanitizer_allocator_primary64.h +18 -0
  751. package/libtsan/sanitizer_common/sanitizer_common.h +15 -2
  752. package/libtsan/sanitizer_common/sanitizer_common_interceptors.inc +30 -4
  753. package/libtsan/sanitizer_common/sanitizer_common_interceptors_ioctl.inc +4 -0
  754. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_aarch64.inc.S +2 -1
  755. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_i386.inc.S +2 -0
  756. package/libtsan/sanitizer_common/sanitizer_common_interceptors_vfork_x86_64.inc.S +2 -0
  757. package/libtsan/sanitizer_common/sanitizer_common_syscalls.inc +18 -0
  758. package/libtsan/sanitizer_common/sanitizer_file.cpp +40 -12
  759. package/libtsan/sanitizer_common/sanitizer_file.h +3 -0
  760. package/libtsan/sanitizer_common/sanitizer_flags.inc +7 -0
  761. package/libtsan/sanitizer_common/sanitizer_fuchsia.cpp +30 -3
  762. package/libtsan/sanitizer_common/sanitizer_haiku.cpp +2 -2
  763. package/libtsan/sanitizer_common/sanitizer_internal_defs.h +1 -1
  764. package/libtsan/sanitizer_common/sanitizer_libc.cpp +8 -0
  765. package/libtsan/sanitizer_common/sanitizer_libc.h +1 -0
  766. package/libtsan/sanitizer_common/sanitizer_linux.cpp +15 -7
  767. package/libtsan/sanitizer_common/sanitizer_linux.h +3 -3
  768. package/libtsan/sanitizer_common/sanitizer_linux_libcdep.cpp +1 -0
  769. package/libtsan/sanitizer_common/sanitizer_mac.cpp +255 -104
  770. package/libtsan/sanitizer_common/sanitizer_mac.h +5 -0
  771. package/libtsan/sanitizer_common/sanitizer_netbsd.cpp +2 -2
  772. package/libtsan/sanitizer_common/sanitizer_platform.h +27 -1
  773. package/libtsan/sanitizer_common/sanitizer_platform_interceptors.h +5 -4
  774. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.cpp +15 -17
  775. package/libtsan/sanitizer_common/sanitizer_platform_limits_posix.h +32 -6
  776. package/libtsan/sanitizer_common/sanitizer_posix.cpp +3 -12
  777. package/libtsan/sanitizer_common/sanitizer_posix.h +2 -1
  778. package/libtsan/sanitizer_common/sanitizer_posix_libcdep.cpp +19 -0
  779. package/libtsan/sanitizer_common/sanitizer_procmaps_mac.cpp +102 -37
  780. package/libtsan/sanitizer_common/sanitizer_redefine_builtins.h +1 -1
  781. package/libtsan/sanitizer_common/sanitizer_signal_interceptors.inc +40 -2
  782. package/libtsan/sanitizer_common/sanitizer_stoptheworld.h +1 -1
  783. package/libtsan/sanitizer_common/sanitizer_stoptheworld_linux_libcdep.cpp +83 -12
  784. package/libtsan/sanitizer_common/sanitizer_stoptheworld_mac.cpp +3 -3
  785. package/libtsan/sanitizer_common/sanitizer_stoptheworld_netbsd_libcdep.cpp +7 -7
  786. package/libtsan/sanitizer_common/sanitizer_stoptheworld_win.cpp +2 -2
  787. package/libtsan/sanitizer_common/sanitizer_symbolizer_internal.h +5 -1
  788. package/libtsan/sanitizer_common/sanitizer_symbolizer_libcdep.cpp +11 -1
  789. package/libtsan/sanitizer_common/sanitizer_symbolizer_mac.cpp +86 -29
  790. package/libtsan/sanitizer_common/sanitizer_symbolizer_posix_libcdep.cpp +27 -16
  791. package/libtsan/sanitizer_common/sanitizer_thread_registry.cpp +5 -4
  792. package/libtsan/sanitizer_common/sanitizer_thread_registry.h +4 -4
  793. package/libtsan/sanitizer_common/sanitizer_win.cpp +1 -3
  794. package/libtsan/tsan_debugging.cpp +2 -2
  795. package/libtsan/tsan_flags.cpp +37 -0
  796. package/libtsan/tsan_flags.h +8 -0
  797. package/libtsan/tsan_flags.inc +12 -0
  798. package/libtsan/tsan_interceptors.h +9 -1
  799. package/libtsan/tsan_interceptors_mac.cpp +19 -0
  800. package/libtsan/tsan_interceptors_posix.cpp +78 -32
  801. package/libtsan/tsan_interface.h +3 -3
  802. package/libtsan/tsan_interface_ann.cpp +23 -9
  803. package/libtsan/tsan_mman.cpp +18 -4
  804. package/libtsan/tsan_platform.h +44 -7
  805. package/libtsan/tsan_platform_linux.cpp +42 -14
  806. package/libtsan/tsan_platform_mac.cpp +16 -3
  807. package/libtsan/tsan_report.h +14 -1
  808. package/libtsan/tsan_rtl.cpp +14 -0
  809. package/libtsan/tsan_rtl.h +7 -2
  810. package/libtsan/tsan_rtl_aarch64.S +3 -5
  811. package/libtsan/tsan_rtl_access.cpp +8 -3
  812. package/libtsan/tsan_rtl_amd64.S +2 -0
  813. package/libtsan/tsan_rtl_mutex.cpp +94 -49
  814. package/libtsan/tsan_rtl_report.cpp +132 -65
  815. package/libtsan/tsan_rtl_thread.cpp +31 -9
  816. package/libtsan/tsan_symbolize.cpp +1 -1
  817. package/libtsan/tsan_symbolize.h +1 -1
  818. package/libtsan/tsan_trace.h +1 -1
  819. package/libunwind/include/__libunwind_config.h +11 -2
  820. package/libunwind/include/libunwind.h +117 -11
  821. package/libunwind/include/unwind_arm_ehabi.h +4 -1
  822. package/libunwind/src/AddressSpace.hpp +42 -20
  823. package/libunwind/src/CompactUnwinder.hpp +16 -5
  824. package/libunwind/src/DwarfInstructions.hpp +24 -13
  825. package/libunwind/src/DwarfParser.hpp +62 -23
  826. package/libunwind/src/EHHeaderParser.hpp +7 -4
  827. package/libunwind/src/Registers.hpp +226 -22
  828. package/libunwind/src/Unwind-seh.cpp +6 -7
  829. package/libunwind/src/Unwind-wasm.c +7 -7
  830. package/libunwind/src/UnwindCursor.hpp +167 -49
  831. package/libunwind/src/UnwindLevel1.c +46 -17
  832. package/libunwind/src/UnwindRegistersRestore.S +46 -5
  833. package/libunwind/src/UnwindRegistersSave.S +86 -2
  834. package/libunwind/src/assembly.h +5 -1
  835. package/libunwind/src/config.h +9 -0
  836. package/libunwind/src/gcc_personality_v0.c +79 -6
  837. package/libunwind/src/libunwind.cpp +104 -4
  838. package/libunwind/src/libunwind_ext.h +7 -1
  839. package/libunwind/src/shadow_stack_unwind.h +2 -2
  840. package/lldb/pretty_printers.py +948 -0
  841. package/package.json +1 -1
  842. package/std/Build/Cache/Path.zig +1 -1
  843. package/std/Build/Cache.zig +6 -6
  844. package/std/Build/Step/Compile.zig +18 -20
  845. package/std/Build/Step/ConfigHeader.zig +1 -1
  846. package/std/Build/Step/Run.zig +15 -8
  847. package/std/Build/Step.zig +3 -7
  848. package/std/Build/Watch/FsEvents.zig +1 -1
  849. package/std/Build/WebServer.zig +2 -2
  850. package/std/Build/abi.zig +1 -1
  851. package/std/Build.zig +0 -3
  852. package/std/Io/Dir.zig +9 -4
  853. package/std/Io/Dispatch.zig +8 -18
  854. package/std/Io/File/Writer.zig +8 -6
  855. package/std/Io/File.zig +0 -9
  856. package/std/Io/Kqueue.zig +3 -3
  857. package/std/Io/Reader.zig +8 -14
  858. package/std/Io/Semaphore.zig +112 -17
  859. package/std/Io/Terminal.zig +1 -1
  860. package/std/Io/Threaded.zig +183 -46
  861. package/std/Io/Uring.zig +18 -20
  862. package/std/Io/Writer.zig +10 -7
  863. package/std/Io/net/HostName.zig +11 -6
  864. package/std/Io/net.zig +11 -11
  865. package/std/Io.zig +104 -38
  866. package/std/Random/ChaCha.zig +2 -2
  867. package/std/Random/benchmark.zig +2 -2
  868. package/std/Random.zig +6 -6
  869. package/std/SemanticVersion.zig +1 -1
  870. package/std/Target/Query.zig +2 -2
  871. package/std/Target/aarch64.zig +620 -77
  872. package/std/Target/amdgcn.zig +421 -21
  873. package/std/Target/arm.zig +40 -6
  874. package/std/Target/bpf.zig +6 -0
  875. package/std/Target/hexagon.zig +41 -6
  876. package/std/Target/loongarch.zig +18 -0
  877. package/std/Target/mips.zig +6 -0
  878. package/std/Target/nvptx.zig +58 -35
  879. package/std/Target/powerpc.zig +27 -19
  880. package/std/Target/riscv.zig +415 -177
  881. package/std/Target/sparc.zig +17 -0
  882. package/std/Target/wasm.zig +7 -0
  883. package/std/Target/x86.zig +200 -31
  884. package/std/Target/xtensa.zig +65 -0
  885. package/std/Target.zig +67 -14
  886. package/std/Thread.zig +5 -2
  887. package/std/array_hash_map.zig +103 -57
  888. package/std/array_list.zig +10 -31
  889. package/std/base64.zig +5 -5
  890. package/std/bit_set.zig +86 -69
  891. package/std/c/haiku.zig +3 -0
  892. package/std/c/serenity.zig +1 -6
  893. package/std/c.zig +123 -32
  894. package/std/compress/flate/Decompress.zig +3 -4
  895. package/std/compress/zstd/Decompress.zig +7 -9
  896. package/std/crypto/25519/curve25519.zig +2 -2
  897. package/std/crypto/25519/edwards25519.zig +3 -3
  898. package/std/crypto/25519/ristretto255.zig +2 -2
  899. package/std/crypto/25519/scalar.zig +6 -6
  900. package/std/crypto/25519/x25519.zig +1 -1
  901. package/std/crypto/Certificate.zig +14 -2
  902. package/std/crypto/Sha1.zig +1 -1
  903. package/std/crypto/aegis.zig +45 -39
  904. package/std/crypto/aes_ccm.zig +22 -22
  905. package/std/crypto/aes_gcm.zig +10 -12
  906. package/std/crypto/aes_ocb.zig +9 -9
  907. package/std/crypto/argon2.zig +15 -15
  908. package/std/crypto/ascon.zig +75 -33
  909. package/std/crypto/bcrypt.zig +20 -10
  910. package/std/crypto/benchmark.zig +7 -7
  911. package/std/crypto/blake2.zig +100 -64
  912. package/std/crypto/cbc_mac.zig +1 -1
  913. package/std/crypto/chacha20.zig +10 -10
  914. package/std/crypto/cmac.zig +3 -3
  915. package/std/crypto/codecs/asn1/Oid.zig +12 -1
  916. package/std/crypto/codecs/asn1/der/Encoder.zig +1 -1
  917. package/std/crypto/codecs/asn1.zig +1 -1
  918. package/std/crypto/codecs/base64_hex_ct.zig +3 -5
  919. package/std/crypto/ecdsa.zig +9 -9
  920. package/std/crypto/ff.zig +4 -5
  921. package/std/crypto/ghash_polyval.zig +4 -4
  922. package/std/crypto/hkdf.zig +1 -1
  923. package/std/crypto/isap.zig +3 -3
  924. package/std/crypto/kangarootwelve.zig +1 -1
  925. package/std/crypto/keccak_p.zig +8 -8
  926. package/std/crypto/md5.zig +1 -1
  927. package/std/crypto/ml_dsa.zig +39 -39
  928. package/std/crypto/ml_kem.zig +12 -34
  929. package/std/crypto/modes.zig +2 -2
  930. package/std/crypto/pbkdf2.zig +1 -1
  931. package/std/crypto/pcurves/common.zig +4 -5
  932. package/std/crypto/pcurves/p256/scalar.zig +3 -3
  933. package/std/crypto/pcurves/p384/scalar.zig +2 -2
  934. package/std/crypto/pcurves/secp256k1/scalar.zig +3 -3
  935. package/std/crypto/pcurves/tests/p256.zig +5 -5
  936. package/std/crypto/pcurves/tests/p384.zig +5 -5
  937. package/std/crypto/pcurves/tests/secp256k1.zig +3 -3
  938. package/std/crypto/salsa20.zig +8 -8
  939. package/std/crypto/sha2.zig +2 -2
  940. package/std/crypto/sha3.zig +2 -2
  941. package/std/crypto/siphash.zig +1 -1
  942. package/std/crypto/timing_safe.zig +10 -9
  943. package/std/crypto/tls/Client.zig +89 -13
  944. package/std/crypto/tls.zig +1 -1
  945. package/std/crypto.zig +4 -3
  946. package/std/debug/Dwarf.zig +15 -12
  947. package/std/debug/Pdb.zig +25 -17
  948. package/std/debug.zig +14 -8
  949. package/std/deque.zig +1 -1
  950. package/std/elf.zig +1 -1
  951. package/std/enums.zig +8 -8
  952. package/std/fmt/parse_float/decimal.zig +1 -1
  953. package/std/fmt/parse_float.zig +1 -1
  954. package/std/fmt.zig +14 -10
  955. package/std/fs/path.zig +7 -5
  956. package/std/hash/Adler32.zig +3 -3
  957. package/std/hash/benchmark.zig +2 -2
  958. package/std/hash/wyhash.zig +2 -2
  959. package/std/hash/xxhash.zig +0 -6
  960. package/std/hash_map.zig +20 -1
  961. package/std/heap/BufferFirstAllocator.zig +165 -0
  962. package/std/heap/debug_allocator.zig +2 -2
  963. package/std/heap/memory_pool.zig +34 -197
  964. package/std/heap.zig +2 -133
  965. package/std/http/Client.zig +21 -24
  966. package/std/http.zig +4 -5
  967. package/std/json/Scanner.zig +2 -2
  968. package/std/json/static.zig +2 -2
  969. package/std/{builtin.zig → lang.zig} +5 -1
  970. package/std/leb128.zig +2 -2
  971. package/std/math/big/int.zig +5 -5
  972. package/std/math/big.zig +4 -4
  973. package/std/math/copysign.zig +1 -1
  974. package/std/math/float.zig +62 -0
  975. package/std/math/frexp.zig +4 -4
  976. package/std/math/ilogb.zig +1 -1
  977. package/std/math/isfinite.zig +1 -1
  978. package/std/math/isinf.zig +1 -1
  979. package/std/math/isnan.zig +1 -2
  980. package/std/math/isnormal.zig +2 -2
  981. package/std/math/iszero.zig +2 -2
  982. package/std/math/ldexp.zig +2 -2
  983. package/std/math/log10.zig +0 -2
  984. package/std/math/modf.zig +1 -2
  985. package/std/math/nextafter.zig +3 -4
  986. package/std/math/pow.zig +1 -1
  987. package/std/math/powi.zig +2 -3
  988. package/std/math/signbit.zig +0 -1
  989. package/std/math.zig +21 -26
  990. package/std/mem/Allocator.zig +0 -6
  991. package/std/mem.zig +31 -31
  992. package/std/meta/trailer_flags.zig +1 -1
  993. package/std/meta.zig +4 -36
  994. package/std/multi_array_list.zig +24 -0
  995. package/std/os/emscripten.zig +7 -6
  996. package/std/os/linux/IoUring.zig +2 -0
  997. package/std/os/linux/aarch64.zig +41 -12
  998. package/std/os/linux/arc.zig +41 -12
  999. package/std/os/linux/arm.zig +41 -12
  1000. package/std/os/linux/bpf.zig +6 -0
  1001. package/std/os/linux/hexagon.zig +33 -11
  1002. package/std/os/linux/ioctl.zig +2 -2
  1003. package/std/os/linux/loongarch32.zig +41 -13
  1004. package/std/os/linux/loongarch64.zig +41 -12
  1005. package/std/os/linux/m68k.zig +41 -13
  1006. package/std/os/linux/mips.zig +67 -36
  1007. package/std/os/linux/mips64.zig +60 -29
  1008. package/std/os/linux/mipsn32.zig +60 -29
  1009. package/std/os/linux/or1k.zig +41 -12
  1010. package/std/os/linux/powerpc.zig +41 -12
  1011. package/std/os/linux/powerpc64.zig +41 -12
  1012. package/std/os/linux/riscv32.zig +41 -12
  1013. package/std/os/linux/riscv64.zig +41 -12
  1014. package/std/os/linux/s390x.zig +44 -7
  1015. package/std/os/linux/sparc64.zig +83 -52
  1016. package/std/os/linux/syscalls.zig +26 -1
  1017. package/std/os/linux/thumb.zig +52 -36
  1018. package/std/os/linux/x32.zig +41 -12
  1019. package/std/os/linux/x86.zig +44 -15
  1020. package/std/os/linux/x86_64.zig +41 -12
  1021. package/std/os/linux.zig +416 -450
  1022. package/std/os/plan9.zig +1 -1
  1023. package/std/os/uefi/hii.zig +1 -1
  1024. package/std/os/uefi/tables/boot_services.zig +9 -8
  1025. package/std/os/uefi/tables/runtime_services.zig +1 -1
  1026. package/std/os/windows.zig +130 -1
  1027. package/std/os.zig +41 -0
  1028. package/std/posix.zig +1 -1
  1029. package/std/process/Environ.zig +1 -1
  1030. package/std/process.zig +5 -4
  1031. package/std/simd.zig +4 -21
  1032. package/std/sort.zig +3 -3
  1033. package/std/start.zig +17 -4
  1034. package/std/std.zig +8 -1
  1035. package/std/tar/Writer.zig +39 -33
  1036. package/std/tar.zig +8 -4
  1037. package/std/testing.zig +2 -2
  1038. package/std/unicode.zig +13 -8
  1039. package/std/zig/Ast/Render.zig +6 -30
  1040. package/std/zig/Ast.zig +12 -37
  1041. package/std/zig/AstGen.zig +175 -332
  1042. package/std/zig/AstRlAnnotate.zig +1 -22
  1043. package/std/zig/AstSmith.zig +5 -11
  1044. package/std/zig/BuiltinFn.zig +0 -32
  1045. package/std/zig/ErrorBundle.zig +6 -2
  1046. package/std/zig/LibCDirs.zig +15 -6
  1047. package/std/zig/LibCInstallation.zig +34 -12
  1048. package/std/zig/Parse.zig +11 -76
  1049. package/std/zig/TokenSmith.zig +0 -6
  1050. package/std/zig/WindowsSdk.zig +18 -18
  1051. package/std/zig/Zir.zig +65 -132
  1052. package/std/zig/ZonGen.zig +19 -27
  1053. package/std/zig/llvm/Builder.zig +39 -33
  1054. package/std/zig/llvm/bitcode_writer.zig +3 -3
  1055. package/std/zig/llvm/ir.zig +8 -8
  1056. package/std/zig/system/arm.zig +56 -2
  1057. package/std/zig/system/windows.zig +34 -1
  1058. package/std/zig/system/x86.zig +60 -16
  1059. package/std/zig/system.zig +0 -10
  1060. package/std/zig/target.zig +1 -4
  1061. package/std/zig/tokenizer.zig +4 -43
  1062. package/std/zig.zig +3 -14
  1063. package/std/zip.zig +5 -5
  1064. package/std/zon/parse.zig +1 -1
  1065. package/zig.h +340 -1
  1066. package/compiler_rt/long_double.zig +0 -37
  1067. package/include/amxbf16transposeintrin.h +0 -94
  1068. package/include/amxcomplextransposeintrin.h +0 -303
  1069. package/include/amxfp16transposeintrin.h +0 -94
  1070. package/include/amxmovrstransposeintrin.h +0 -200
  1071. package/include/amxtf32transposeintrin.h +0 -105
  1072. package/include/amxtransposeintrin.h +0 -248
  1073. package/libc/include/hexagon-linux-any/asm/signal.h +0 -29
  1074. package/libc/include/s390x-linux-any/asm/tape390.h +0 -103
  1075. package/libc/mingw/math/lrintl.c +0 -18
  1076. package/libc/mingw/math/rintl.c +0 -16
  1077. package/libc/mingw/winpthreads/spinlock.c +0 -82
  1078. package/libc/musl/src/linux/tee.c +0 -8
  1079. package/libc/musl/src/math/i386/lrintl.c +0 -8
  1080. package/libc/musl/src/math/i386/rintl.c +0 -7
  1081. package/libc/musl/src/math/lrintl.c +0 -36
  1082. package/libc/musl/src/math/rintl.c +0 -29
  1083. package/libc/musl/src/math/s390x/rintl.c +0 -15
  1084. package/libc/musl/src/math/x32/lrintl.s +0 -7
  1085. package/libc/musl/src/math/x32/rintl.s +0 -6
  1086. package/libc/musl/src/math/x86_64/lrintl.c +0 -8
  1087. package/libc/musl/src/math/x86_64/rintl.c +0 -7
  1088. package/libc/musl/src/string/strdup.c +0 -10
  1089. package/libc/musl/src/string/strndup.c +0 -12
  1090. package/libc/musl/src/string/wcsdup.c +0 -10
  1091. package/libc/musl/src/thread/pthread_spin_destroy.c +0 -6
  1092. package/libc/musl/src/thread/pthread_spin_init.c +0 -6
  1093. package/libc/musl/src/thread/pthread_spin_lock.c +0 -8
  1094. package/libc/musl/src/thread/pthread_spin_trylock.c +0 -7
  1095. package/libc/musl/src/thread/pthread_spin_unlock.c +0 -7
  1096. package/libc/musl/src/unistd/dup2.c +0 -20
  1097. package/libc/musl/src/unistd/dup3.c +0 -26
  1098. package/libc/wasi/thread-stub/pthread_spin_lock.c +0 -8
  1099. package/libc/wasi/thread-stub/pthread_spin_trylock.c +0 -8
  1100. package/libc/wasi/thread-stub/pthread_spin_unlock.c +0 -7
  1101. package/libtsan/sanitizer_common/sanitizer_coverage_interface.inc +0 -43
  1102. package/std/Build/Step/CheckObject.zig +0 -2764
  1103. /package/std/{builtin → lang}/assembly.zig +0 -0
@@ -138,6 +138,7 @@ template <class Mutex>
138
138
  # include <__mutex/tag_types.h>
139
139
  # include <__mutex/unique_lock.h>
140
140
  # include <__system_error/throw_system_error.h>
141
+ # include <__utility/move.h>
141
142
  # include <__utility/swap.h>
142
143
  # include <cerrno>
143
144
  # include <version>
@@ -340,14 +341,8 @@ public:
340
341
  }
341
342
 
342
343
  _LIBCPP_HIDE_FROM_ABI shared_lock& operator=(shared_lock&& __u) _NOEXCEPT {
343
- if (__owns_)
344
- __m_->unlock_shared();
345
- __m_ = nullptr;
346
- __owns_ = false;
347
- __m_ = __u.__m_;
348
- __owns_ = __u.__owns_;
349
- __u.__m_ = nullptr;
350
- __u.__owns_ = false;
344
+ if (this != std::addressof(__u))
345
+ shared_lock(std::move(__u)).swap(*this);
351
346
  return *this;
352
347
  }
353
348
 
@@ -310,30 +310,32 @@ public:
310
310
  }
311
311
 
312
312
  template <size_t _Count>
313
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> first() const noexcept {
313
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> first() const noexcept {
314
314
  static_assert(_Count <= _Extent, "span<T, N>::first<Count>(): Count out of range");
315
315
  return span<element_type, _Count>{data(), _Count};
316
316
  }
317
317
 
318
318
  template <size_t _Count>
319
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> last() const noexcept {
319
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> last() const noexcept {
320
320
  static_assert(_Count <= _Extent, "span<T, N>::last<Count>(): Count out of range");
321
321
  return span<element_type, _Count>{data() + size() - _Count, _Count};
322
322
  }
323
323
 
324
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent> first(size_type __count) const noexcept {
324
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
325
+ first(size_type __count) const noexcept {
325
326
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__count <= size(), "span<T, N>::first(count): count out of range");
326
327
  return {data(), __count};
327
328
  }
328
329
 
329
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent> last(size_type __count) const noexcept {
330
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
331
+ last(size_type __count) const noexcept {
330
332
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__count <= size(), "span<T, N>::last(count): count out of range");
331
333
  return {data() + size() - __count, __count};
332
334
  }
333
335
 
334
336
  template <size_t _Offset, size_t _Count = dynamic_extent>
335
- _LIBCPP_HIDE_FROM_ABI constexpr auto
336
- subspan() const noexcept -> span<element_type, _Count != dynamic_extent ? _Count : _Extent - _Offset> {
337
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr auto subspan() const noexcept
338
+ -> span<element_type, _Count != dynamic_extent ? _Count : _Extent - _Offset> {
337
339
  static_assert(_Offset <= _Extent, "span<T, N>::subspan<Offset, Count>(): Offset out of range");
338
340
  static_assert(_Count == dynamic_extent || _Count <= _Extent - _Offset,
339
341
  "span<T, N>::subspan<Offset, Count>(): Offset + Count out of range");
@@ -342,7 +344,7 @@ public:
342
344
  return _ReturnType{data() + _Offset, _Count == dynamic_extent ? size() - _Offset : _Count};
343
345
  }
344
346
 
345
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
347
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
346
348
  subspan(size_type __offset, size_type __count = dynamic_extent) const noexcept {
347
349
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__offset <= size(), "span<T, N>::subspan(offset, count): offset out of range");
348
350
  if (__count == dynamic_extent)
@@ -352,52 +354,58 @@ public:
352
354
  return {data() + __offset, __count};
353
355
  }
354
356
 
355
- _LIBCPP_HIDE_FROM_ABI constexpr size_type size() const noexcept { return _Extent; }
356
- _LIBCPP_HIDE_FROM_ABI constexpr size_type size_bytes() const noexcept { return _Extent * sizeof(element_type); }
357
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr size_type size() const noexcept { return _Extent; }
358
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr size_type size_bytes() const noexcept {
359
+ return _Extent * sizeof(element_type);
360
+ }
357
361
  [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr bool empty() const noexcept { return _Extent == 0; }
358
362
 
359
- _LIBCPP_HIDE_FROM_ABI constexpr reference operator[](size_type __idx) const noexcept {
363
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference operator[](size_type __idx) const noexcept {
360
364
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__idx < size(), "span<T, N>::operator[](index): index out of range");
361
365
  return __data_[__idx];
362
366
  }
363
367
 
364
368
  # if _LIBCPP_STD_VER >= 26
365
- _LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __index) const {
369
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __index) const {
366
370
  if (__index >= size())
367
371
  std::__throw_out_of_range("span");
368
372
  return __data_[__index];
369
373
  }
370
374
  # endif
371
375
 
372
- _LIBCPP_HIDE_FROM_ABI constexpr reference front() const noexcept {
376
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference front() const noexcept {
373
377
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "span<T, N>::front() on empty span");
374
378
  return __data_[0];
375
379
  }
376
380
 
377
- _LIBCPP_HIDE_FROM_ABI constexpr reference back() const noexcept {
381
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference back() const noexcept {
378
382
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "span<T, N>::back() on empty span");
379
383
  return __data_[size() - 1];
380
384
  }
381
385
 
382
- _LIBCPP_HIDE_FROM_ABI constexpr pointer data() const noexcept { return __data_; }
386
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr pointer data() const noexcept { return __data_; }
383
387
 
384
388
  // [span.iter], span iterator support
385
- _LIBCPP_HIDE_FROM_ABI constexpr iterator begin() const noexcept {
389
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr iterator begin() const noexcept {
386
390
  # ifdef _LIBCPP_ABI_BOUNDED_ITERATORS
387
391
  return std::__make_bounded_iter(data(), data(), data() + size());
388
392
  # else
389
393
  return iterator(data());
390
394
  # endif
391
395
  }
392
- _LIBCPP_HIDE_FROM_ABI constexpr iterator end() const noexcept {
396
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr iterator end() const noexcept {
393
397
  # ifdef _LIBCPP_ABI_BOUNDED_ITERATORS
394
398
  return std::__make_bounded_iter(data() + size(), data(), data() + size());
395
399
  # else
396
400
  return iterator(data() + size());
397
401
  # endif
398
402
  }
399
- _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rbegin() const noexcept { return reverse_iterator(end()); }
400
- _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rend() const noexcept { return reverse_iterator(begin()); }
403
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rbegin() const noexcept {
404
+ return reverse_iterator(end());
405
+ }
406
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rend() const noexcept {
407
+ return reverse_iterator(begin());
408
+ }
401
409
 
402
410
  _LIBCPP_HIDE_FROM_ABI span<const byte, _Extent * sizeof(element_type)> __as_bytes() const noexcept {
403
411
  return span<const byte, _Extent * sizeof(element_type)>{reinterpret_cast<const byte*>(data()), size_bytes()};
@@ -478,36 +486,38 @@ public:
478
486
  : __data_{__other.data()}, __size_{__other.size()} {}
479
487
 
480
488
  template <size_t _Count>
481
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> first() const noexcept {
489
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> first() const noexcept {
482
490
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(_Count <= size(), "span<T>::first<Count>(): Count out of range");
483
491
  return span<element_type, _Count>{data(), _Count};
484
492
  }
485
493
 
486
494
  template <size_t _Count>
487
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> last() const noexcept {
495
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> last() const noexcept {
488
496
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(_Count <= size(), "span<T>::last<Count>(): Count out of range");
489
497
  return span<element_type, _Count>{data() + size() - _Count, _Count};
490
498
  }
491
499
 
492
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent> first(size_type __count) const noexcept {
500
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
501
+ first(size_type __count) const noexcept {
493
502
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__count <= size(), "span<T>::first(count): count out of range");
494
503
  return {data(), __count};
495
504
  }
496
505
 
497
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent> last(size_type __count) const noexcept {
506
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, dynamic_extent>
507
+ last(size_type __count) const noexcept {
498
508
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__count <= size(), "span<T>::last(count): count out of range");
499
509
  return {data() + size() - __count, __count};
500
510
  }
501
511
 
502
512
  template <size_t _Offset, size_t _Count = dynamic_extent>
503
- _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> subspan() const noexcept {
513
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr span<element_type, _Count> subspan() const noexcept {
504
514
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(_Offset <= size(), "span<T>::subspan<Offset, Count>(): Offset out of range");
505
515
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(_Count == dynamic_extent || _Count <= size() - _Offset,
506
516
  "span<T>::subspan<Offset, Count>(): Offset + Count out of range");
507
517
  return span<element_type, _Count>{data() + _Offset, _Count == dynamic_extent ? size() - _Offset : _Count};
508
518
  }
509
519
 
510
- constexpr span<element_type, dynamic_extent> _LIBCPP_HIDE_FROM_ABI
520
+ [[nodiscard]] constexpr span<element_type, dynamic_extent> _LIBCPP_HIDE_FROM_ABI
511
521
  subspan(size_type __offset, size_type __count = dynamic_extent) const noexcept {
512
522
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__offset <= size(), "span<T>::subspan(offset, count): offset out of range");
513
523
  if (__count == dynamic_extent)
@@ -517,52 +527,58 @@ public:
517
527
  return {data() + __offset, __count};
518
528
  }
519
529
 
520
- _LIBCPP_HIDE_FROM_ABI constexpr size_type size() const noexcept { return __size_; }
521
- _LIBCPP_HIDE_FROM_ABI constexpr size_type size_bytes() const noexcept { return __size_ * sizeof(element_type); }
530
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr size_type size() const noexcept { return __size_; }
531
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr size_type size_bytes() const noexcept {
532
+ return __size_ * sizeof(element_type);
533
+ }
522
534
  [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr bool empty() const noexcept { return __size_ == 0; }
523
535
 
524
- _LIBCPP_HIDE_FROM_ABI constexpr reference operator[](size_type __idx) const noexcept {
536
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference operator[](size_type __idx) const noexcept {
525
537
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(__idx < size(), "span<T>::operator[](index): index out of range");
526
538
  return __data_[__idx];
527
539
  }
528
540
 
529
541
  # if _LIBCPP_STD_VER >= 26
530
- _LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __index) const {
542
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference at(size_type __index) const {
531
543
  if (__index >= size())
532
544
  std::__throw_out_of_range("span");
533
545
  return __data_[__index];
534
546
  }
535
547
  # endif
536
548
 
537
- _LIBCPP_HIDE_FROM_ABI constexpr reference front() const noexcept {
549
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference front() const noexcept {
538
550
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "span<T>::front() on empty span");
539
551
  return __data_[0];
540
552
  }
541
553
 
542
- _LIBCPP_HIDE_FROM_ABI constexpr reference back() const noexcept {
554
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reference back() const noexcept {
543
555
  _LIBCPP_ASSERT_VALID_ELEMENT_ACCESS(!empty(), "span<T>::back() on empty span");
544
556
  return __data_[size() - 1];
545
557
  }
546
558
 
547
- _LIBCPP_HIDE_FROM_ABI constexpr pointer data() const noexcept { return __data_; }
559
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr pointer data() const noexcept { return __data_; }
548
560
 
549
561
  // [span.iter], span iterator support
550
- _LIBCPP_HIDE_FROM_ABI constexpr iterator begin() const noexcept {
562
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr iterator begin() const noexcept {
551
563
  # ifdef _LIBCPP_ABI_BOUNDED_ITERATORS
552
564
  return std::__make_bounded_iter(data(), data(), data() + size());
553
565
  # else
554
566
  return iterator(data());
555
567
  # endif
556
568
  }
557
- _LIBCPP_HIDE_FROM_ABI constexpr iterator end() const noexcept {
569
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr iterator end() const noexcept {
558
570
  # ifdef _LIBCPP_ABI_BOUNDED_ITERATORS
559
571
  return std::__make_bounded_iter(data() + size(), data(), data() + size());
560
572
  # else
561
573
  return iterator(data() + size());
562
574
  # endif
563
575
  }
564
- _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rbegin() const noexcept { return reverse_iterator(end()); }
565
- _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rend() const noexcept { return reverse_iterator(begin()); }
576
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rbegin() const noexcept {
577
+ return reverse_iterator(end());
578
+ }
579
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI constexpr reverse_iterator rend() const noexcept {
580
+ return reverse_iterator(begin());
581
+ }
566
582
 
567
583
  _LIBCPP_HIDE_FROM_ABI span<const byte, dynamic_extent> __as_bytes() const noexcept {
568
584
  return {reinterpret_cast<const byte*>(data()), size_bytes()};
@@ -585,13 +601,13 @@ inline constexpr bool ranges::enable_view<span<_ElementType, _Extent>> = true;
585
601
 
586
602
  // as_bytes & as_writable_bytes
587
603
  template <class _Tp, size_t _Extent>
588
- _LIBCPP_HIDE_FROM_ABI auto as_bytes(span<_Tp, _Extent> __s) noexcept {
604
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI auto as_bytes(span<_Tp, _Extent> __s) noexcept {
589
605
  return __s.__as_bytes();
590
606
  }
591
607
 
592
608
  template <class _Tp, size_t _Extent>
593
609
  requires(!is_const_v<_Tp>)
594
- _LIBCPP_HIDE_FROM_ABI auto as_writable_bytes(span<_Tp, _Extent> __s) noexcept {
610
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI auto as_writable_bytes(span<_Tp, _Extent> __s) noexcept {
595
611
  return __s.__as_writable_bytes();
596
612
  }
597
613
 
@@ -461,15 +461,15 @@ public:
461
461
  // [stringbuf.members] Member functions:
462
462
 
463
463
  # if _LIBCPP_STD_VER >= 20
464
- _LIBCPP_HIDE_FROM_ABI allocator_type get_allocator() const noexcept { return __str_.get_allocator(); }
464
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI allocator_type get_allocator() const noexcept { return __str_.get_allocator(); }
465
465
  # endif
466
466
 
467
467
  # if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
468
- string_type str() const;
468
+ [[__nodiscard__]] string_type str() const;
469
469
  # else
470
- _LIBCPP_HIDE_FROM_ABI string_type str() const& { return str(__str_.get_allocator()); }
470
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() const& { return str(__str_.get_allocator()); }
471
471
 
472
- _LIBCPP_HIDE_FROM_ABI string_type str() && {
472
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() && {
473
473
  const basic_string_view<_CharT, _Traits> __view = view();
474
474
  typename string_type::size_type __pos = __view.empty() ? 0 : __view.data() - __str_.data();
475
475
  // In C++23, this is just string_type(std::move(__str_), __pos, __view.size(), __str_.get_allocator());
@@ -484,12 +484,12 @@ public:
484
484
 
485
485
  # if _LIBCPP_STD_VER >= 20
486
486
  template <class _SAlloc>
487
- requires __is_allocator<_SAlloc>::value
488
- _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
487
+ requires __is_allocator_v<_SAlloc>
488
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
489
489
  return basic_string<_CharT, _Traits, _SAlloc>(view(), __sa);
490
490
  }
491
491
 
492
- _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept;
492
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept;
493
493
  # endif // _LIBCPP_STD_VER >= 20
494
494
 
495
495
  void str(const string_type& __s) {
@@ -949,26 +949,28 @@ public:
949
949
  }
950
950
 
951
951
  // [istringstream.members] Member functions:
952
- _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
952
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
953
953
  return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(std::addressof(__sb_));
954
954
  }
955
955
 
956
956
  # if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
957
- _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
957
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
958
958
  # else
959
- _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
959
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
960
960
 
961
- _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
961
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
962
962
  # endif
963
963
 
964
964
  # if _LIBCPP_STD_VER >= 20
965
965
  template <class _SAlloc>
966
- requires __is_allocator<_SAlloc>::value
967
- _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
966
+ requires __is_allocator_v<_SAlloc>
967
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
968
968
  return __sb_.str(__sa);
969
969
  }
970
970
 
971
- _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept { return __sb_.view(); }
971
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept {
972
+ return __sb_.view();
973
+ }
972
974
  # endif // _LIBCPP_STD_VER >= 20
973
975
 
974
976
  _LIBCPP_HIDE_FROM_ABI void str(const string_type& __s) { __sb_.str(__s); }
@@ -1087,26 +1089,28 @@ public:
1087
1089
  }
1088
1090
 
1089
1091
  // [ostringstream.members] Member functions:
1090
- _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
1092
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
1091
1093
  return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(std::addressof(__sb_));
1092
1094
  }
1093
1095
 
1094
1096
  # if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
1095
- _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
1097
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
1096
1098
  # else
1097
- _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
1099
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
1098
1100
 
1099
- _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
1101
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
1100
1102
  # endif
1101
1103
 
1102
1104
  # if _LIBCPP_STD_VER >= 20
1103
1105
  template <class _SAlloc>
1104
- requires __is_allocator<_SAlloc>::value
1105
- _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
1106
+ requires __is_allocator_v<_SAlloc>
1107
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
1106
1108
  return __sb_.str(__sa);
1107
1109
  }
1108
1110
 
1109
- _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept { return __sb_.view(); }
1111
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept {
1112
+ return __sb_.view();
1113
+ }
1110
1114
  # endif // _LIBCPP_STD_VER >= 20
1111
1115
 
1112
1116
  _LIBCPP_HIDE_FROM_ABI void str(const string_type& __s) { __sb_.str(__s); }
@@ -1227,26 +1231,28 @@ public:
1227
1231
  }
1228
1232
 
1229
1233
  // [stringstream.members] Member functions:
1230
- _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
1234
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI basic_stringbuf<char_type, traits_type, allocator_type>* rdbuf() const {
1231
1235
  return const_cast<basic_stringbuf<char_type, traits_type, allocator_type>*>(std::addressof(__sb_));
1232
1236
  }
1233
1237
 
1234
1238
  # if _LIBCPP_STD_VER <= 17 || defined(_LIBCPP_BUILDING_LIBRARY)
1235
- _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
1239
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI string_type str() const { return __sb_.str(); }
1236
1240
  # else
1237
- _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
1241
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() const& { return __sb_.str(); }
1238
1242
 
1239
- _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
1243
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI string_type str() && { return std::move(__sb_).str(); }
1240
1244
  # endif
1241
1245
 
1242
1246
  # if _LIBCPP_STD_VER >= 20
1243
1247
  template <class _SAlloc>
1244
- requires __is_allocator<_SAlloc>::value
1245
- _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
1248
+ requires __is_allocator_v<_SAlloc>
1249
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string<char_type, traits_type, _SAlloc> str(const _SAlloc& __sa) const {
1246
1250
  return __sb_.str(__sa);
1247
1251
  }
1248
1252
 
1249
- _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept { return __sb_.view(); }
1253
+ [[nodiscard]] _LIBCPP_HIDE_FROM_ABI basic_string_view<char_type, traits_type> view() const noexcept {
1254
+ return __sb_.view();
1255
+ }
1250
1256
  # endif // _LIBCPP_STD_VER >= 20
1251
1257
 
1252
1258
  _LIBCPP_HIDE_FROM_ABI void str(const string_type& __s) { __sb_.str(__s); }
@@ -235,9 +235,9 @@ public:
235
235
  # endif
236
236
 
237
237
  [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI bool empty() const { return c.empty(); }
238
- _LIBCPP_HIDE_FROM_ABI size_type size() const { return c.size(); }
239
- _LIBCPP_HIDE_FROM_ABI reference top() { return c.back(); }
240
- _LIBCPP_HIDE_FROM_ABI const_reference top() const { return c.back(); }
238
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI size_type size() const { return c.size(); }
239
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI reference top() { return c.back(); }
240
+ [[__nodiscard__]] _LIBCPP_HIDE_FROM_ABI const_reference top() const { return c.back(); }
241
241
 
242
242
  _LIBCPP_HIDE_FROM_ABI void push(const value_type& __v) { c.push_back(__v); }
243
243
  # ifndef _LIBCPP_CXX03_LANG
@@ -294,19 +294,19 @@ public:
294
294
  };
295
295
 
296
296
  # if _LIBCPP_STD_VER >= 17
297
- template <class _Container, class = enable_if_t<!__is_allocator<_Container>::value> >
297
+ template <class _Container, class = enable_if_t<!__is_allocator_v<_Container>>>
298
298
  stack(_Container) -> stack<typename _Container::value_type, _Container>;
299
299
 
300
300
  template <class _Container,
301
301
  class _Alloc,
302
- class = enable_if_t<!__is_allocator<_Container>::value>,
302
+ class = enable_if_t<!__is_allocator_v<_Container>>,
303
303
  class = enable_if_t<uses_allocator<_Container, _Alloc>::value> >
304
304
  stack(_Container, _Alloc) -> stack<typename _Container::value_type, _Container>;
305
305
  # endif
306
306
 
307
307
  # if _LIBCPP_STD_VER >= 23
308
308
  template <class _InputIterator, __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0>
309
- stack(_InputIterator, _InputIterator) -> stack<__iter_value_type<_InputIterator>>;
309
+ stack(_InputIterator, _InputIterator) -> stack<__iterator_value_type<_InputIterator>>;
310
310
 
311
311
  template <ranges::input_range _Range>
312
312
  stack(from_range_t, _Range&&) -> stack<ranges::range_value_t<_Range>>;
@@ -314,15 +314,13 @@ stack(from_range_t, _Range&&) -> stack<ranges::range_value_t<_Range>>;
314
314
  template <class _InputIterator,
315
315
  class _Alloc,
316
316
  __enable_if_t<__has_input_iterator_category<_InputIterator>::value, int> = 0,
317
- __enable_if_t<__is_allocator<_Alloc>::value, int> = 0>
318
- stack(_InputIterator,
319
- _InputIterator,
320
- _Alloc) -> stack<__iter_value_type<_InputIterator>, deque<__iter_value_type<_InputIterator>, _Alloc>>;
321
-
322
- template <ranges::input_range _Range, class _Alloc, __enable_if_t<__is_allocator<_Alloc>::value, int> = 0>
323
- stack(from_range_t,
324
- _Range&&,
325
- _Alloc) -> stack<ranges::range_value_t<_Range>, deque<ranges::range_value_t<_Range>, _Alloc>>;
317
+ __enable_if_t<__is_allocator_v<_Alloc>, int> = 0>
318
+ stack(_InputIterator, _InputIterator, _Alloc)
319
+ -> stack<__iterator_value_type<_InputIterator>, deque<__iterator_value_type<_InputIterator>, _Alloc>>;
320
+
321
+ template <ranges::input_range _Range, class _Alloc, __enable_if_t<__is_allocator_v<_Alloc>, int> = 0>
322
+ stack(from_range_t, _Range&&, _Alloc)
323
+ -> stack<ranges::range_value_t<_Range>, deque<ranges::range_value_t<_Range>, _Alloc>>;
326
324
 
327
325
  # endif
328
326
 
@@ -25,24 +25,24 @@ Types:
25
25
  */
26
26
 
27
27
  #if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
28
- # include <__cxx03/stddef.h>
28
+ # include <__cxx03/__config>
29
29
  #else
30
30
  # include <__config>
31
+ #endif
31
32
 
32
- # if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
33
- # pragma GCC system_header
34
- # endif
33
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
34
+ # pragma GCC system_header
35
+ #endif
35
36
 
36
37
  // Note: This include is outside of header guards because we sometimes get included multiple times
37
38
  // with different defines and the underlying <stddef.h> will know how to deal with that.
38
- # include_next <stddef.h>
39
+ #include_next <stddef.h>
39
40
 
40
- # ifndef _LIBCPP_STDDEF_H
41
- # define _LIBCPP_STDDEF_H
41
+ #ifndef _LIBCPP_STDDEF_H
42
+ # define _LIBCPP_STDDEF_H
42
43
 
43
- # ifdef __cplusplus
44
+ # ifdef __cplusplus
44
45
  typedef decltype(nullptr) nullptr_t;
45
- # endif
46
- # endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
46
+ # endif
47
47
 
48
48
  #endif // _LIBCPP_STDDEF_H
@@ -91,7 +91,7 @@ public:
91
91
 
92
92
  ~logic_error() _NOEXCEPT override;
93
93
 
94
- const char* what() const _NOEXCEPT override;
94
+ [[__nodiscard__]] const char* what() const _NOEXCEPT override;
95
95
  # else
96
96
 
97
97
  public:
@@ -115,7 +115,7 @@ public:
115
115
 
116
116
  ~runtime_error() _NOEXCEPT override;
117
117
 
118
- const char* what() const _NOEXCEPT override;
118
+ [[__nodiscard__]] const char* what() const _NOEXCEPT override;
119
119
  # else
120
120
 
121
121
  public:
@@ -88,35 +88,34 @@ void perror(const char* s);
88
88
  */
89
89
 
90
90
  #if defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
91
- # include <__cxx03/stdio.h>
91
+ # include <__cxx03/__config>
92
92
  #else
93
93
  # include <__config>
94
+ #endif
94
95
 
95
- # if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
96
- # pragma GCC system_header
97
- # endif
96
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
97
+ # pragma GCC system_header
98
+ #endif
98
99
 
99
100
  // The inclusion of the system's <stdio.h> is intentionally done once outside of any include
100
101
  // guards because some code expects to be able to include the underlying system header multiple
101
102
  // times to get different definitions based on the macros that are set before inclusion.
102
- # if __has_include_next(<stdio.h>)
103
- # include_next <stdio.h>
104
- # endif
103
+ #if __has_include_next(<stdio.h>)
104
+ # include_next <stdio.h>
105
+ #endif
105
106
 
106
- # ifndef _LIBCPP_STDIO_H
107
- # define _LIBCPP_STDIO_H
107
+ #ifndef _LIBCPP_STDIO_H
108
+ # define _LIBCPP_STDIO_H
108
109
 
109
- # ifdef __cplusplus
110
+ # ifdef __cplusplus
110
111
 
111
- # undef getc
112
- # undef putc
113
- # undef clearerr
114
- # undef feof
115
- # undef ferror
116
- # undef putchar
117
- # undef getchar
112
+ # undef getc
113
+ # undef putc
114
+ # undef clearerr
115
+ # undef feof
116
+ # undef ferror
117
+ # undef putchar
118
+ # undef getchar
118
119
 
119
- # endif // __cplusplus
120
- # endif // _LIBCPP_STDIO_H
121
-
122
- #endif // defined(__cplusplus) && __cplusplus < 201103L && defined(_LIBCPP_USE_FROZEN_CXX03_HEADERS)
120
+ # endif // __cplusplus
121
+ #endif // _LIBCPP_STDIO_H