Skip to content

Commit c5f1c37

Browse files
author
gitbot
committed
Squashed 'library/' changes from 78fc550..1906eb1
1906eb1 [create-pull-request] automated change 82586ab Rustfmt e1598d8 occured -> occurred 4cfb77b Allow Rust to use a number of libc filesystem calls 4f81280 Windows: Test that deleting a running binary fails 2e4935f Update platform information for remove_file 1cb2e11 Windows: remove readonly files 877133c Make `AsyncFnOnce`, `AsyncFnMut`, `AsyncFn` non-`#[fundamental]` f185293 Document `Sum::sum` returns additive identities for `[]` 3021e97 Clean up 'HashMap' and 'HashSet' docs; 133820f Optimize `Rc::<str>::default()` implementation d1b4bb8 std: get rid of `sys_common::io` 1d89e16 std: move `io` module out of `pal` 4aa4bc6 Move two windows process tests to tests/ui 27a8a1b tests(std/net): remove outdated `base_port` calculation bf069a5 sys: net: Add UEFI stubs 11749bb Remove some unnecessary parens in `assert!` conditions f929a72 remove use of `feature(trait_upcasting)` from core tests d91bc32 Stabilise 'Cursor::{get_mut, set_position}' in 'const' scenarios; 665240c Stabilize `HashMap::get_many_mut` as `HashMap::get_disjoint_mut` 982f7ae tests(std): don't output to std{out,err} in `test_creation_flags` and `test_proc_thread_attributes` 5140bef Fix unreachable_pub lint for hermit target 548ab25 Fix link in from_fn.rs 35c34d6 Use `widening_mul` 20b1c4b Add OneSidedRangeBound to eliminate panic in `split_point_of` c35998c Rename slice::take methods to split_off 67b68a8 Update `compiler-builtins` to 0.1.145 ade3374 specify a prim@slice in docs d83d50b implement inherent str constructors 40aa071 std: move network code into `sys` 6c3bdfb uefi: process: Add support for command environment variables 6b2e68b Mark `std::fmt::from_fn` as `#[must_use]` bc533c8 Rename rustc_contract to contract f480a7e Improve contracts intrisics and remove wrapper function 3bbca3d Separate contract feature gates for the internal machinery a906682 Desugars contract into the internal AST extensions 1483011 Express contracts as part of function header and lower it to the contract lang items 95504cd contracts: added lang items that act as hooks for rustc-injected code to invoke. 6642dc7 Contracts core intrinsics. be2c8bb More PR feedback 7d84a73 PR feedback d072ed5 Add `unchecked_disjoint_bitor` with fallback intrinsic implementation 397207e Add note about `FnPtr` being exposed as public bound 5677966 Add `cast_signed` and `cast_unsigned` methods for `NonZero` types de581eb For NonZero impl macros, give unsigned impls access to the corresponding signed type 1b2c62b std::fs: further simplify dirent64 handling 9ef4e5b add UnsafeCell direct access APIs f4d895a primitive type migration from mod.rs to primitives.rs 9faaf11 implement unstable `new_range` feature 42ac6b6 std::range d916468 Remove stabilized feature gate d3a3d41 Move env modifying tests to a separate integration test 5dadf13 Fix for SGX 94180a1 Fix benchmarking of libstd a8aae44 Move std::sync unit tests to integration tests 6627fb7 Move std::thread_local unit tests to integration tests 0a030cc Move std::time unit tests to integration tests c6da9fd Move std::path unit tests to integration tests df3c578 Move std::panic unit tests to integration tests e7a6a94 Move std::num unit tests to integration tests 1e48cf2 Move std float unit tests to integration tests 1895ced Move std::error unit tests to integration tests ed38590 Move std::env unit tests to integration tests 19e2942 no unsafe pointer and no overflowing_literals in fmt::Display of integers 796ed0e black_box integer-input on fmt benches 6886467 OnceCell & OnceLock docs: Using (un)initialized consistently d423dcf Docs for f16 and f128: correct a typo and add details 3e4e5db rustc_allowed_through_unstable_modules: require deprecation message bb1ba7d Update encode_utf16 to mention it is native endian 7ecb885 remove Rustc{En,De}codable from library and compiler 0a0473f make rustc_encodable_decodable feature properly unstable 4f8b89d Fix sentence in process::abort 7574c2d document ptr comparison being by address 978ab50 stabilize `once_wait` 1766b3a implement all min/max fns in terms of `<`/`is_lt` e1ee153 improve doc tests for (min/max/minmax).* functions 9429024 docs: Documented Send and Sync requirements for Mutex + MutexGuard faa7fa2 Add documentation for derive(CoercePointee) ea01e12 Fix off-by-one error causing driftsort to crash 181d406 Insert null checks for pointer dereferences when debug assertions are enabled f85c7ae atomic: extend compare_and_swap migration docs c720544 float::min/max: mention the non-determinism around signed 0 9670100 Stabilize `const_black_box` a61807e Improve documentation for file locking 6239734 Remove minor future footgun in `impl Debug for MaybeUninit` 47f59f6 Add `AsyncFn*` to core prelude 1f9ab74 uefi: Implement path d6f0249 Implement `int_from_ascii` (rust-lang#134821) d0f0b0c Cleanup docs for Allocator a575a3d btree/node.rs: pop_internal_level: does not invalidate other handles cd2203c btree/node.rs: remove incorrect comment from pop_internal_level docs e7e89b4 add inline attribute and codegen test 0a5e57d split slice::ptr_rotate into three separate algorithms, to hopefully help inlining 96818bf optimize slice::ptr_rotate for compile-time-constant small rotates 15e97c4 Test pipes also when not running on Windows and Linux simultaneously aac8826 uefi: process: Fix args 7144f46 [cfg_match] Document the use of expressions d92da1d Update comments and sort target_arch in c_char_definition 90ad94f [Clippy] Add vec_reserve & vecdeque_reserve diagnostic items 7f15b3c Fix platform-specific doc string for AtomicUsize::from_mut to be platform-independent 53cb872 Document powf and powi calls that always return 1.0 3f66052 Document purpose of closure in from_fn.rs more clearly 1513d17 add missing allocator safety in alloc crate be7ee3d alloc: add `#![warn(unreachable_pub)]` 3d3992a Implement `AtomicT::update` & `AtomicT::try_update` ba33953 fix doc for std::sync::mpmc 058da35 Implement phantom variance markers cd274c9 Clarify WindowsMut (Lending)Iterator ea48641 compiler_fence: fix example 0c2f7dc Update `std::io::{pipe, PipeReader, PipeWriter}` docs the new location 519e091 Move `std::io::pipe` code into its own file 14b078a Actually run the bstr test 44df40e Update comment 04268b2 Put all coretests in a separate crate 16ac63c Add an `unchecked_div` alias to the `Div<NonZero<_>>` impls aaad912 add nto80 x86-64 and aarch64 target 8fc0e4e Add support for QNX 7.1 with io-sock on x64 28740bb Add new target for supporting Neutrino QNX 6.1 with `io-socket` network stack on aarch64 436453a Update a bunch of comments from before wasi support was added 6b22f79 Remove a bunch of emscripten test ignores d068a96 Fix testing of the standard library with Emscripten fd73a29 fix(libtest): Deprecate '--logfile' 3d8b534 docs: fix typo in std::pin overview 0c35cd9 ports last few library files to new intrinsic style d71eb58 Improve and expand documentation of pipes cbdcda9 Fix set_name in thread mod for NuttX 1453096 Fix `FormattingOptions` instantiation with `Default` a1314bd Update library/core/src/num/nonzero.rs e63528c Add memory layout documentation to generic NonZero<T> 231a9da Fix whitespace d5890ac document order of items in iterator from drain 5948338 Add `File already exists` error doc to `hard_link` function 1ffebe2 Doc difference between extend and extend_from_slice 124616c Make `Vec::pop_if` a bit more presentable 40b1998 Implement `VecDeque::pop_front_if` & `VecDeque::pop_back_if` da31a96 remove pointless allowed_through_unstable_modules on TryFromSliceError c9a0caa test: add `#![warn(unreachable_pub)]` 4f1ec0a proc_macro: add `#![warn(unreachable_pub)]` ec89eec Implement `CloneToUninit` for `ByteStr` 04c7391 Add doc aliases for BStr and BString 19c8280 Omit some more `From` impls to avoid inference failures e9417a6 Support `no_rc`, `no_sync`, and `no_global_oom_handling` ebb52e1 Add `#[cfg(not(test))]` to some impls to work around rust-lang#135100 f86714e Implement `ByteStr` and `ByteString` types fcfcc0d Remove erroneous `unsafe` in `BTreeSet::upper_bound_mut` fa11f6b Library: Finalize dyn compatibility renaming 3e436ee Remove test panic from File::open 96d2602 fix OsString::from_encoded_bytes_unchecked description 6768b90 Add an example of using `carrying_mul_add` to write wider multiplication c4d6e54 Outline panicking code for `LocalKey::with` 7a00edd core: `#[allow(unreachable_pub)]` on unreachable `pub use` 594b129 core: add `#![warn(unreachable_pub)]` e527cb9 rtstartup: add `#![warn(unreachable_pub)]` f7bf6ac panic_unwind: add `#![warn(unreachable_pub)]` fe225f2 Recognise new IPv6 documentation range from RFC9637 a53e52a 1. Removed 'rustc_nounwind' 2. Rewording of comments e34afe8 Export likely(), unlikely() and cold_path() in std::hint f177b66 Correct counting to four in cell module docs 2bc505c doc: Point to methods on `Command` as alternatives to `set/remove_var` 214e544 wasi/io: remove dead files 5fb4fe2 remove unnecessary rustc_allowed_through_unstable_modules 64e8f4d further improve panic_immediate_abort by removing rtprintpanic messages ab3b70b cargo update e51d35e Rewrap following accepting review suggestions from @ibraheemdev 15a5c64 Update library/core/src/slice/mod.rs 2a8f45a Update library/core/src/slice/mod.rs 2ad59b3 Update library/core/src/slice/mod.rs 25321f4 Update library/core/src/slice/mod.rs 8c5e63b Update library/core/src/slice/mod.rs 53a1a5f Update library/core/src/slice/mod.rs 5d53c17 Update library/core/src/slice/mod.rs cef6842 Update library/core/src/slice/mod.rs 5c2b400 Update library/core/src/slice/mod.rs 3916eff Update library/core/src/slice/mod.rs abe5a0d `then be` -> `be` based on feedback from @ibraheemdev d71b092 Improve `select_nth_unstable` documentation clarity 76150fb Revert "Auto merge of rust-lang#134330 - scottmcm:no-more-rvalue-len, r=matthewjasper" c1f2f10 Add references to the IEEE functions for `float_next_up_down` 5c1efbf Stabilize `float_next_up_down` f231753 Fix import of pipe in kernel_copy.rs 17d9b58 Move `std::pipe::*` into `std::io` 326b06b Clarify note in `std::sync::LazyLock` example ba27908 fix typo in library/alloc/src/sync.rs 45eedd2 Add missing safety descriptions to Arc's 'from_raw','increment_strong_count','decrement_strong_count' ca2a3c1 Adjust syntax dce7c93 Less unsafe in `dangling`/`without_provenance` 94ffdcf fix typo in typenames of pin documentation bb4c379 intrinsics: deprecate calling them via the unstable std::intrinsics path 27a7931 add comments explaining main thread identification 2dd26bf std: lazily allocate the main thread handle ea755b1 Revert "Remove the Arc rt::init allocation for thread info" 8731f40 Update ReadDir::next in std::sys::pal::unix::fs to use `&raw const (*ptr).field` instead of `ptr.offset(...).cast()`. bbcf6d3 Update compiler-builtins to 0.1.143 b39ff60 Rename `pos` to `position` ac5b101 Convert `struct FromBytesWithNulError` into enum c5f11dd Enforce syntactical stability of const traits in HIR 4e52ddf Update compiler-builtins to 0.1.141 a6c35ed Add another `Vec::splice` example 67328ac avoid nesting the user-defined main so deeply on the stack ca40936 use a single large catch_unwind in lang_start fdce10c uefi: helpers: Introduce OwnedDevicePath a92241c path: Move is_absolute check to sys::path e5666f3 Update the explanation for why we use box_new in vec! e5427c0 Add #[inline] to copy_from_slice 67f58ae Add inherent versions of MaybeUninit methods for slices 936f942 Make UniqueRc invariant for soundness a390448 update and clarify StructuralPartialEq docs 1cea0b3 Use `NonNull::without_provenance` within the standard library e9b73e6 Initial fs module for uefi d881bf7 Improve the safety documentation on new_unchecked 18fcfce Update a bunch of library types for MCP807 8cf0be1 alloc: remove unsound `IsZero` for raw pointers 83584ff Fix `proc_macro::quote!` for raw ident 51c17eb Append `TokenTree` with `ToTokens` in `proc_macro::quote!` 672724a Rename the internal simpler `quote` macro to `minimal_quote` 9945418 Used pthread name functions returning result for FreeBSD and DragonFly 6369c71 Fix ptr::from_ref documentation example comment 67ac37b Improve prose around `as_slice` example of IterMut 115c87f fmt 6ee4239 update cfg(bootstrap) 4bf4f0d update version placeholders 60107b4 Remove some unnecessary `.into()` calls 19a2e56 add missing provenance APIs on NonNull 7aa3055 More compelling env_clear() examples 077b563 Implement Condvar::wait_timeout for targets without threads 2158e22 Impl String::into_chars 835a5f8 Avoid naming variables `str` 14f092d [generic_assert] Constify methods used by the formatting system c198293 Add support for wasm exception handling to Emscripten target 535fca0 chore: remove redundant words in comment b8058b1 Add doc aliases for `libm` and IEEE names e46b13b Mark `slice::reverse` unstably const 3dceadf Clarified the documentation on core::iter::from_fn and core::iter::successors 76990b0 library: fix adler{-> 2}.debug b9a33d1 add regression test for unsound Flatten/FlatMap specialization 236fdef do not in-place-iterate over flatmap/flatten 8c917fa Fix UWP build ef57cb8 Bump backtrace to 0.3.75 ee9cdf5 sync to actual dep verions of backtrace 755dd0d turn rustc_box into an intrinsic 51f41fe core: use public method instead of instrinsic 05380fe core: improve comments e85375c core: implement `bool::select_unpredictable` 98a7af9 Switch rtems target to panic unwind e06bb15 path in detail 004f2a0 Move some things to `std::sync::poison` and reexport them in `std::sync` 2d9b6f2 Bump backtrace to rust-lang/backtrace-rs@4d7906b 47a20aa Try to write the panic message with a single `write_all` call 5ce7272 fix doc for missing Box allocator consistency 0465130 Remove qualification of `std::cmp::Ordering` in `Ord` doc f1e25bf std::fs::DirEntry.metadata(): prefer use of lstat() on Emscripten 19bcf2e Avoid use of LFS64 symbols on Emscripten 788d9e2 char to_digit: avoid unnecessary casts to u64 ef6e5f9 Remove allowing static_mut_refs lint 105ba0d Tidy up bigint mul methods 1f472c9 fix doc for read write unaligned in zst operation ee61fdf Avoid short writes in LineWriter 8e553fb ptr docs: make it clear that we are talking only about memory accesses 22518c9 Make slice::as_flattened_mut unstably const e2f09b6 rename typed_swap → typed_swap_nonoverlapping cc44591 stabilize const_swap 83aed12 fix: typos 607ff95 Fix sentence fragment in `pin` module docs c8286c2 docs: inline `alloc::ffi::c_str` types to `alloc::ffi` c7b753b Fix compilation issues on other unixes 9cc0c36 Eliminate redundant statx syscalls c994904 Unify fs::copy and io::copy 54d4d5f Update `compiler-builtins` to 0.1.140 3afb8da Update library/alloc/tests/sort/tests.rs 1dc583c Fix typos de985a6 Override `carrying_mul_add` in cg_llvm 00fe88e Move `{widening, carrying}_mul` to an intrinsic with fallback MIR a680e5d Fix mistake in windows file open d9d3891 Windows: Use WriteFile to write to a UTF-8 console 01f00c8 ptr::copy: fix docs for the overlapping case 7cd780f Fix renaming symlinks on Windows e6f3e2d docs: inline `core::ffi::c_str` types to `core::ffi` 71575a8 docs: inline `std::ffi::c_str` types to `std::ffi` ded0310 unwinding: bump version to fix asm dc95bb9 docs: update code example for Iterator#rposition a73206f Use scoped threads in `std::sync::Barrier` examples bb1d81b Fix forgetting to save statx availability on success 2ea9a79 Specify only that duplicates are discarded, not the order. d018136 Document collection `From` and `FromIterator` impls that drop duplicate keys. 6b48a18 Add 'into_array' conversion destructors for 'Box', 'Rc', and 'Arc'; 0e9db60 Impl FromIterator for tuples with arity 1-12 1f959d5 Fix formatting 3690cf6 stabilize const_alloc_layout 25e3743 chore: fix typos e813765 Windows: Use FILE_ALLOCATION_INFO for truncation cc7e2c0 Bump `stdarch` 44039cc core: fix const ptr::swap_nonoverlapping when there are pointers at odd offsets in the type 9d33c76 Fixes safety docs for `dyn Any + Send {+ Sync}` d539c11 Use `#[derive(Default)]` instead of manually implementing it cf4257f Revert "Auto merge of rust-lang#130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser" 9ab9041 Implement `PointerLike` for `isize`, `NonNull`, `Cell`, `UnsafeCell`, and `SyncUnsafeCell`. b570c17 docs: `transmute<&mut T, &mut MaybeUninit<T>>` is unsound when exposed to safe code 1b07e73 docs: Permissions.readonly() also ignores root user special permissions d4a00d0 cargo update 5a642f1 Delete `Rvalue::Len` 84ad76e Asserts the maximum value that can be returned from `Vec::len` 84d2ac3 Document `PointerLike` implementation restrictions. 53d66b1 Use `&raw` for `ptr` primitive docs 7d2b6bd Add `is_ascii` function optimized for x86-64 for [u8] 6e37ca6 Add new implementation benchmark 0fe22d2 Document CTFE behavior of methods that call is_null 5e5a3c5 Correctly document is_null CTFE behavior. 893b7ce Win: rename: Use offset_of! in struct size calculation 0ce0ee6 Win: Remove special casing of the win7 target for `std::fs::rename` 8698e12 Win: Add test cases for renaming a directory while the target file is opened and for renaming over a non-empty directory 1347efd Win: Use `FILE_RENAME_FLAG_POSIX_SEMANTICS` for `std::fs::rename` if available daac823 Less unwrap() in documentation edf5c33 Improve prose around into_slice example of IterMut 4976aa4 Improve prose around `as_slice` example of Iter aa62262 Improve prose around basic examples of Iter and IterMut 119fcf8 Abstract `ProcThreadAttributeList` into its own struct dc58df7 fix `PointerLike` docs 722c231 unimplement `PointerLike` for trait objects 7c2e8c5 split up `#[rustc_deny_explicit_impl]` attribute 194736d remove reference to dangling from slice::Iter c42157c mri: add track_caller to thread spawning methods for better backtraces ed92b47 fix typos in the example code in the doc comments of `Ipv4Addr::from_bits()`, `Ipv6Addr::from_bits()` & `Ipv6Addr::to_bits()` 9a38c0e Improve documentation of `element_offset` and related methods edc9a95 Rename `elem_offset` to `element_offset` dcebd25 docs: Mention `spare_capacity_mut()` in `Vec::set_len` 11d8102 build: Update libc version af6586b fix typo in ptr/mod.rs dadd8aa Stabilize `#[diagnostic::do_not_recommend]` f024552 Use field init shorthand where possible 82c21e0 fix(LazyCell): documentation of get[_mut] was wrong 1676c40 compiler & tools dependencies: Updating allocator-api2 v0.2.20 -> v0.2.21 Updating annotate-snippets v0.11.4 -> v0.11.5 Updating anyhow v1.0.93 -> v1.0.94 Updating bstr v1.11.0 -> v1.11.1 Updating chrono v0.4.38 -> v0.4.39 Updating clap v4.5.21 -> v4.5.23 Updating clap_builder v4.5.21 -> v4.5.23 Updating clap_complete v4.5.38 -> v4.5.39 Updating clap_lex v0.7.3 -> v0.7.4 Updating colored v2.1.0 -> v2.2.0 Updating console v0.15.8 -> v0.15.10 Updating crossbeam-channel v0.5.13 -> v0.5.14 Updating crossbeam-deque v0.8.5 -> v0.8.6 Updating crossbeam-utils v0.8.20 -> v0.8.21 Updating encode_unicode v0.3.6 -> v1.0.0 Updating fastrand v2.2.0 -> v2.3.0 Updating home v0.5.9 -> v0.5.11 Updating js-sys v0.3.74 -> v0.3.76 Updating libc v0.2.167 -> v0.2.168 Updating miniz_oxide v0.8.0 -> v0.8.1 Updating pest v2.7.14 -> v2.7.15 Updating pest_derive v2.7.14 -> v2.7.15 Updating pest_generator v2.7.14 -> v2.7.15 Updating pest_meta v2.7.14 -> v2.7.15 Updating redox_syscall v0.5.7 -> v0.5.8 Updating rustc-stable-hash v0.1.0 -> v0.1.1 Updating rustix v0.38.41 -> v0.38.42 Updating self_cell v1.0.4 -> v1.1.0 Updating semver v1.0.23 -> v1.0.24 Updating serde v1.0.215 -> v1.0.216 Updating serde_derive v1.0.215 -> v1.0.216 Adding thiserror v2.0.7 Adding thiserror-impl v2.0.7 Updating time v0.3.36 -> v0.3.37 Updating time-macros v0.2.18 -> v0.2.19 Updating tokio v1.41.1 -> v1.42.0 Updating wasm-bindgen v0.2.97 -> v0.2.99 Updating wasm-bindgen-backend v0.2.97 -> v0.2.99 Updating wasm-bindgen-macro v0.2.97 -> v0.2.99 Updating wasm-bindgen-macro-support v0.2.97 -> v0.2.99 Updating wasm-bindgen-shared v0.2.97 -> v0.2.99 Updating wasm-encoder v0.221.0 -> v0.221.2 Updating wasmparser v0.221.0 -> v0.221.2 Updating wast v221.0.0 -> v221.0.2 Updating wat v1.221.0 -> v1.221.2 290a596 Fix typo in uint_macros.rs e6301c0 remove obsolete comment and pub(super) visibility 8cb9e77 remove bounds from vec and linkedlist ExtractIf ee2057b Add a range argument to vec.extract_if 77336c2 Stabilize #[coverage] attribute 82ae8fc Remove `rustc::existing_doc_keyword` lint. a489d11 Move `doc(keyword = "while")`. 1b1c065 rustdoc-search: let From and Into be unboxed b5d2a26 Replace i32 by char in `split_at` & `_unchecked` 412045d Add clarity to the "greater" of `VecDeque::insert` 70e78f2 Replace i32 by char to add clarity 5e5f4cb Add value accessor methods to `Mutex` and `RwLock` 096e6d6 std::net: Solaris supports `SOCK_CLOEXEC` as well since 11.4. d692b68 UniqueRc: platform-specific AsFd/Handle/etc impls to mirror Rc f813ab8 UniqueRc: PinCoerceUnsized and DerefPure 3453fdf UniqueRc: comparisons and Hash 0082386 UniqueRc: Add more trait impls. f095a54 Remove support for specializing ToString outside the standard library e4dc035 Correct spelling of CURRENT_RUSTC_VERSION 929f1c0 Add documentation for anonymous pipe module 7d1405f feat: clarify how to use `black_box()` 8171641 Update includes in '/library/core/src/error.rs'; af5f1f3 Fix building `std` for Hermit after `c_char` change 76cb80b Fix `Path::is_absolute` on Hermit 3eae479 Fix typos in docs on provenance 32b87cd Add unwrap_unsafe_binder and wrap_unsafe_binder macro operators dd94d7f Switch inline(always) in core/src/fmt/rt.rs to plain inline e434c5f Reword prelude for AsyncFn stabilization 373f5bb Stabilize async closures a8093d1 Remove consteval note from <*mut T>::align_offset docs. b0ddbf9 Stabilize the Rust 2024 prelude d2c896f Forbid unsafe_op_in_unsafe_fn in hurd-specific os and sys files 8a7cb25 Move some alloc tests to the alloctests crate 0d1aa20 control libunwind linkage mode via `crt-static` on gnullvm targets c12a093 Change `GetManyMutError` to match T-libs-api decision 989d216 Add references to the specific ABI documents a6808b1 Remove l4re from the unsigned char operating system list 5271059 De-duplicate and improve definition of core::ffi::c_char 3e21347 Add a note saying that `{u8,i8}::from_{be,le,ne}_bytes` is meaningless 865758b stabilize const_nonnull_new 27bd01d Remove rustc_const_stable attribute on const NOOP 16495c1 Add libc funcitons only for wasm32-wasip1-threads. 619e647 Fix compilation for wasm32-wasip1 (without threads). 77fb7ba Use UNIX thread_local implementation for WASI. 79a9cf3 Run TLS destructors for wasm32-wasip1-threads f28ae51 Downgrade cc f87dd41 Run `cargo update` and update licenses aa1c97a chore: Improve doc comments af22068 Refactor ReadDir into a state machine 228d796 wasi/fs: Improve stopping condition for <ReadDir as Iterator>::next 4e5539f docs: better examples for `std::ops::ControlFlow` 5e7e846 Expand home_dir docs 06dc184 Add doc alias 'then_with' for `then` method on `bool` 7607ee1 Adds new intrinsic declaration 347acc2 Define acronym for thread local storage 5dd5f12 Add a `collect_into` tuple test case 24e234b Don't impl Extend for 13-tuples 359f2b8 Simplify documentation for Extend impl for tuples 6301a36 Add Extend impls for tuples of arity 1 through 12 92b13ea Unbreak tidy ee1f061 Stabilize `std::io::ErrorKind::QuotaExceeded` 9d2daee Stabilize `std::io::ErrorKind::CrossesDevices` 5a39052 Access members of `FormattingOptions` directly instead of via getters/setters 4b9cbf6 Removed constness for methods receiving a `&mut` parameter 150c3a0 Added better reason for exposing `flags` and `get_flags` as unstable a1bc38f Formatted 95ffeeb Refactored FormattingOptions to use a bitmask for storing flags 74cbddd Revert "Turned public+unstable+hidden functions into private functions" b857cd4 Turned public+unstable+hidden functions into private functions 32b9e62 Made all fns const 1f7ad0f impl Default for fmt::FormattingOptions d19a21c Fixed copy+paste error in comment ff4ad03 fmt::FormattingOptions: Renamed `alignment` to `align` 0bc5b89 Formatter::with_options: Use different lifetimes fe15215 Fixed another broken test 672cc7c Added struct `fmt::FormattingOptions` 98b6ae1 Formatter: Access members via getter methods wherever possible b2ebbb8 Stabilize noop_waker a5b3904 Improve documentation 2ad2ce3 Reformat Python code with `ruff` c9b0d6c Improve comments for the default backtrace printer 0d95837 clarify simd_relaxed_fma non-determinism 100ae4a Teach rust core about Xtensa VaListImpl and add a custom lowering of vaarg for xtensa. c544d8b Rename `core_pattern_type` and `core_pattern_types` lib feature gates to `pattern_type_macro` e442962 Allow fn pointers comparisons lint in library f1bc9df Update `NonZero` and `NonNull` to not field-project (per MCP807) 86b9508 Add `core::arch::breakpoint` and test cd64094 a release operation synchronizes with an acquire operation 0e32146 Update the definition of `borrowing_sub` 4e226fd stabilize const_{size,align}_of_val 2c1d522 ./x miri: fix sysroot build 96858ad stabilize const_collections_with_hasher and build_hasher_default_const_new cb736f0 Match simd_relaxed_fma documentation to fmuladd intrinsic b9e663f Add simd_relaxed_fma intrinsic feb607d Fix `f16::midpoint` const feature gate 9737a70 Use c"lit" for CStrings without unwrap 48e2b28 Stabilize `const_maybe_uninit_write` df56ca3 Fix docs for '<[T]>::as_array'; 1c2f8a9 Stabilize `ptr::fn_addr_eq` 3090c4d rustc_allow_const_fn_unstable is not used in proc_macro 0db691c get rid of a bunch of unnecessary rustc_const_unstable e4e285a remove a whole bunch of unnecessary const feature gates 8b0570f add isatty alias for is_terminal 394f0d0 Stabilize unsigned `num_midpoint` feature 1ae1537 Mark `slice::copy_from_slice` unstably const 4693f96 Fix chaining `carrying_add`s ec9e902 add test for bytewise ptr::swap of a pointer 4ee26c2 move swap_nonoverlapping constness to separate feature gate 2efd28f move slice::swap_unchecked constness to slice_swap_unchecked feature gate b1abc24 Add diagnostic item for `std::ops::ControlFlow` 51a259a update link to "C++ Exceptions under the hood" blog 04f7ca6 fix: fix codeblocks in `PathBuf` example 1fa4993 fix: hurd build, stat64.st_fsid was renamed to st_dev 06463eb std: clarify comments about initialization 565916b std: refactor `pthread`-based synchronization 30e748a bump hashbrown version ce60b20 Fill in a `BTreeSet::entry` example a11d45c Add a tracking issue for `btree_set_entry` 658ea54 Add `BTreeSet` entry APIs to match `HashSet` 0a50804 Implement code review 3fa9191 thread::available_parallelism for wasm32-wasip1-threads 770fc75 changes old intrinsic declaration to new declaration 57f6dfc Fix and undeprecate home_dir() 763c5ea refine mir debuginfo docs 077488e Doc comment custom MIR debuginfo. 27be7d1 Stabilize `extended_varargs_abi_support` fff4592 update cfgs f36155a replace placeholder version 034cdc5 Also use zero when referencing to capacity or length 885dfbd Use consistent wording in docs, use zero instead of 0 4382c69 Fix typos in pin.rs 8e8a702 Share inline(never) generics across crates dc6cb97 fmt 0b080fd aix: create shim for lgammaf_r addbdaa Add '<[T]>::as_array', '<[T]>::as_mut_array', '<*const [T]>::as_array', and '<*mut [T]>::as_mut_array' conversion methods; 6d5eb47 Remove one stray space. 79cbeab Update chown help with a link and adding cap warning 4f593a5 Expand std::os::unix::fs::chown() doc with a warning 5f387c3 Add missing code examples on `LocalKey` ae87dbd Make profiler_builtins `#![no_core]` instead of just `#![no_std]` 3399c5d Remove unnecessary `#![allow(unused_features)]` 3a1ae75 Sort and separate lint/feature attributes in `profiler_builtins` 26bbaff std: update internal uses of `io::const_error!` fb6e161 std: expose `const_io_error!` as `const_error!` b428d84 Constify Drop and Destruct 9bf17aa miri: disable test_downgrade_observe test on macOS 1199373 Shorten the `MaybeUninit` `Debug` implementation 9fd6f9a Support ranges in `<[T]>::get_many_mut()` 6c17bc5 btree: add `{Entry,VacantEntry}::insert_entry` 3f90865 std::thread: avoid leading whitespace in some panic messages f72e3b4 Added a doc test for std::path::strip_prefix git-subtree-dir: library git-subtree-split: 1906eb1
1 parent 8fe8f56 commit c5f1c37

