Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
10000 commits
Select commit Hold shift + click to select a range
8395385
Implement `ptr_cast_array`
scottmcm Jul 26, 2025
a862a60
Use `cast_array` in core
scottmcm Jul 26, 2025
d862f57
cargo update
invalid-email-address Jul 27, 2025
2bc409b
libm: Update for new warn-by-default clippy lints
tgross35 Jul 26, 2025
2f73282
Rollup merge of #141840 - ChrisDenton:noempty, r=ChrisDenton
jhpratt Jul 27, 2025
7fac5a8
Rollup merge of #144422 - itf:itf-patch-2-1, r=ChrisDenton
jhpratt Jul 27, 2025
7feafa5
Avoid inlining `floor` into `rem_pio2`
quaternic Jul 27, 2025
2420a48
feat: updated Argument<T> type for functional compatibility with other
madhav-madhusoodanan Jul 27, 2025
8447765
chore: handling the case where --generate-only flag is passed
madhav-madhusoodanan Jul 27, 2025
7276e52
constify with_exposed_provenance
RalfJung Jul 27, 2025
9dae249
Implement `floor` and `ceil` in assembly on `i586`
folkertdev Jul 27, 2025
6b8f80e
Remove `no-asm` gating when there is no alternative implementation
tgross35 Jul 25, 2025
f2668d2
Auto merge of #144225 - purplesyringa:unwinding-intrinsics, r=nikic
bors Jul 27, 2025
f03e04d
Rollup merge of #144471 - tgross35:compiler-builtins-asm, r=Amanieu
matthiaskrgr Jul 27, 2025
c289dd0
Auto merge of #144556 - matthiaskrgr:rollup-aayo3h5, r=matthiaskrgr
bors Jul 28, 2025
da257ec
Remove `[T]::array_chunks(_mut)`
scottmcm Jul 1, 2025
372e1f8
Rollup merge of #144072 - usamoi:docs, r=Mark-Simulacrum
matthiaskrgr Jul 28, 2025
f5bbe80
Rollup merge of #144399 - bjorn3:stdlib_tests_separate_packages, r=Ma…
matthiaskrgr Jul 28, 2025
407bf08
Rollup merge of #144472 - okaneco:char_bound, r=Mark-Simulacrum
matthiaskrgr Jul 28, 2025
5735eb9
fixed typo chunks->as_chunks
xonx4l Jul 28, 2025
aabe3f3
Add `core::mem::DropGuard`
yoshuawuyts Jul 21, 2025
809d5dd
fix `Atomic*::as_ptr` wording
usamoi Jul 28, 2025
9051548
thread name in stack overflow message
joboet Jul 26, 2025
6fa579b
Auto merge of #144524 - rust-lang:cargo_update, r=clubby789
bors Jul 28, 2025
bfe154b
Auto merge of #143289 - scottmcm:remove-array-chunks, r=jhpratt
bors Jul 29, 2025
8ed1e31
Rollup merge of #144236 - yoshuawuyts:drop-guard, r=Mark-Simulacrum
Zalathar Jul 29, 2025
1275454
Rollup merge of #144539 - RalfJung:const_with_exposed_provenance, r=o…
Zalathar Jul 29, 2025
d0acc19
Rollup merge of #144575 - xonx4l:patch-6, r=scottmcm
Zalathar Jul 29, 2025
0603f87
Rollup merge of #144582 - usamoi:docs, r=RalfJung
Zalathar Jul 29, 2025
624645d
clearer wording for `unsafe` code
gewitternacht Jul 29, 2025
80df32d
Use GitHub app for authenticating sync workflows
Kobzol Jul 29, 2025
bc77ae8
Switch to using a GH app for authenticating sync PRs
Kobzol Jul 29, 2025
bc089b3
clean up existing poison files
connortsui20 Jul 23, 2025
42d8ab4
add `nonpoison::mutex` implementation
connortsui20 Jul 23, 2025
e2f735a
reorder mutex tests
connortsui20 Jul 23, 2025
3494607
add nonpoison and poison mutex tests
connortsui20 Jul 23, 2025
7ae281e
add extra drop, panic, and unwind tests
connortsui20 Jul 29, 2025
207afb9
Rollup merge of #144022 - connortsui20:sync_nonpoison, r=tgross35
Zalathar Jul 29, 2025
84f9da4
Rollup merge of #144167 - zachs18:rangebounds-not-unsized-reason, r=t…
Zalathar Jul 29, 2025
1124ac6
Rollup merge of #144500 - joboet:thread-name-stack-overflow, r=ChrisD…
Zalathar Jul 29, 2025
038f313
Fix typo in `DropGuard` doc
lucaswerkmeister Jul 29, 2025
83cab05
LoongArch64 LSX fast-path for `str.contains(&str)`
heiher Jun 24, 2025
bc6be7b
Rollup merge of #144634 - lucaswerkmeister:patch-1, r=lqd
Zalathar Jul 29, 2025
04743f1
cleanup: Trim trailing whitespace
tgross35 Jul 29, 2025
6721eb1
ci: Simplify tests for verbatim paths
tgross35 Jul 29, 2025
8690b14
Fix Ord, Eq and Hash implementation of panic::Location
orlp Jul 26, 2025
2f8dad2
Auto merge of #144393 - heiher:str-contains-lsx, r=tgross35
bors Jul 29, 2025
a003f50
Rollup merge of #144510 - orlp:fix-location-ord, r=ibraheemdev
jhpratt Jul 29, 2025
af745a4
Auto merge of #144658 - jhpratt:rollup-jdzhz27, r=jhpratt
bors Jul 29, 2025
a3b663f
const-eval: full support for pointer fragments
RalfJung Jul 17, 2025
df69b7d
`AlignmentEnum` should just be `repr(usize)` now
scottmcm Jul 30, 2025
91c4f13
ci: Switch to strongly typed directives
tgross35 Jul 30, 2025
d7a266c
ci: Don't print output twice in `ci-util`
tgross35 Jul 30, 2025
618cdf8
ci: Commonize the way `PrInfo` is loaded from env
tgross35 Jul 30, 2025
4011c52
ci: Add a way to run `libm` tests that would otherwise be skipped
tgross35 Jul 30, 2025
62c925f
ci: Set pipefail before running ci-util
tgross35 Jul 30, 2025
b7e8940
Simplify the configuration for no-panic
tgross35 Jul 30, 2025
cb5ac93
Implement push_mut
balt-dev Jun 17, 2025
af568ee
Stabilize strict_overflow_ops
nxsaken Jul 30, 2025
1be3885
Prepare for merging from rust-lang/rust
invalid-email-address Jul 31, 2025
1bfa106
Merge ref '32e7a4b92b10' from rust-lang/rust
invalid-email-address Jul 31, 2025
f4d1221
Rollup merge of #135975 - balt-dev:master, r=tgross35
Zalathar Jul 31, 2025
6db2dc3
std_detect: Linux 6.16 support for RISC-V
a4lg Jul 31, 2025
371ea17
Make `libtest::ERROR_EXIT_CODE` const public to not redefine it in ru…
GuillaumeGomez Jul 22, 2025
feb3eae
Rollup merge of #144297 - GuillaumeGomez:ERROR_EXIT_CODE, r=Amanieu
samueltardieu Jul 31, 2025
158ca24
Rollup merge of #144721 - a4lg:riscv-hwprobe-linux-6.16, r=Amanieu
samueltardieu Jul 31, 2025
c578f21
uefi: Use slice equality rather than `memcmp`
tgross35 Jul 31, 2025
6fee60e
Use `core` via `rustc-std-workspace-core` in `library/panic*`
tgross35 Jul 30, 2025
fc7b60d
Remove `std`'s dependency on `compiler-builtins`
tgross35 Jul 30, 2025
3e21361
Rollup merge of #144683 - tgross35:builtins-via-std-workspace, r=bjor…
jhpratt Aug 1, 2025
46d7619
Constify additional Result functions
Randl Aug 1, 2025
64e8ed9
Fix safety comment for new_unchecked in niche_types
nilehmann Aug 1, 2025
b8f0f94
feat: implement `hash_map!` macro
stifskere Aug 1, 2025
d97f923
Rollup merge of #143771 - Randl:const-result, r=tgross35
samueltardieu Aug 2, 2025
d71da41
Rollup merge of #144185 - purplesyringa:poisoning-wording, r=Amanieu
samueltardieu Aug 2, 2025
50d1f58
Rollup merge of #144478 - joshtriplett:doc-code-formatting-prep, r=Am…
samueltardieu Aug 2, 2025
d52b3bb
Rollup merge of #144797 - nilehmann:safety-comment-niche, r=Noratrieb
samueltardieu Aug 2, 2025
17bec4c
use gcc 15 as the linker on loongarch
folkertdev Aug 2, 2025
b228233
Change visibility of Args new function
chotchki Aug 2, 2025
b2b9d3e
cargo update
invalid-email-address Aug 3, 2025
cde9c62
feat: Added another variant of the Constraint enum
madhav-madhusoodanan Aug 2, 2025
090949b
Merge pull request #1889 from rust-lang/rustc-pull
folkertdev Aug 3, 2025
e5f3f9c
rename rust_panic_without_hook
Kivooeo Aug 3, 2025
90bd755
removed gate
Kivooeo Aug 3, 2025
61c3e07
remove rust_ prefixes
Kivooeo Aug 3, 2025
f470dd4
Use `as_array` in PartialEq for arrays
scottmcm Aug 3, 2025
2b47c30
Rollup merge of #144070 - stifskere:feat/macros/hash_map, r=Noratrieb
samueltardieu Aug 3, 2025
21e872c
Rollup merge of #144843 - rust-lang:cargo_update, r=clubby789
samueltardieu Aug 3, 2025
2b97240
fix broken doc section link in `poison.rs`
connortsui20 Aug 3, 2025
ed3c994
add poisoning documentation to `LazyCell`
connortsui20 Aug 3, 2025
d194960
add poisoning documentation to `LazyLock`
connortsui20 Aug 3, 2025
78f8393
remove gate
Kivooeo Aug 3, 2025
2be5456
Rollup merge of #142205 - paolobarbolini:const_swap_with_slice-impl, …
Zalathar Aug 4, 2025
bf1b45a
Rollup merge of #144188 - joshtriplett:available-parallelism, r=Mark-…
Zalathar Aug 4, 2025
a3c6369
Rollup merge of #144667 - scottmcm:alignment-is-usize, r=tgross35
Zalathar Aug 4, 2025
4ed226c
Rollup merge of #144853 - Kivooeo:rust_-cleanup, r=Mark-Simulacrum
Zalathar Aug 4, 2025
f3058cb
remove feature gate
Kivooeo Aug 4, 2025
6a85584
remove begin prefix
Kivooeo Aug 4, 2025
db0afc5
Add new `test::print_merged_doctests_times` used by rustdoc to displa…
GuillaumeGomez Aug 4, 2025
2b1046a
std: sys: io: io_slice: Add UEFI types
Ayush1325 Jul 20, 2025
4f5ed30
Correct the use of `must_use` on btree::IterMut
JonathanBrouwer Aug 4, 2025
6683196
Rollup merge of #144852 - Kivooeo:rename-panic, r=m-ou-se
samueltardieu Aug 5, 2025
f555834
Rollup merge of #144867 - scottmcm:more-as-array, r=chenyukang
samueltardieu Aug 5, 2025
7112d06
Rollup merge of #144872 - connortsui20:once-poison-docs, r=Amanieu
samueltardieu Aug 5, 2025
ff24035
feat: cleaned the IntrinsicType struct and associated functions.
madhav-madhusoodanan Aug 5, 2025
5fbf176
chore: moved chunk_info to `common` and code cleanup
madhav-madhusoodanan Aug 5, 2025
c579bca
Merge pull request #1895 from madhav-madhusoodanan/intrinsic-test-int…
folkertdev Aug 5, 2025
a73145d
use `IntoIterator` for the `add_flags` methods
folkertdev Aug 5, 2025
464dc21
Stabilize `core::iter::chain`
rossmacarthur Aug 5, 2025
98d7628
compiler-builtins: plumb LSE support for aarch64 on linux
pmur Aug 4, 2025
00a2512
Dynamically enable LSE for aarch64 rust provided intrinsics
pmur Jul 31, 2025
2ef7fac
Fix description of unsigned `checked_exact_div`
tautschnig Aug 5, 2025
687efdd
Add `u8`-as-ASCII methods to `core::ascii::Char`
ChaiTRex Jul 4, 2025
01af052
Add `std::ascii::Char` `MIN` and `MAX` constants
ChaiTRex Jul 5, 2025
c00829b
Renamed `isolate_most_least_significant_one` functions
okaneco Aug 5, 2025
7fdeeea
add code example showing that file_prefix treats dotfiles as the name…
the8472 Aug 5, 2025
1430379
configure: Use `CARGO_CFG_*_{F16,F128}` rather than invoking rustc
tgross35 Aug 5, 2025
39e1791
`File::set_times`: Remove `write(true)` from the example so it works …
joshtriplett Aug 5, 2025
3092f12
`File::set_times`: Add documentation about setting directory timestamps
joshtriplett Aug 5, 2025
aae162a
Fix some doc links for intrinsics
ehuss Aug 6, 2025
ba07f05
replace version placeholder
BoxyUwU Aug 4, 2025
6ee95c9
Rollup merge of #144836 - chotchki:patch-1, r=tgross35
Kobzol Aug 6, 2025
9593fbf
Rollup merge of #144926 - JonathanBrouwer:fix-mustuse, r=cuviper
Kobzol Aug 6, 2025
2bc6d5e
Rollup merge of #144971 - okaneco:rename_isolate_ones, r=joshtriplett
Kobzol Aug 6, 2025
4ff8a80
Rollup merge of #144978 - ehuss:intrinsic-doc-links, r=scottmcm
Kobzol Aug 6, 2025
1186a72
Change stdlib float tests to account for miri nondet floats.
LorrensP-2158466 Jul 13, 2025
9f5da6e
tidy
BoxyUwU Aug 6, 2025
faa7ded
Reword documentation for `set_times` to clarify directory handling
joshtriplett Aug 6, 2025
7a5c36a
Rollup merge of #144861 - Kivooeo:payload-as-str-stabilization, r=Chr…
GuillaumeGomez Aug 6, 2025
3660653
Rollup merge of #144972 - the8472:file-prefix-docs, r=joshtriplett
GuillaumeGomez Aug 6, 2025
fe21658
Rollup merge of #144975 - joshtriplett:file-times-dir, r=jhpratt
GuillaumeGomez Aug 6, 2025
b2b2255
Optimize `char::is_alphanumeric`
Kmeakin Aug 6, 2025
36bf865
Print thread ID in panic message if thread name is unknown
tgross35 Sep 11, 2023
860d702
Auto merge of #115746 - tgross35:unnamed-threads-panic-message, r=cuv…
bors Aug 7, 2025
2558253
Rollup merge of #138689 - jedbrown:jed/nvptx-target-feature, r=ZuseZ4
Zalathar Aug 7, 2025
97979ee
Rollup merge of #140267 - jogru0:control_flow, r=dtolnay
Zalathar Aug 7, 2025
0fe2dd8
Rollup merge of #143906 - LorrensP-2158466:miri-float-nondet-foreign-…
Zalathar Aug 7, 2025
ed1cd33
Rollup merge of #144133 - oli-obk:stabilize-const-type-id, r=lcnr
Zalathar Aug 7, 2025
a43ec7e
Rollup merge of #144682 - nxsaken:strict_overflow_ops, r=Mark-Simulacrum
Zalathar Aug 7, 2025
9224939
Auto merge of #144997 - BoxyUwU:bootstrap_bump, r=Mark-Simulacrum
bors Aug 7, 2025
4874ec9
doc(library): Fix Markdown in `Iterator::by_ref`.
Hywan Aug 7, 2025
71cf0ae
Fix doc comment of File::try_lock and File::try_lock_shared
ulrichstark Aug 7, 2025
ceef639
Auto merge of #145043 - Zalathar:rollup-3dbvdrm, r=Zalathar
bors Aug 7, 2025
c6a0d02
Clean up some resolved test regressions of const trait removals in std
ShoyuVanilla Aug 7, 2025
9e09de0
Rollup merge of #144705 - pmur:murp/aarch64-lse, r=Amanieu
tgross35 Aug 8, 2025
b6e924e
Rollup merge of #144900 - Kivooeo:unsigned_signed_diff-stabilize, r=d…
tgross35 Aug 8, 2025
65edbc5
Rollup merge of #144903 - Kivooeo:panic_handler-is-not-begin, r=m-ou-se
tgross35 Aug 8, 2025
f44acd9
Rollup merge of #144974 - tgross35:update-builtins, r=tgross35
tgross35 Aug 8, 2025
e817695
Rollup merge of #145045 - Hywan:doc-library-iterator-by_ref, r=Guilla…
tgross35 Aug 8, 2025
e3a4f68
Rollup merge of #145046 - ulrichstark:master, r=tgross35
tgross35 Aug 8, 2025
055d635
Consolidate abs tests
rocurley Jul 14, 2025
145a843
Consolidate signum tests
rocurley Jul 14, 2025
fddae8c
Consolidate is_positive tests
rocurley Jul 14, 2025
a4e4853
Consolidate is_sign_negative tests
rocurley Aug 4, 2025
f73dda0
Consolidate test_next_up
rocurley Aug 4, 2025
f5bf51f
Consolidate test_next_down
rocurley Aug 4, 2025
2f54d34
Consolidate sqrt_domain tests
rocurley Aug 4, 2025
8ff9549
Consolidate clamp tests
rocurley Aug 4, 2025
5cd1589
Consolidate total_cmp tests
rocurley Aug 4, 2025
d05c57a
Hoist zero and one out into TestableFloat
rocurley Aug 8, 2025
fc870c1
Rollup merge of #144909 - GuillaumeGomez:extend-libtest-for-merged-do…
Zalathar Aug 8, 2025
7d15d80
Rollup merge of #145042 - heiher:stdarch-push, r=folkertdev
Zalathar Aug 8, 2025
420e225
Rollup merge of #145057 - ShoyuVanilla:const-trait-tests-cleanup, r=p…
Zalathar Aug 8, 2025
a71ec16
Auto merge of #145077 - Zalathar:rollup-0k4194x, r=Zalathar
bors Aug 8, 2025
98f973a
Fix wasm target build with atomics feature
Spxg Aug 8, 2025
89362ca
Revert "Rollup merge of #143906 - LorrensP-2158466:miri-float-nondet-…
Kobzol Aug 8, 2025
3e84ba2
Rollup merge of #144192 - RalfJung:atomicrmw-ptr, r=nikic
tgross35 Aug 8, 2025
7b8e489
Auto merge of #145126 - tgross35:rollup-6w87usd, r=tgross35
bors Aug 8, 2025
b5ac431
Rollup merge of #144923 - rocurley:float_tests_refactor_3, r=tgross35
Zalathar Aug 9, 2025
36871ff
Rollup merge of #145027 - Kmeakin:km/optimize-char-is-alphanumeric, r…
Zalathar Aug 9, 2025
f82e30c
Rollup merge of #145096 - Spxg:w/wasm_atomic, r=tgross35
Zalathar Aug 9, 2025
d451ec1
Replace unsafe function with safe alternative
ChrisDenton Aug 9, 2025
e06e0ed
Stabilize feature
Kivooeo Aug 8, 2025
29c83f4
`{BTree,Hash}Map`: add "`Entry` API" section heading
ada4a Aug 9, 2025
0cf20bd
`HashMap`: also add "Usage with custom key types" heading
ada4a Aug 9, 2025
52751e9
Avoid abbreviating "numerator" as "numer", to allow catching typo "nu…
joshtriplett Aug 9, 2025
1e5ba4d
cargo update
invalid-email-address Aug 10, 2025
b61bc0d
Let forward_ref_* macros accept multiple attributes, and require attr…
clarfonthey Jul 14, 2025
5235f7a
Constify remaining operators
clarfonthey Jul 15, 2025
e6bca6d
Rollup merge of #145135 - Kivooeo:stabilize-duration_constructors_lit…
Zalathar Aug 10, 2025
7029f55
Rollup merge of #145162 - ada4a:hash_and_btree_map-add-entry-section,…
Zalathar Aug 10, 2025
59ee82e
Rollup merge of #145150 - ChrisDenton:inherit, r=Mark-Simulacrum
jhpratt Aug 10, 2025
44db1e4
Remove unnecessary parentheses in `assert!`s
estebank Aug 10, 2025
d88aefd
mention `Hash` and `Ord`; refine description of `derive`
gewitternacht Aug 10, 2025
9e39c75
cfg_select: Support unbraced expressions
joshtriplett Aug 10, 2025
f2e76f8
Rollup merge of #143949 - clarfonthey:const-arith-ops, r=Amanieu
Zalathar Aug 11, 2025
1f8bb9f
Rollup merge of #144330 - gewitternacht:document-clone-eq, r=Amanieu
Zalathar Aug 11, 2025
893580e
Rollup merge of #144350 - Ayush1325:uefi-io, r=tgross35,nicholasbishop
Zalathar Aug 11, 2025
bfb736f
Rollup merge of #145228 - estebank:unnecessary-parens, r=joshtriplett
Zalathar Aug 11, 2025
2bf3644
std: sys: pal: uefi: Overhaul Time
Ayush1325 Apr 14, 2025
e6fd5d5
std: sys: pal: uefi: tests: Add systemtime tests
Ayush1325 May 24, 2025
ad58f8c
Make explicit guarantees about `Vec`’s allocator
SabrinaJewson Aug 11, 2025
6a1fb51
Respond to review comments
SabrinaJewson Aug 11, 2025
b309211
Deprecate RUST_TEST_* env variables
epage Aug 11, 2025
5b128ea
Handle the `capacity == 0` case
SabrinaJewson Aug 12, 2025
70be52f
fix typo
ada4a Aug 12, 2025
c598835
Rollup merge of #145260 - SabrinaJewson:vec-allocator-docs, r=dtolnay
Zalathar Aug 12, 2025
aad53ec
Rollup merge of #145292 - ada4a:patch-2, r=tgross35
Zalathar Aug 12, 2025
23a3069
Link to payload_as_str() from payload().
m-ou-se Aug 12, 2025
c686675
Revert "Partially outline code inside the panic! macro".
m-ou-se Aug 12, 2025
371e15a
Address dangling doc
giltho Aug 12, 2025
65c3a65
Constify SystemTime methods
clarfonthey Jul 26, 2025
5e3267b
Add cast_init and cast_uninit methods for pointers
clarfonthey Jul 18, 2025
d6e4502
Make std use the edition 2024 prelude
theemathas Aug 13, 2025
ff12cbd
Rollup merge of #143467 - ChaiTRex:ascii_char_is_ascii, r=tgross35
Kobzol Aug 13, 2025
fbb69dd
Rollup merge of #144519 - clarfonthey:const-system-time, r=jhpratt
Kobzol Aug 13, 2025
4a80774
Rollup merge of #144870 - Kivooeo:file_prefix-stabilize, r=tgross35
Kobzol Aug 13, 2025
fc2441d
Rollup merge of #145269 - epage:test-env, r=jhpratt
Kobzol Aug 13, 2025
98082b1
Rollup merge of #145303 - m-ou-se:payload-as-str-doc, r=jhpratt
Kobzol Aug 13, 2025
940d054
Rollup merge of #145308 - giltho:dangling-doc, r=scottmcm
Kobzol Aug 13, 2025
f016862
Rollup merge of #145325 - clarfonthey:cast-init, r=scottmcm
Kobzol Aug 13, 2025
4b6317c
doc test: fix mpsc.rs try_send doc test
eval-exec Aug 12, 2025
f312a5a
Stabilize `sse4a` and `tbm` target features
sayantn Jul 27, 2025
0d10217
Rollup merge of #142741 - a1phyr:fix_unsoundness, r=Mark-Simulacrum
GuillaumeGomez Aug 14, 2025
65e9230
Rollup merge of #144515 - scottmcm:ptr_cast_array, r=Mark-Simulacrum
GuillaumeGomez Aug 14, 2025
cbd4630
Rollup merge of #145179 - joshtriplett:number, r=RalfJung
GuillaumeGomez Aug 14, 2025
f85a5f6
Rollup merge of #145299 - eval-exec:exec-fix-145293, r=tgross35
GuillaumeGomez Aug 14, 2025
f2d2871
Print regions in `type_name`.
nnethercote Aug 7, 2025
03dba69
resolve prelude import at `build_reduced_graph` phase
LorrensP-2158466 Aug 11, 2025
ecfc84d
Auto merge of #144542 - sayantn:stabilize-sse4a-tbm, r=Amanieu,travis…
bors Aug 14, 2025
0ecb1f5
Basic implementation of `autodiff` intrinsic
Sa4dUs Aug 14, 2025
86c250f
Complete functionality and general cleanup
Sa4dUs Aug 14, 2025
d529925
std: thread: Return error if setting thread stack size fails
Gelbpunkt Jul 20, 2025
7de45d7
Rollup merge of #145233 - joshtriplett:cfg-select-expr, r=jieyouxu
Kobzol Aug 14, 2025
ca22abc
Windows: Replace `GetThreadId`+`GetCurrentThread` with `GetCurrentThr…
tgross35 Aug 15, 2025
f753cd4
Rollup merge of #118087 - GrigorenkoPV:refcell_try_map, r=Mark-Simula…
Zalathar Aug 15, 2025
cf19f90
Rollup merge of #142640 - Sa4dUs:ad-intrinsic, r=ZuseZ4
Zalathar Aug 15, 2025
080e89d
Rollup merge of #144947 - tautschnig:remove-stray-checked_div-comment…
Zalathar Aug 15, 2025
1b3a70c
Rollup merge of #145189 - rust-lang:cargo_update, r=clubby789
Zalathar Aug 15, 2025
c9c0006
Rollup merge of #145322 - LorrensP-2158466:early-prelude-processing, …
Zalathar Aug 15, 2025
affd708
Rollup merge of #145331 - theemathas:std-prelude-2024, r=tgross35
Zalathar Aug 15, 2025
a953cc8
Create unstable `From` builtin macro and register it
Kobzol Aug 4, 2025
3504bd9
Rollup merge of #144210 - Gelbpunkt:thread-stack-size-musl, r=jhpratt
Kobzol Aug 15, 2025
48e13b7
Rollup merge of #145412 - tgross35:win-tid, r=ChrisDenton
Kobzol Aug 15, 2025
3f0e8f7
stabilize const exposed provenance
Kivooeo Aug 15, 2025
d82cde3
Rollup merge of #143717 - Jules-Bertholet:pin-default, r=dtolnay
jhpratt Aug 15, 2025
57454b2
Rollup merge of #144054 - jsimmons:stabilize-as-array-of-cells, r=tgr…
jhpratt Aug 15, 2025
5efcc19
Rollup merge of #144922 - Kobzol:derive-from, r=nnethercote
jhpratt Aug 15, 2025
2567930
Rollup merge of #144963 - rossmacarthur-forks:stabilize-core-iter-cha…
jhpratt Aug 15, 2025
b6249f1
Rollup merge of #145462 - Kivooeo:stabilize-const_exposed_provenance,…
jhpratt Aug 15, 2025
72c7f4c
Auto merge of #145304 - m-ou-se:simplify-panic, r=oli-obk
bors Aug 16, 2025
90ada38
Auto merge of #144081 - RalfJung:const-ptr-fragments, r=oli-obk
bors Aug 17, 2025
85cbfac
Auto merge of #145284 - nnethercote:type_name-print-regions, r=lcnr
bors Aug 17, 2025
131681b
Merge from 425a9c0a0e365c0b8c6cfd00c2ded83a73bed9a0 with conflicts
Aug 18, 2025
7c29d47
Update toolchain to 2025-08-18
Aug 18, 2025
1886545
Update Kani version to 81d045bd46fa9600440f179293f63650c1b78bc6
Aug 18, 2025
7c036ec
Add -Z stubbing
tautschnig Aug 18, 2025
3fa3dbd
Update Flux
tautschnig Aug 18, 2025
d458674
Resolve conflicts
tautschnig Aug 18, 2025
aee76c9
Update Flux
tautschnig Aug 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
2 changes: 1 addition & 1 deletion .github/workflows/flux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:

env:
FIXPOINT_VERSION: "556104ba5508891c357b0bdf819ce706e93d9349"
FLUX_VERSION: "ebafb8d0ca32d8c0fcd2a0cfef6b1b4bd4dc4a6f"
FLUX_VERSION: "a17246965a8752e3d3d4e3559865311048bb61f7"

jobs:
check-flux-on-core:
Expand Down
4 changes: 2 additions & 2 deletions library/Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

16 changes: 15 additions & 1 deletion library/alloc/src/boxed.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1672,7 +1672,7 @@ unsafe impl<#[may_dangle] T: ?Sized, A: Allocator> Drop for Box<T, A> {
#[cfg(not(no_global_oom_handling))]
#[stable(feature = "rust1", since = "1.0.0")]
impl<T: Default> Default for Box<T> {
/// Creates a `Box<T>`, with the `Default` value for T.
/// Creates a `Box<T>`, with the `Default` value for `T`.
#[inline]
fn default() -> Self {
let mut x: Box<mem::MaybeUninit<T>> = Box::new_uninit();
Expand All @@ -1695,6 +1695,7 @@ impl<T: Default> Default for Box<T> {
#[cfg(not(no_global_oom_handling))]
#[stable(feature = "rust1", since = "1.0.0")]
impl<T> Default for Box<[T]> {
/// Creates an empty `[T]` inside a `Box`.
#[inline]
fn default() -> Self {
let ptr: Unique<[T]> = Unique::<[T; 0]>::dangling();
Expand All @@ -1716,6 +1717,19 @@ impl Default for Box<str> {
}
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "pin_default_impls", since = "CURRENT_RUSTC_VERSION")]
impl<T> Default for Pin<Box<T>>
where
T: ?Sized,
Box<T>: Default,
{
#[inline]
fn default() -> Self {
Box::into_pin(Box::<T>::default())
}
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "rust1", since = "1.0.0")]
impl<T: Clone, A: Allocator + Clone> Clone for Box<T, A> {
Expand Down
2 changes: 2 additions & 0 deletions library/alloc/src/collections/btree/map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -135,6 +135,8 @@ pub(super) const MIN_LEN: usize = node::MIN_LEN_AFTER_SPLIT;
/// ]);
/// ```
///
/// ## `Entry` API
///
/// `BTreeMap` implements an [`Entry API`], which allows for complex
/// methods of getting, setting, updating and removing keys and their values:
///
Expand Down
16 changes: 8 additions & 8 deletions library/alloc/src/ffi/c_str.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1099,7 +1099,7 @@ impl From<&CStr> for CString {
}
}

