Skip to content

Commit 6a97897

Browse files
author
gitbot
committed
Squashed 'library/' changes from 78fc550..fb940b2
fb940b2 [create-pull-request] automated change 5315a10 Rustfmt 00b957a occured -> occurred 6aba468 Allow Rust to use a number of libc filesystem calls 43d2be3 Windows: Test that deleting a running binary fails 5105b9d Update platform information for remove_file 3cdbde4 Windows: remove readonly files 60c7dc3 Make `AsyncFnOnce`, `AsyncFnMut`, `AsyncFn` non-`#[fundamental]` 084eb8c Document `Sum::sum` returns additive identities for `[]` 037071c Clean up 'HashMap' and 'HashSet' docs; b8aaaab Optimize `Rc::<str>::default()` implementation 3d4fd97 std: get rid of `sys_common::io` 66a398d std: move `io` module out of `pal` f935957 Move two windows process tests to tests/ui dbb9599 tests(std/net): remove outdated `base_port` calculation 005b648 sys: net: Add UEFI stubs 1a0b116 Remove some unnecessary parens in `assert!` conditions 79e9c9c remove use of `feature(trait_upcasting)` from core tests dfbead9 Stabilise 'Cursor::{get_mut, set_position}' in 'const' scenarios; c74941b Stabilize `HashMap::get_many_mut` as `HashMap::get_disjoint_mut` bfc517c tests(std): don't output to std{out,err} in `test_creation_flags` and `test_proc_thread_attributes` 1cda7a3 Fix unreachable_pub lint for hermit target 44909d6 Fix link in from_fn.rs dc1dbc2 Use `widening_mul` 3895220 Add OneSidedRangeBound to eliminate panic in `split_point_of` 4fb94e0 Rename slice::take methods to split_off 25153a7 Update `compiler-builtins` to 0.1.145 d702bd6 specify a prim@slice in docs 4203c4e implement inherent str constructors 3ec4981 std: move network code into `sys` 6c16060 uefi: process: Add support for command environment variables d9200a2 Mark `std::fmt::from_fn` as `#[must_use]` 4ea09c2 Rename rustc_contract to contract c830dce Improve contracts intrisics and remove wrapper function fa69801 Separate contract feature gates for the internal machinery 45af03c Desugars contract into the internal AST extensions d317430 Express contracts as part of function header and lower it to the contract lang items 1d461d0 contracts: added lang items that act as hooks for rustc-injected code to invoke. 2cb9f38 Contracts core intrinsics. a1abbbf More PR feedback cf3d55b PR feedback 10112c1 Add `unchecked_disjoint_bitor` with fallback intrinsic implementation e70ccdf Add note about `FnPtr` being exposed as public bound ebbccd8 Add `cast_signed` and `cast_unsigned` methods for `NonZero` types b57fbff For NonZero impl macros, give unsigned impls access to the corresponding signed type d5ddef8 std::fs: further simplify dirent64 handling eea9504 add UnsafeCell direct access APIs 0358fc6 primitive type migration from mod.rs to primitives.rs 5f3a8c6 implement unstable `new_range` feature 3b626e4 std::range 6ece567 Remove stabilized feature gate 9c7b2db Move env modifying tests to a separate integration test 9ede70a Fix for SGX 633e60c Fix benchmarking of libstd 89394bf Move std::sync unit tests to integration tests e2e3170 Move std::thread_local unit tests to integration tests e5f318b Move std::time unit tests to integration tests aac00bb Move std::path unit tests to integration tests 41671e2 Move std::panic unit tests to integration tests a8be4d4 Move std::num unit tests to integration tests d600e45 Move std float unit tests to integration tests 4cf5e5e Move std::error unit tests to integration tests 7f5620c Move std::env unit tests to integration tests 9c9ae70 no unsafe pointer and no overflowing_literals in fmt::Display of integers 475ac25 black_box integer-input on fmt benches 752d95f OnceCell & OnceLock docs: Using (un)initialized consistently 5b4b6ef Docs for f16 and f128: correct a typo and add details 8570c08 rustc_allowed_through_unstable_modules: require deprecation message eed1db7 Update encode_utf16 to mention it is native endian 6547b2f remove Rustc{En,De}codable from library and compiler fa88ed2 make rustc_encodable_decodable feature properly unstable a46e4db Fix sentence in process::abort 03b1069 document ptr comparison being by address 28cf5db stabilize `once_wait` 2317bdb implement all min/max fns in terms of `<`/`is_lt` 9c4bcd2 improve doc tests for (min/max/minmax).* functions 56706c6 docs: Documented Send and Sync requirements for Mutex + MutexGuard 0e23c5f Add documentation for derive(CoercePointee) 2ad5676 Fix off-by-one error causing driftsort to crash e5ca833 Insert null checks for pointer dereferences when debug assertions are enabled 5e4cfda atomic: extend compare_and_swap migration docs 06e2aa9 float::min/max: mention the non-determinism around signed 0 7f89641 Stabilize `const_black_box` 84eb74f Improve documentation for file locking f7758ac Remove minor future footgun in `impl Debug for MaybeUninit` 6d7cd66 Add `AsyncFn*` to core prelude 04c0485 uefi: Implement path f058e6f Implement `int_from_ascii` (rust-lang#134821) 6e7d1d8 Cleanup docs for Allocator 4b5fb81 btree/node.rs: pop_internal_level: does not invalidate other handles 9a288d9 btree/node.rs: remove incorrect comment from pop_internal_level docs ed98191 add inline attribute and codegen test c49a2c3 split slice::ptr_rotate into three separate algorithms, to hopefully help inlining 0851815 optimize slice::ptr_rotate for compile-time-constant small rotates f575955 Test pipes also when not running on Windows and Linux simultaneously c032899 uefi: process: Fix args 74bf5d9 [cfg_match] Document the use of expressions 21f52fd Update comments and sort target_arch in c_char_definition d5576f2 [Clippy] Add vec_reserve & vecdeque_reserve diagnostic items b8a9621 Fix platform-specific doc string for AtomicUsize::from_mut to be platform-independent 1931e07 Document powf and powi calls that always return 1.0 eef6596 Document purpose of closure in from_fn.rs more clearly 6a46153 add missing allocator safety in alloc crate 238ee1d alloc: add `#![warn(unreachable_pub)]` d35a120 Implement `AtomicT::update` & `AtomicT::try_update` 8907df0 fix doc for std::sync::mpmc f9db01b Implement phantom variance markers b989e96 Clarify WindowsMut (Lending)Iterator d8cd66f compiler_fence: fix example 8bbff9a Update `std::io::{pipe, PipeReader, PipeWriter}` docs the new location 2e81d87 Move `std::io::pipe` code into its own file cb36f36 Actually run the bstr test 08c8df1 Update comment 0472fb9 Put all coretests in a separate crate f4a54ce Add an `unchecked_div` alias to the `Div<NonZero<_>>` impls ce8a878 add nto80 x86-64 and aarch64 target f347bb0 Add support for QNX 7.1 with io-sock on x64 c7f28cb Add new target for supporting Neutrino QNX 6.1 with `io-socket` network stack on aarch64 78c5136 Update a bunch of comments from before wasi support was added 2020bfa Remove a bunch of emscripten test ignores a9edef8 Fix testing of the standard library with Emscripten 2ae4427 fix(libtest): Deprecate '--logfile' 4ff2571 docs: fix typo in std::pin overview d800b15 ports last few library files to new intrinsic style 5387d34 Improve and expand documentation of pipes 6da4a36 Fix set_name in thread mod for NuttX 1a5d14c Fix `FormattingOptions` instantiation with `Default` 528295a Update library/core/src/num/nonzero.rs 2addb79 Add memory layout documentation to generic NonZero<T> 28a9af1 Fix whitespace 91bc6fb document order of items in iterator from drain 3823051 Add `File already exists` error doc to `hard_link` function 58e6731 Doc difference between extend and extend_from_slice cbdf743 Make `Vec::pop_if` a bit more presentable 23b6b11 Implement `VecDeque::pop_front_if` & `VecDeque::pop_back_if` 5304127 remove pointless allowed_through_unstable_modules on TryFromSliceError 4953e04 test: add `#![warn(unreachable_pub)]` 75d4484 proc_macro: add `#![warn(unreachable_pub)]` 899459d Implement `CloneToUninit` for `ByteStr` d51a68b Add doc aliases for BStr and BString 1d36a36 Omit some more `From` impls to avoid inference failures b1fa20a Support `no_rc`, `no_sync`, and `no_global_oom_handling` 296f8f0 Add `#[cfg(not(test))]` to some impls to work around rust-lang#135100 dc57d70 Implement `ByteStr` and `ByteString` types 9325dc2 Remove erroneous `unsafe` in `BTreeSet::upper_bound_mut` a0bb8e9 Library: Finalize dyn compatibility renaming 3783130 Remove test panic from File::open ee63277 fix OsString::from_encoded_bytes_unchecked description 8b4e726 Add an example of using `carrying_mul_add` to write wider multiplication 58bd9c6 Outline panicking code for `LocalKey::with` 38c4fe5 core: `#[allow(unreachable_pub)]` on unreachable `pub use` 9c70db0 core: add `#![warn(unreachable_pub)]` 8e833ae rtstartup: add `#![warn(unreachable_pub)]` 66397a2 panic_unwind: add `#![warn(unreachable_pub)]` 74fe7ce Recognise new IPv6 documentation range from RFC9637 b127f47 1. Removed 'rustc_nounwind' 2. Rewording of comments 4b1b64b Export likely(), unlikely() and cold_path() in std::hint 36d7d91 Correct counting to four in cell module docs 648b011 doc: Point to methods on `Command` as alternatives to `set/remove_var` 620b4ae wasi/io: remove dead files 80cf5fa remove unnecessary rustc_allowed_through_unstable_modules aeb8fba further improve panic_immediate_abort by removing rtprintpanic messages fe26dab cargo update 8ff3823 Rewrap following accepting review suggestions from @ibraheemdev 01bfa77 Update library/core/src/slice/mod.rs f6725a3 Update library/core/src/slice/mod.rs 02f1178 Update library/core/src/slice/mod.rs b378077 Update library/core/src/slice/mod.rs 2d00b27 Update library/core/src/slice/mod.rs 03b69bb Update library/core/src/slice/mod.rs a0e8389 Update library/core/src/slice/mod.rs 2e4a130 Update library/core/src/slice/mod.rs 6d683af Update library/core/src/slice/mod.rs e5aac6d Update library/core/src/slice/mod.rs 5fcd5f1 `then be` -> `be` based on feedback from @ibraheemdev b645984 Improve `select_nth_unstable` documentation clarity 0cd2052 Revert "Auto merge of rust-lang#134330 - scottmcm:no-more-rvalue-len, r=matthewjasper" 53db592 Add references to the IEEE functions for `float_next_up_down` 254b5a5 Stabilize `float_next_up_down` ce067fc Fix import of pipe in kernel_copy.rs d46e787 Move `std::pipe::*` into `std::io` c1cb743 Clarify note in `std::sync::LazyLock` example baf95f5 fix typo in library/alloc/src/sync.rs 3cb210e Add missing safety descriptions to Arc's 'from_raw','increment_strong_count','decrement_strong_count' 6ae3855 Adjust syntax e68b17a Less unsafe in `dangling`/`without_provenance` 7f634a8 fix typo in typenames of pin documentation c8f5cf5 intrinsics: deprecate calling them via the unstable std::intrinsics path abf1e47 add comments explaining main thread identification f1de75c std: lazily allocate the main thread handle 1b33103 Revert "Remove the Arc rt::init allocation for thread info" d18398a Update ReadDir::next in std::sys::pal::unix::fs to use `&raw const (*ptr).field` instead of `ptr.offset(...).cast()`. 6f20552 Update compiler-builtins to 0.1.143 d84c54a Rename `pos` to `position` 271650f Convert `struct FromBytesWithNulError` into enum a487c5b Enforce syntactical stability of const traits in HIR 29b2d16 Update compiler-builtins to 0.1.141 9c64fdb Add another `Vec::splice` example fa08333 avoid nesting the user-defined main so deeply on the stack 614c89e use a single large catch_unwind in lang_start 474f53b uefi: helpers: Introduce OwnedDevicePath b22229f path: Move is_absolute check to sys::path 2d8f9b4 Update the explanation for why we use box_new in vec! 1088f7b Add #[inline] to copy_from_slice 7266d53 Add inherent versions of MaybeUninit methods for slices be0e6e7 Make UniqueRc invariant for soundness 279d703 update and clarify StructuralPartialEq docs 25e847a Use `NonNull::without_provenance` within the standard library f920561 Initial fs module for uefi 5a54af2 Improve the safety documentation on new_unchecked 1d2a381 Update a bunch of library types for MCP807 dac14f2 alloc: remove unsound `IsZero` for raw pointers a0edfb7 Fix `proc_macro::quote!` for raw ident 2b3bfbd Append `TokenTree` with `ToTokens` in `proc_macro::quote!` 7d3dc06 Rename the internal simpler `quote` macro to `minimal_quote` 7e2ae35 Used pthread name functions returning result for FreeBSD and DragonFly 183510d Fix ptr::from_ref documentation example comment 9e6ca7c Improve prose around `as_slice` example of IterMut 6a5b462 fmt ed2fd8a update cfg(bootstrap) fbd1be8 update version placeholders 0826751 Remove some unnecessary `.into()` calls 1b35f3c add missing provenance APIs on NonNull 62a1acb More compelling env_clear() examples ab5cbd7 Implement Condvar::wait_timeout for targets without threads ebc3a4e Impl String::into_chars 91d36bc Avoid naming variables `str` f56a9c3 [generic_assert] Constify methods used by the formatting system fddd801 Add support for wasm exception handling to Emscripten target a5df901 chore: remove redundant words in comment 5847b30 Add doc aliases for `libm` and IEEE names 19f81f0 Mark `slice::reverse` unstably const 638e950 Clarified the documentation on core::iter::from_fn and core::iter::successors 6d5a15f library: fix adler{-> 2}.debug f7fdb20 add regression test for unsound Flatten/FlatMap specialization 0e95294 do not in-place-iterate over flatmap/flatten 82a601f Fix UWP build d6617cb Bump backtrace to 0.3.75 b7b61c0 sync to actual dep verions of backtrace a5f78e0 turn rustc_box into an intrinsic efd72ae core: use public method instead of instrinsic c576f41 core: improve comments 863f925 core: implement `bool::select_unpredictable` 48b3399 Switch rtems target to panic unwind e7d76d9 path in detail ee6faf1 Move some things to `std::sync::poison` and reexport them in `std::sync` e861eac Bump backtrace to rust-lang/backtrace-rs@4d7906b b197ed6 Try to write the panic message with a single `write_all` call 78cb87a fix doc for missing Box allocator consistency 5185280 Remove qualification of `std::cmp::Ordering` in `Ord` doc 48e065a std::fs::DirEntry.metadata(): prefer use of lstat() on Emscripten 4b5abfd Avoid use of LFS64 symbols on Emscripten 9489757 char to_digit: avoid unnecessary casts to u64 f75f6a2 Remove allowing static_mut_refs lint 7004071 Tidy up bigint mul methods 8dc10e5 fix doc for read write unaligned in zst operation 563f7d3 Avoid short writes in LineWriter 5026505 ptr docs: make it clear that we are talking only about memory accesses abc910a Make slice::as_flattened_mut unstably const 7b5e590 rename typed_swap → typed_swap_nonoverlapping d690fe4 stabilize const_swap b4d8b19 fix: typos 09ca9e3 Fix sentence fragment in `pin` module docs b67a358 docs: inline `alloc::ffi::c_str` types to `alloc::ffi` 6e5d5ba Fix compilation issues on other unixes 7c42423 Eliminate redundant statx syscalls 866418b Unify fs::copy and io::copy 5e3c742 Update `compiler-builtins` to 0.1.140 a0798b7 Update library/alloc/tests/sort/tests.rs c240617 Fix typos 929ca0c Override `carrying_mul_add` in cg_llvm 17ab595 Move `{widening, carrying}_mul` to an intrinsic with fallback MIR 326447d Fix mistake in windows file open 94e1781 Windows: Use WriteFile to write to a UTF-8 console e70a5c6 ptr::copy: fix docs for the overlapping case 48cf112 Fix renaming symlinks on Windows 6927f91 docs: inline `core::ffi::c_str` types to `core::ffi` 41de340 docs: inline `std::ffi::c_str` types to `std::ffi` 172cbee unwinding: bump version to fix asm 229451f docs: update code example for Iterator#rposition fc22b41 Use scoped threads in `std::sync::Barrier` examples f011d1f Fix forgetting to save statx availability on success a73fc08 Specify only that duplicates are discarded, not the order. da026ab Document collection `From` and `FromIterator` impls that drop duplicate keys. 9adb459 Add 'into_array' conversion destructors for 'Box', 'Rc', and 'Arc'; 050023d Impl FromIterator for tuples with arity 1-12 0f368dd Fix formatting 7c549af stabilize const_alloc_layout dcf5358 chore: fix typos 9af0ae9 Windows: Use FILE_ALLOCATION_INFO for truncation 3e8e636 Bump `stdarch` 4cf5da8 core: fix const ptr::swap_nonoverlapping when there are pointers at odd offsets in the type ce0e54d Fixes safety docs for `dyn Any + Send {+ Sync}` 0d4114a Use `#[derive(Default)]` instead of manually implementing it fe8f336 Revert "Auto merge of rust-lang#130766 - clarfonthey:stable-coverage-attribute, r=wesleywiser" 82a9ed2 Implement `PointerLike` for `isize`, `NonNull`, `Cell`, `UnsafeCell`, and `SyncUnsafeCell`. 988584e docs: `transmute<&mut T, &mut MaybeUninit<T>>` is unsound when exposed to safe code 0a053fb docs: Permissions.readonly() also ignores root user special permissions 5ac0967 cargo update 371f8b2 Delete `Rvalue::Len` 2c291ec Asserts the maximum value that can be returned from `Vec::len` e2c9a84 Document `PointerLike` implementation restrictions. 55ea001 Use `&raw` for `ptr` primitive docs f68acbc Add `is_ascii` function optimized for x86-64 for [u8] 51a50a0 Add new implementation benchmark 7f4fd22 Document CTFE behavior of methods that call is_null f1fc46c Correctly document is_null CTFE behavior. 85d170a Win: rename: Use offset_of! in struct size calculation c1a5c06 Win: Remove special casing of the win7 target for `std::fs::rename` f7c9244 Win: Add test cases for renaming a directory while the target file is opened and for renaming over a non-empty directory 0a5aaaf Win: Use `FILE_RENAME_FLAG_POSIX_SEMANTICS` for `std::fs::rename` if available 7f5885d Less unwrap() in documentation ce79cee Improve prose around into_slice example of IterMut b531715 Improve prose around `as_slice` example of Iter 577d653 Improve prose around basic examples of Iter and IterMut 56e449c Abstract `ProcThreadAttributeList` into its own struct d11de7d fix `PointerLike` docs 12b1b9b unimplement `PointerLike` for trait objects ba4b32a split up `#[rustc_deny_explicit_impl]` attribute 87f046e remove reference to dangling from slice::Iter 4760e33 mri: add track_caller to thread spawning methods for better backtraces 2f3db85 fix typos in the example code in the doc comments of `Ipv4Addr::from_bits()`, `Ipv6Addr::from_bits()` & `Ipv6Addr::to_bits()` 7c14ce2 Improve documentation of `element_offset` and related methods 3f1b9ed Rename `elem_offset` to `element_offset` dbcfe5e docs: Mention `spare_capacity_mut()` in `Vec::set_len` 4ec77a4 build: Update libc version 7fd3f03 fix typo in ptr/mod.rs 270ee92 Stabilize `#[diagnostic::do_not_recommend]` e9ba48f Use field init shorthand where possible 03fc354 fix(LazyCell): documentation of get[_mut] was wrong a0c4457 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 8411955 Fix typo in uint_macros.rs 45a13cd remove obsolete comment and pub(super) visibility b148190 remove bounds from vec and linkedlist ExtractIf 2ef2a55 Add a range argument to vec.extract_if 01153a3 Stabilize #[coverage] attribute 8d53a00 Remove `rustc::existing_doc_keyword` lint. adaf1bb Move `doc(keyword = "while")`. a25cc81 rustdoc-search: let From and Into be unboxed cf0742f Replace i32 by char in `split_at` & `_unchecked` e733581 Add clarity to the "greater" of `VecDeque::insert` b799c0a Replace i32 by char to add clarity 7c4d9cf Add value accessor methods to `Mutex` and `RwLock` 3378a35 std::net: Solaris supports `SOCK_CLOEXEC` as well since 11.4. 92eb12c UniqueRc: platform-specific AsFd/Handle/etc impls to mirror Rc 15b3fc6 UniqueRc: PinCoerceUnsized and DerefPure fb6a31f UniqueRc: comparisons and Hash 1c02f23 UniqueRc: Add more trait impls. 80cf707 Remove support for specializing ToString outside the standard library fa9906d Correct spelling of CURRENT_RUSTC_VERSION 1c45c41 Add documentation for anonymous pipe module 56cb0d4 feat: clarify how to use `black_box()` 178075d Update includes in '/library/core/src/error.rs'; 2ba2e5a Fix building `std` for Hermit after `c_char` change b2f7fe9 Fix `Path::is_absolute` on Hermit 9b0bcbd Fix typos in docs on provenance 035835d Add unwrap_unsafe_binder and wrap_unsafe_binder macro operators 6488538 Switch inline(always) in core/src/fmt/rt.rs to plain inline 057441a Reword prelude for AsyncFn stabilization 6cf6efa Stabilize async closures e14f1a6 Remove consteval note from <*mut T>::align_offset docs. ad5d6d3 Stabilize the Rust 2024 prelude 3689a95 Forbid unsafe_op_in_unsafe_fn in hurd-specific os and sys files edab76c Move some alloc tests to the alloctests crate 680b18f control libunwind linkage mode via `crt-static` on gnullvm targets 968d088 Change `GetManyMutError` to match T-libs-api decision 6a874da Add references to the specific ABI documents cd34d19 Remove l4re from the unsigned char operating system list 978bb9e De-duplicate and improve definition of core::ffi::c_char ff91a70 Add a note saying that `{u8,i8}::from_{be,le,ne}_bytes` is meaningless ea25199 stabilize const_nonnull_new 804d582 Remove rustc_const_stable attribute on const NOOP 97c1141 Add libc funcitons only for wasm32-wasip1-threads. b61a080 Fix compilation for wasm32-wasip1 (without threads). 4da0710 Use UNIX thread_local implementation for WASI. 0a803ac Run TLS destructors for wasm32-wasip1-threads aed6b94 Downgrade cc 452f956 Run `cargo update` and update licenses dafdb58 chore: Improve doc comments 9ad9917 Refactor ReadDir into a state machine bdc421a wasi/fs: Improve stopping condition for <ReadDir as Iterator>::next 59a10c7 docs: better examples for `std::ops::ControlFlow` bc70bfd Expand home_dir docs b27dcfc Add doc alias 'then_with' for `then` method on `bool` f84d2b7 Adds new intrinsic declaration f2934d1 Define acronym for thread local storage 542dd8a Add a `collect_into` tuple test case c726326 Don't impl Extend for 13-tuples 59c6a1c Simplify documentation for Extend impl for tuples 0bbe893 Add Extend impls for tuples of arity 1 through 12 b371f64 Unbreak tidy 25e1df6 Stabilize `std::io::ErrorKind::QuotaExceeded` 9e8a160 Stabilize `std::io::ErrorKind::CrossesDevices` bddc90a Access members of `FormattingOptions` directly instead of via getters/setters 5974a43 Removed constness for methods receiving a `&mut` parameter 2d7072e Added better reason for exposing `flags` and `get_flags` as unstable 8a6c970 Formatted d037750 Refactored FormattingOptions to use a bitmask for storing flags 3bfd3e3 Revert "Turned public+unstable+hidden functions into private functions" f76d0af Turned public+unstable+hidden functions into private functions 0dad34e Made all fns const bf38923 impl Default for fmt::FormattingOptions 999dfb0 Fixed copy+paste error in comment 7d3b6e5 fmt::FormattingOptions: Renamed `alignment` to `align` 3a545cb Formatter::with_options: Use different lifetimes 6848163 Fixed another broken test 9cf4ef3 Added struct `fmt::FormattingOptions` 1907032 Formatter: Access members via getter methods wherever possible ea5600d Stabilize noop_waker 3d2e59f Improve documentation 49e7d6b Reformat Python code with `ruff` ed541f4 Improve comments for the default backtrace printer 5724d53 clarify simd_relaxed_fma non-determinism 72447a1 Teach rust core about Xtensa VaListImpl and add a custom lowering of vaarg for xtensa. df8010c Rename `core_pattern_type` and `core_pattern_types` lib feature gates to `pattern_type_macro` 289a225 Allow fn pointers comparisons lint in library 43009ea Update `NonZero` and `NonNull` to not field-project (per MCP807) 57eb0c5 Add `core::arch::breakpoint` and test 58cc828 a release operation synchronizes with an acquire operation 597435c Update the definition of `borrowing_sub` 58ade88 stabilize const_{size,align}_of_val fecd61a ./x miri: fix sysroot build cd42b05 stabilize const_collections_with_hasher and build_hasher_default_const_new 16d0a8b Match simd_relaxed_fma documentation to fmuladd intrinsic 8bcd888 Add simd_relaxed_fma intrinsic 42fdee3 Fix `f16::midpoint` const feature gate cdd440d Use c"lit" for CStrings without unwrap 8d8b195 Stabilize `const_maybe_uninit_write` 962ffc4 Fix docs for '<[T]>::as_array'; 43ccbef Stabilize `ptr::fn_addr_eq` 3d02196 rustc_allow_const_fn_unstable is not used in proc_macro 8bc24c8 get rid of a bunch of unnecessary rustc_const_unstable 057ed4c remove a whole bunch of unnecessary const feature gates 370442e add isatty alias for is_terminal 85106bd Stabilize unsigned `num_midpoint` feature a84f5e1 Mark `slice::copy_from_slice` unstably const f5eb807 Fix chaining `carrying_add`s 84191e9 add test for bytewise ptr::swap of a pointer 11d662a move swap_nonoverlapping constness to separate feature gate eaa284c move slice::swap_unchecked constness to slice_swap_unchecked feature gate 815e486 Add diagnostic item for `std::ops::ControlFlow` 1ca41f8 update link to "C++ Exceptions under the hood" blog 545f874 fix: fix codeblocks in `PathBuf` example b322e5f fix: hurd build, stat64.st_fsid was renamed to st_dev fd83854 std: clarify comments about initialization 3ce6669 std: refactor `pthread`-based synchronization 4d937e0 bump hashbrown version 50b4bbc Fill in a `BTreeSet::entry` example 38fd18a Add a tracking issue for `btree_set_entry` 9378cd1 Add `BTreeSet` entry APIs to match `HashSet` 9c3a093 Implement code review a66dcf5 thread::available_parallelism for wasm32-wasip1-threads a1570ee changes old intrinsic declaration to new declaration ccb9050 Fix and undeprecate home_dir() f9ebed6 refine mir debuginfo docs 39ab79c Doc comment custom MIR debuginfo. de77086 Stabilize `extended_varargs_abi_support` 61a5a18 update cfgs 5a6ddd1 replace placeholder version 7cd9d04 Also use zero when referencing to capacity or length 4304f34 Use consistent wording in docs, use zero instead of 0 3bd2839 Fix typos in pin.rs 37c6bef Share inline(never) generics across crates 46c519a fmt b867ade aix: create shim for lgammaf_r 161d903 Add '<[T]>::as_array', '<[T]>::as_mut_array', '<*const [T]>::as_array', and '<*mut [T]>::as_mut_array' conversion methods; 6d27ab2 Remove one stray space. 232b7f6 Update chown help with a link and adding cap warning 98568ee Expand std::os::unix::fs::chown() doc with a warning 2e391db Add missing code examples on `LocalKey` ff271d9 Make profiler_builtins `#![no_core]` instead of just `#![no_std]` 0bf1cee Remove unnecessary `#![allow(unused_features)]` 83411be Sort and separate lint/feature attributes in `profiler_builtins` fa49342 std: update internal uses of `io::const_error!` a6f3f18 std: expose `const_io_error!` as `const_error!` ef0c227 Constify Drop and Destruct f94853d miri: disable test_downgrade_observe test on macOS 5403e91 Shorten the `MaybeUninit` `Debug` implementation 4d51914 Support ranges in `<[T]>::get_many_mut()` cf313e2 btree: add `{Entry,VacantEntry}::insert_entry` a311198 std::thread: avoid leading whitespace in some panic messages 726a134 Added a doc test for std::path::strip_prefix git-subtree-dir: library git-subtree-split: fb940b2
1 parent 8fe8f56 commit 6a97897

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)