File tree

645 files changed

+17810
-9380
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

645 files changed

+17810
-9380
lines changed

Cargo.lock

+26-35
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

+2-1
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ resolver = "1"
33
members = [
44
"std",
55
"sysroot",
6+
"coretests",
67
]
78

89
exclude = [
@@ -32,7 +33,7 @@ codegen-units = 10000
3233
[profile.release.package]
3334
addr2line.debug = 0
3435
addr2line.opt-level = "s"
35-
adler.debug = 0
36+
adler2.debug = 0
3637
gimli.debug = 0
3738
gimli.opt-level = "s"
3839
miniz_oxide.debug = 0

alloc/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ edition = "2021"
1010

1111
[dependencies]
1212
core = { path = "../core" }
13-
compiler_builtins = { version = "=0.1.138", features = ['rustc-dep-of-std'] }
13+
compiler_builtins = { version = "=0.1.145", features = ['rustc-dep-of-std'] }
1414

1515
[dev-dependencies]
1616
rand = { version = "0.8.5", default-features = false, features = ["alloc"] }

alloc/benches/btree/map.rs

+1
Original file line numberDiff line numberDiff line change
@@ -353,6 +353,7 @@ pub fn iter_10k(b: &mut Bencher) {
353353
}
354354

355355
#[bench]
356+
#[cfg_attr(target_os = "emscripten", ignore)] // hits an OOM
356357
pub fn iter_1m(b: &mut Bencher) {
357358
bench_iter(b, 1_000, 1_000_000);
358359
}

alloc/benches/lib.rs

+1-2
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,7 @@
44
#![feature(iter_next_chunk)]
55
#![feature(repr_simd)]
66
#![feature(slice_partition_dedup)]
7-
#![cfg_attr(bootstrap, feature(strict_provenance))]
8-
#![cfg_attr(not(bootstrap), feature(strict_provenance_lints))]
7+
#![feature(strict_provenance_lints)]
98
#![feature(test)]
109
#![deny(fuzzy_provenance_casts)]
1110

alloc/benches/slice.rs

+11
Original file line numberDiff line numberDiff line change
@@ -366,14 +366,25 @@ rotate!(rotate_medium_half, gen_random, 9158, 9158 / 2);
366366
rotate!(rotate_medium_half_plus_one, gen_random, 9158, 9158 / 2 + 1);
367367

368368
// Intended to use more RAM than the machine has cache
369+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
369370
rotate!(rotate_huge_by1, gen_random, 5 * 1024 * 1024, 1);
371+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
370372
rotate!(rotate_huge_by9199_u64, gen_random, 5 * 1024 * 1024, 9199);
373+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
371374
rotate!(rotate_huge_by9199_bytes, gen_random_bytes, 5 * 1024 * 1024, 9199);
375+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
372376
rotate!(rotate_huge_by9199_strings, gen_strings, 5 * 1024 * 1024, 9199);
377+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
373378
rotate!(rotate_huge_by9199_big, gen_big_random, 5 * 1024 * 1024, 9199);
379+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
374380
rotate!(rotate_huge_by1234577_u64, gen_random, 5 * 1024 * 1024, 1234577);
381+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
375382
rotate!(rotate_huge_by1234577_bytes, gen_random_bytes, 5 * 1024 * 1024, 1234577);
383+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
376384
rotate!(rotate_huge_by1234577_strings, gen_strings, 5 * 1024 * 1024, 1234577);
385+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
377386
rotate!(rotate_huge_by1234577_big, gen_big_random, 5 * 1024 * 1024, 1234577);
387+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
378388
rotate!(rotate_huge_half, gen_random, 5 * 1024 * 1024, 5 * 1024 * 1024 / 2);
389+
#[cfg(not(target_os = "emscripten"))] // hits an OOM
379390
rotate!(rotate_huge_half_plus_one, gen_random, 5 * 1024 * 1024, 5 * 1024 * 1024 / 2 + 1);

alloc/benches/vec.rs

+5
Original file line numberDiff line numberDiff line change
@@ -547,6 +547,11 @@ fn bench_in_place_collect_droppable(b: &mut Bencher) {
547547
})
548548
}
549549

550+
// node.js gives out of memory error to use with length 1_100_000
551+
#[cfg(target_os = "emscripten")]
552+
const LEN: usize = 4096;
553+
554+
#[cfg(not(target_os = "emscripten"))]
550555
const LEN: usize = 16384;
551556

552557
#[bench]

alloc/src/alloc.rs

+1-4
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,6 @@ use core::hint;
1010
#[cfg(not(test))]
1111
use core::ptr::{self, NonNull};
1212

13-
#[cfg(test)]
14-
mod tests;
15-
1613
extern "Rust" {
1714
// These are the magic symbols to call the global allocator. rustc generates
1815
// them to call `__rg_alloc` etc. if there is a `#[global_allocator]` attribute
@@ -342,7 +339,7 @@ unsafe impl Allocator for Global {
342339
}
343340
}
344341

345-
/// The allocator for unique pointers.
342+
/// The allocator for `Box`.
346343
#[cfg(all(not(no_global_oom_handling), not(test)))]
347344
#[lang = "exchange_malloc"]
348345
#[inline]

0 commit comments

Comments
 (0)