#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<CStr> for CString {
#[inline]
fn eq(&self, other: &CStr) -> bool {
Expand All @@ -1112,7 +1112,7 @@ impl PartialEq<CStr> for CString {
}
}

#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<&CStr> for CString {
#[inline]
fn eq(&self, other: &&CStr) -> bool {
Expand All @@ -1126,7 +1126,7 @@ impl PartialEq<&CStr> for CString {
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<Cow<'_, CStr>> for CString {
#[inline]
fn eq(&self, other: &Cow<'_, CStr>) -> bool {
Expand Down Expand Up @@ -1221,7 +1221,7 @@ impl CStr {
}
}

#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<CString> for CStr {
#[inline]
fn eq(&self, other: &CString) -> bool {
Expand All @@ -1235,7 +1235,7 @@ impl PartialEq<CString> for CStr {
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<Cow<'_, Self>> for CStr {
#[inline]
fn eq(&self, other: &Cow<'_, Self>) -> bool {
Expand All @@ -1249,7 +1249,7 @@ impl PartialEq<Cow<'_, Self>> for CStr {
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<CStr> for Cow<'_, CStr> {
#[inline]
fn eq(&self, other: &CStr) -> bool {
Expand All @@ -1263,7 +1263,7 @@ impl PartialEq<CStr> for Cow<'_, CStr> {
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<&CStr> for Cow<'_, CStr> {
#[inline]
fn eq(&self, other: &&CStr) -> bool {
Expand All @@ -1277,7 +1277,7 @@ impl PartialEq<&CStr> for Cow<'_, CStr> {
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "c_string_eq_c_str", since = "CURRENT_RUSTC_VERSION")]
#[stable(feature = "c_string_eq_c_str", since = "1.90.0")]
impl PartialEq<CString> for Cow<'_, CStr> {
#[inline]
fn eq(&self, other: &CString) -> bool {
Expand Down
1 change: 1 addition & 0 deletions library/alloc/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,7 @@
#![feature(async_iterator)]
#![feature(bstr)]
#![feature(bstr_internals)]
#![feature(cast_maybe_uninit)]
#![feature(char_internals)]
#![feature(char_max_len)]
#![feature(clone_to_uninit)]
Expand Down
19 changes: 16 additions & 3 deletions library/alloc/src/rc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2357,7 +2357,7 @@ impl<T: Default> Default for Rc<T> {
/// assert_eq!(*x, 0);
/// ```
#[inline]
fn default() -> Rc<T> {
fn default() -> Self {
unsafe {
Self::from_inner(
Box::leak(Box::write(
Expand All @@ -2373,7 +2373,7 @@ impl<T: Default> Default for Rc<T> {
#[cfg(not(no_global_oom_handling))]
#[stable(feature = "more_rc_default_impls", since = "1.80.0")]
impl Default for Rc<str> {
/// Creates an empty str inside an Rc
/// Creates an empty `str` inside an `Rc`.
///
/// This may or may not share an allocation with other Rcs on the same thread.
#[inline]
Expand All @@ -2387,7 +2387,7 @@ impl Default for Rc<str> {
#[cfg(not(no_global_oom_handling))]
#[stable(feature = "more_rc_default_impls", since = "1.80.0")]
impl<T> Default for Rc<[T]> {
/// Creates an empty `[T]` inside an Rc
/// Creates an empty `[T]` inside an `Rc`.
///
/// This may or may not share an allocation with other Rcs on the same thread.
#[inline]
Expand All @@ -2397,6 +2397,19 @@ impl<T> Default for Rc<[T]> {
}
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "pin_default_impls", since = "CURRENT_RUSTC_VERSION")]
impl<T> Default for Pin<Rc<T>>
where
T: ?Sized,
Rc<T>: Default,
{
#[inline]
fn default() -> Self {
unsafe { Pin::new_unchecked(Rc::<T>::default()) }
}
}

#[stable(feature = "rust1", since = "1.0.0")]
trait RcEqIdent<T: ?Sized + PartialEq, A: Allocator> {
fn eq(&self, other: &Rc<T, A>) -> bool;
Expand Down
13 changes: 13 additions & 0 deletions library/alloc/src/sync.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3654,6 +3654,19 @@ impl<T> Default for Arc<[T]> {
}
}

#[cfg(not(no_global_oom_handling))]
#[stable(feature = "pin_default_impls", since = "CURRENT_RUSTC_VERSION")]
impl<T> Default for Pin<Arc<T>>
where
T: ?Sized,
Arc<T>: Default,
{
#[inline]
fn default() -> Self {
unsafe { Pin::new_unchecked(Arc::<T>::default()) }
}
}

#[stable(feature = "rust1", since = "1.0.0")]
impl<T: ?Sized + Hash, A: Allocator> Hash for Arc<T, A> {
fn hash<H: Hasher>(&self, state: &mut H) {
Expand Down
74 changes: 62 additions & 12 deletions library/alloc/src/vec/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,27 @@
//! v[1] = v[1] + 5;
//! ```
//!
//! # Memory layout
//!
//! When the type is non-zero-sized and the capacity is nonzero, [`Vec`] uses the [`Global`]
//! allocator for its allocation. It is valid to convert both ways between such a [`Vec`] and a raw
//! pointer allocated with the [`Global`] allocator, provided that the [`Layout`] used with the
//! allocator is correct for a sequence of `capacity` elements of the type, and the first `len`
//! values pointed to by the raw pointer are valid. More precisely, a `ptr: *mut T` that has been
//! allocated with the [`Global`] allocator with [`Layout::array::<T>(capacity)`][Layout::array] may
//! be converted into a vec using
//! [`Vec::<T>::from_raw_parts(ptr, len, capacity)`](Vec::from_raw_parts). Conversely, the memory
//! backing a `value: *mut T` obtained from [`Vec::<T>::as_mut_ptr`] may be deallocated using the
//! [`Global`] allocator with the same layout.
//!
//! For zero-sized types (ZSTs), or when the capacity is zero, the `Vec` pointer must be non-null
//! and sufficiently aligned. The recommended way to build a `Vec` of ZSTs if [`vec!`] cannot be
//! used is to use [`ptr::NonNull::dangling`].
//!
//! [`push`]: Vec::push
//! [`ptr::NonNull::dangling`]: NonNull::dangling
//! [`Layout`]: crate::alloc::Layout
//! [Layout::array]: crate::alloc::Layout::array

#![stable(feature = "rust1", since = "1.0.0")]

Expand Down Expand Up @@ -523,18 +543,23 @@ impl<T> Vec<T> {
/// This is highly unsafe, due to the number of invariants that aren't
/// checked:
///
/// * `ptr` must have been allocated using the global allocator, such as via
/// the [`alloc::alloc`] function.
/// * `T` needs to have the same alignment as what `ptr` was allocated with.
/// * If `T` is not a zero-sized type and the capacity is nonzero, `ptr` must have
/// been allocated using the global allocator, such as via the [`alloc::alloc`]
/// function. If `T` is a zero-sized type or the capacity is zero, `ptr` need
/// only be non-null and aligned.
/// * `T` needs to have the same alignment as what `ptr` was allocated with,
/// if the pointer is required to be allocated.
/// (`T` having a less strict alignment is not sufficient, the alignment really
/// needs to be equal to satisfy the [`dealloc`] requirement that memory must be
/// allocated and deallocated with the same layout.)
/// * The size of `T` times the `capacity` (ie. the allocated size in bytes) needs
/// to be the same size as the pointer was allocated with. (Because similar to
/// alignment, [`dealloc`] must be called with the same layout `size`.)
/// * The size of `T` times the `capacity` (ie. the allocated size in bytes), if
/// nonzero, needs to be the same size as the pointer was allocated with.
/// (Because similar to alignment, [`dealloc`] must be called with the same
/// layout `size`.)
/// * `length` needs to be less than or equal to `capacity`.
/// * The first `length` values must be properly initialized values of type `T`.
/// * `capacity` needs to be the capacity that the pointer was allocated with.
/// * `capacity` needs to be the capacity that the pointer was allocated with,
/// if the pointer is required to be allocated.
/// * The allocated size in bytes must be no larger than `isize::MAX`.
/// See the safety documentation of [`pointer::offset`].
///
Expand Down Expand Up @@ -770,12 +795,16 @@ impl<T> Vec<T> {
/// order as the arguments to [`from_raw_parts`].
///
/// After calling this function, the caller is responsible for the
/// memory previously managed by the `Vec`. The only way to do
/// this is to convert the raw pointer, length, and capacity back
/// into a `Vec` with the [`from_raw_parts`] function, allowing
/// the destructor to perform the cleanup.
/// memory previously managed by the `Vec`. Most often, one does
/// this by converting the raw pointer, length, and capacity back
/// into a `Vec` with the [`from_raw_parts`] function; more generally,
/// if `T` is non-zero-sized and the capacity is nonzero, one may use
/// any method that calls [`dealloc`] with a layout of
/// `Layout::array::<T>(capacity)`; if `T` is zero-sized or the
/// capacity is zero, nothing needs to be done.
///
/// [`from_raw_parts`]: Vec::from_raw_parts
/// [`dealloc`]: crate::alloc::GlobalAlloc::dealloc
///
/// # Examples
///
Expand Down Expand Up @@ -1755,6 +1784,12 @@ impl<T, A: Allocator> Vec<T, A> {
/// may still invalidate this pointer.
/// See the second example below for how this guarantee can be used.
///
/// The method also guarantees that, as long as `T` is not zero-sized and the capacity is
/// nonzero, the pointer may be passed into [`dealloc`] with a layout of
/// `Layout::array::<T>(capacity)` in order to deallocate the backing memory. If this is done,
/// be careful not to run the destructor of the `Vec`, as dropping it will result in
/// double-frees. Wrapping the `Vec` in a [`ManuallyDrop`] is the typical way to achieve this.
///
/// # Examples
///
/// ```
Expand Down Expand Up @@ -1787,9 +1822,24 @@ impl<T, A: Allocator> Vec<T, A> {
/// }
/// ```
///
/// Deallocating a vector using [`Box`] (which uses [`dealloc`] internally):
///
/// ```
/// use std::mem::{ManuallyDrop, MaybeUninit};
///
/// let mut v = ManuallyDrop::new(vec![0, 1, 2]);
/// let ptr = v.as_mut_ptr();
/// let capacity = v.capacity();
/// let slice_ptr: *mut [MaybeUninit<i32>] =
/// std::ptr::slice_from_raw_parts_mut(ptr.cast(), capacity);
/// drop(unsafe { Box::from_raw(slice_ptr) });
/// ```
///
/// [`as_mut_ptr`]: Vec::as_mut_ptr
/// [`as_ptr`]: Vec::as_ptr
/// [`as_non_null`]: Vec::as_non_null
/// [`dealloc`]: crate::alloc::GlobalAlloc::dealloc
/// [`ManuallyDrop`]: core::mem::ManuallyDrop
#[stable(feature = "vec_as_ptr", since = "1.37.0")]
#[rustc_const_stable(feature = "const_vec_string_slice", since = "1.87.0")]
#[rustc_never_returns_null_ptr]
Expand Down Expand Up @@ -3126,7 +3176,7 @@ impl<T, A: Allocator> Vec<T, A> {
// - but the allocation extends out to `self.buf.capacity()` elements, possibly
// uninitialized
let spare_ptr = unsafe { ptr.add(self.len) };
let spare_ptr = spare_ptr.cast::<MaybeUninit<T>>();
let spare_ptr = spare_ptr.cast_uninit();
let spare_len = self.buf.capacity() - self.len;

// SAFETY:
Expand Down
Loading
Loading