Skip to content

Rollup of 22 pull requests #145418

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 66 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
66 commits
Select commit Hold shift + click to select a range
1045b70
tests: add test for invalid interrupt signatures
workingjubilee Jun 27, 2025
db33e98
compiler: fixup error message for x86-interrupt invalid returns
workingjubilee Jun 27, 2025
d6b3314
compiler: allow interrupts to return () or !
workingjubilee Jun 27, 2025
b5ab966
remember how to write never returns
workingjubilee Jun 27, 2025
f6bdffd
Add Ref/RefMut try_map method
GrigorenkoPV Nov 19, 2023
9c0cfd2
Fix description of unsigned `checked_exact_div`
tautschnig Aug 5, 2025
2472d19
Include allocator module in LLVM_passes timer
bjorn3 Aug 6, 2025
ee38bc0
Remove unused field from ModuleConfig
bjorn3 Aug 6, 2025
8f648d7
Remove bitcode_llvm_cmdline
bjorn3 Aug 8, 2025
a42833e
cargo update
invalid-email-address Aug 10, 2025
bc14ad3
strip prefix of temporary file names when it exceeds filesystem name …
tardyp Aug 6, 2025
b5cee77
Remove unnecessary UnsatisfiedConst reporting logic
compiler-errors Aug 11, 2025
5032373
Remove unnecessary trait predicate eq function
compiler-errors Aug 11, 2025
42475af
Remove unnecessary comment
compiler-errors Aug 11, 2025
258915a
llvm: Accept new LLVM lifetime format
maurer Aug 8, 2025
57901fe
E0793: Clarify that it applies to unions as well
He1pa Aug 5, 2025
c439a59
Change the desugaring of `assert!` for better error output
estebank Mar 17, 2024
85d1c89
fix tail calls to `#[track_caller]` functions
WaffleLapkin Aug 3, 2025
6056212
Make std use the edition 2024 prelude
theemathas Aug 13, 2025
f978932
fix(compiler/rustc_codegen_llvm): apply `target-cpu` attribute
StackOverflowExcept1on Aug 11, 2025
3a250b7
rewrite test with `#![no_core]`
StackOverflowExcept1on Aug 14, 2025
18fd6ea
Revert "Correctly handle when there are no unstable items in the docu…
GuillaumeGomez Aug 14, 2025
1975b06
Revert "rustdoc search: add performance note about searchIndexUnstabl…
GuillaumeGomez Aug 14, 2025
2820fcc
Revert "rustdoc: IndexItem::{stability -> is_unstable}"
GuillaumeGomez Aug 14, 2025
a195cf6
Revert "rustdoc search: prefer stable items in search results"
GuillaumeGomez Aug 14, 2025
ecce90b
coverage: Remove intermediate data structures from mapping creation
Zalathar Aug 8, 2025
ff560d3
resolve prelude import at `build_reduced_graph` phase
LorrensP-2158466 Aug 11, 2025
f5bc295
Add test suggest-self-in-bare-function
xizheyin Aug 14, 2025
3ce555f
Add FnContext in parser for diagnostic
xizheyin Aug 14, 2025
1cf7af3
Add -Zindirect-branch-cs-prefix (from draft PR)
Darksonn May 7, 2025
74ebaf9
Add `-Zindirect-branch-cs-prefix` option
ojeda May 7, 2025
9dfee2e
fix alignment test
estebank Aug 14, 2025
68ebbae
resolve: Introduce `RibKind::Block`
petrochenkov Aug 7, 2025
e6c96c1
resolve: Inline `with_mod_rib`
petrochenkov Aug 7, 2025
1652915
resolve: Restructure `resolve_ident_in_lexical_scope` for better clarity
petrochenkov Aug 7, 2025
f369e06
resolve: Add one more test case for "binding is available in a differ…
petrochenkov Aug 11, 2025
caadc8d
Do not ICE on private type in field of unresolved struct
estebank Aug 13, 2025
5c63104
Basic implementation of `autodiff` intrinsic
Sa4dUs Aug 14, 2025
250d77e
Complete functionality and general cleanup
Sa4dUs Aug 14, 2025
c9c1c17
Remove inlining for autodiff handling
Sa4dUs Aug 14, 2025
e1d79b9
Remove lto inline logic
Sa4dUs Aug 14, 2025
51df1da
fixed diagnostic
Kivooeo Aug 6, 2025
cdd4118
Update autodiff tests for the new intrinsics impl
Sa4dUs Aug 14, 2025
fa18b3e
drive-by: fix typo
WaffleLapkin Aug 14, 2025
63b042d
Rollup merge of #118087 - GrigorenkoPV:refcell_try_map, r=Mark-Simula…
Zalathar Aug 15, 2025
bc4dd21
Rollup merge of #122661 - estebank:assert-macro-span, r=petrochenkov
Zalathar Aug 15, 2025
efcb7bb
Rollup merge of #140740 - ojeda:indirect-branch-cs-prefix, r=davidtwco
Zalathar Aug 15, 2025
026270a
Rollup merge of #142640 - Sa4dUs:ad-intrinsic, r=ZuseZ4
Zalathar Aug 15, 2025
b744930
Rollup merge of #143075 - workingjubilee:interrupts-may-return-neverm…
Zalathar Aug 15, 2025
d984d22
Rollup merge of #144865 - WaffleLapkin:track-tail, r=lqd
Zalathar Aug 15, 2025
30da6aa
Rollup merge of #144944 - He1pa:E0793, r=compiler-errors
Zalathar Aug 15, 2025
c4f3c04
Rollup merge of #144947 - tautschnig:remove-stray-checked_div-comment…
Zalathar Aug 15, 2025
21f5761
Rollup merge of #145004 - bjorn3:remove_unused_fields, r=WaffleLapkin
Zalathar Aug 15, 2025
71ddd9f
Rollup merge of #145005 - tardyp:lto_big_filesize, r=bjorn3
Zalathar Aug 15, 2025
62aa0de
Rollup merge of #145012 - Kivooeo:fun-problem-fun-fix, r=compiler-errors
Zalathar Aug 15, 2025
d8604a0
Rollup merge of #145065 - petrochenkov:riblock, r=davidtwco
Zalathar Aug 15, 2025
71944cb
Rollup merge of #145120 - maurer:llvm-time, r=nikic
Zalathar Aug 15, 2025
6858afe
Rollup merge of #145189 - rust-lang:cargo_update, r=clubby789
Zalathar Aug 15, 2025
4f25d54
Rollup merge of #145235 - compiler-errors:comment, r=BoxyUwU
Zalathar Aug 15, 2025
b22b6ba
Rollup merge of #145275 - StackOverflowExcept1on:fix-wasm32v1-none, r…
Zalathar Aug 15, 2025
c16ba50
Rollup merge of #145322 - LorrensP-2158466:early-prelude-processing, …
Zalathar Aug 15, 2025
ffb442f
Rollup merge of #145331 - theemathas:std-prelude-2024, r=tgross35
Zalathar Aug 15, 2025
5f0612e
Rollup merge of #145369 - estebank:issue-145367, r=compiler-errors
Zalathar Aug 15, 2025
e9fe9f3
Rollup merge of #145378 - xizheyin:144968, r=davidtwco
Zalathar Aug 15, 2025
8677b73
Rollup merge of #145389 - GuillaumeGomez:unstable-search, r=fmease
Zalathar Aug 15, 2025
17586c3
Rollup merge of #145392 - Zalathar:create-mappings, r=petrochenkov
Zalathar Aug 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
95 changes: 47 additions & 48 deletions Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -80,9 +80,9 @@ dependencies = [

[[package]]
name = "anstream"
version = "0.6.19"
version = "0.6.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "301af1932e46185686725e0fad2f8f2aa7da69dd70bf6ecc44d6b703844a3933"
checksum = "3ae563653d1938f79b1ab1b5e668c87c76a9930414574a6583a7b7e11a8e6192"
dependencies = [
"anstyle",
"anstyle-parse",
Expand Down Expand Up @@ -119,18 +119,18 @@ dependencies = [

[[package]]
name = "anstyle-query"
version = "1.1.3"
version = "1.1.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6c8bdeb6047d8983be085bab0ba1472e6dc604e7041dbf6fcd5e71523014fae9"
checksum = "9e231f6134f61b71076a3eab506c379d4f36122f2af15a9ff04415ea4c3339e2"
dependencies = [
"windows-sys 0.59.0",
"windows-sys 0.60.2",
]

[[package]]
name = "anstyle-svg"
version = "0.1.9"
version = "0.1.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0a43964079ef399480603125d5afae2b219aceffb77478956e25f17b9bc3435c"
checksum = "dc03a770ef506fe1396c0e476120ac0e6523cf14b74218dd5f18cd6833326fa9"
dependencies = [
"anstyle",
"anstyle-lossy",
Expand All @@ -141,13 +141,13 @@ dependencies = [

[[package]]
name = "anstyle-wincon"
version = "3.0.9"
version = "3.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "403f75924867bb1033c59fbf0797484329750cfbe3c4325cd33127941fabc882"
checksum = "3e0633414522a32ffaac8ac6cc8f748e090c5717661fddeea04219e2344f5f2a"
dependencies = [
"anstyle",
"once_cell_polyfill",
"windows-sys 0.59.0",
"windows-sys 0.60.2",
]

[[package]]
Expand Down Expand Up @@ -353,9 +353,9 @@ checksum = "175812e0be2bccb6abe50bb8d566126198344f707e304f45c648fd8f2cc0365e"

[[package]]
name = "camino"
version = "1.1.10"
version = "1.1.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0da45bc31171d8d6960122e222a67740df867c1dd53b4d51caa297084c185cab"
checksum = "5d07aa9a93b00c76f71bc35d598bed923f6d4f3a9ca5c24b7737ae1a292841c0"
dependencies = [
"serde",
]
Expand Down Expand Up @@ -518,9 +518,9 @@ dependencies = [

[[package]]
name = "clap"
version = "4.5.42"
version = "4.5.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed87a9d530bb41a67537289bafcac159cb3ee28460e0a4571123d2a778a6a882"
checksum = "50fd97c9dc2399518aa331917ac6f274280ec5eb34e555dd291899745c48ec6f"
dependencies = [
"clap_builder",
"clap_derive",
Expand All @@ -538,9 +538,9 @@ dependencies = [

[[package]]
name = "clap_builder"
version = "4.5.42"
version = "4.5.43"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "64f4f3f3c77c94aff3c7e9aac9a2ca1974a5adf392a8bb751e827d6d127ab966"
checksum = "c35b5830294e1fa0462034af85cc95225a4cb07092c088c55bda3147cfcd8f65"
dependencies = [
"anstream",
"anstyle",
Expand Down Expand Up @@ -937,9 +937,9 @@ dependencies = [

[[package]]
name = "cxx"
version = "1.0.161"
version = "1.0.166"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a3523cc02ad831111491dd64b27ad999f1ae189986728e477604e61b81f828df"
checksum = "b5287274dfdf7e7eaa3d97d460eb2a94922539e6af214bda423f292105011ee2"
dependencies = [
"cc",
"cxxbridge-cmd",
Expand All @@ -951,9 +951,9 @@ dependencies = [

[[package]]
name = "cxx-build"
version = "1.0.161"
version = "1.0.166"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "212b754247a6f07b10fa626628c157593f0abf640a3dd04cce2760eca970f909"
checksum = "65f3ce027a744135db10a1ebffa0863dab685aeef48f40a02c201f5e70c667d3"
dependencies = [
"cc",
"codespan-reporting",
Expand All @@ -966,9 +966,9 @@ dependencies = [

[[package]]
name = "cxxbridge-cmd"
version = "1.0.161"
version = "1.0.166"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f426a20413ec2e742520ba6837c9324b55ffac24ead47491a6e29f933c5b135a"
checksum = "a07dc23f2eea4774297f4c9a17ae4065fecb63127da556e6c9fadb0216d93595"
dependencies = [
"clap",
"codespan-reporting",
Expand All @@ -980,15 +980,15 @@ dependencies = [

[[package]]
name = "cxxbridge-flags"
version = "1.0.161"
version = "1.0.166"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a258b6069020b4e5da6415df94a50ee4f586a6c38b037a180e940a43d06a070d"
checksum = "f7a4dbad6171f763c4066c83dcd27546b6e93c5c5ae2229f9813bda7233f571d"

[[package]]
name = "cxxbridge-macro"
version = "1.0.161"
version = "1.0.166"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8dec184b52be5008d6eaf7e62fc1802caf1ad1227d11b3b7df2c409c7ffc3f4"
checksum = "a9be4b527950fc42db06163705e78e73eedc8fd723708e942afe3572a9a2c366"
dependencies = [
"indexmap",
"proc-macro2",
Expand Down Expand Up @@ -1055,9 +1055,9 @@ version = "0.1.91"

[[package]]
name = "derive-where"
version = "1.5.0"
version = "1.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "510c292c8cf384b1a340b816a9a6cf2599eb8f566a44949024af88418000c50b"
checksum = "ef941ded77d15ca19b40374869ac6000af1c9f2a4c0f3d4c70926287e6364a8f"
dependencies = [
"proc-macro2",
"quote",
Expand Down Expand Up @@ -1567,9 +1567,9 @@ dependencies = [

[[package]]
name = "hashbrown"
version = "0.15.4"
version = "0.15.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5971ac85611da7067dbfcabef3c70ebb5606018acd9e2a3903a0da507521e0d5"
checksum = "9229cfe53dfd69f0609a49f65461bd93001ea1ef889cd5529dd176593f5338a1"
dependencies = [
"allocator-api2",
"equivalent",
Expand Down Expand Up @@ -1688,7 +1688,7 @@ dependencies = [
"potential_utf",
"yoke 0.8.0",
"zerofrom",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -1721,7 +1721,7 @@ dependencies = [
"litemap 0.8.0",
"tinystr 0.8.1",
"writeable 0.6.1",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -1769,7 +1769,7 @@ dependencies = [
"icu_properties",
"icu_provider 2.0.0",
"smallvec",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand All @@ -1791,7 +1791,7 @@ dependencies = [
"icu_provider 2.0.0",
"potential_utf",
"zerotrie",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -1831,7 +1831,7 @@ dependencies = [
"yoke 0.8.0",
"zerofrom",
"zerotrie",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -1909,9 +1909,9 @@ dependencies = [

[[package]]
name = "indenter"
version = "0.3.3"
version = "0.3.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ce23b50ad8242c51a442f3ff322d56b02f08852c77e4c0b4d3fd684abc89c683"
checksum = "964de6e86d545b246d84badc0fef527924ace5134f30641c203ef52ba83f58d5"

[[package]]
name = "indexmap"
Expand Down Expand Up @@ -2971,7 +2971,7 @@ version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e5a7c30837279ca13e7c867e9e40053bc68740f988cb07f7ca6df43cc734b585"
dependencies = [
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -3283,7 +3283,7 @@ dependencies = [
"regex",
"serde_json",
"similar",
"wasmparser 0.219.2",
"wasmparser 0.236.0",
]

[[package]]
Expand Down Expand Up @@ -3623,6 +3623,7 @@ dependencies = [
"rustc_hir",
"rustc_incremental",
"rustc_index",
"rustc_lint_defs",
"rustc_macros",
"rustc_metadata",
"rustc_middle",
Expand Down Expand Up @@ -4309,7 +4310,6 @@ name = "rustc_monomorphize"
version = "0.0.0"
dependencies = [
"rustc_abi",
"rustc_ast",
"rustc_data_structures",
"rustc_errors",
"rustc_fluent_macro",
Expand All @@ -4318,7 +4318,6 @@ dependencies = [
"rustc_middle",
"rustc_session",
"rustc_span",
"rustc_symbol_mangling",
"rustc_target",
"serde",
"serde_json",
Expand Down Expand Up @@ -4920,9 +4919,9 @@ dependencies = [

[[package]]
name = "rustversion"
version = "1.0.21"
version = "1.0.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8a0d197bd2c9dc6e53b84da9556a69ba4cdfab8619eb41a8bd1cc2027a0f6b1d"
checksum = "b39cdef0fa800fc44525c84ccb54a029961a8215f9619753635a9c0d2538d46d"

[[package]]
name = "ruzstd"
Expand Down Expand Up @@ -4980,9 +4979,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"

[[package]]
name = "scratch"
version = "1.0.8"
version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9f6280af86e5f559536da57a45ebc84948833b3bee313a7dd25232e09c878a52"
checksum = "d68f2ec51b097e4c1a75b681a8bec621909b5e91f15bb7b840c4f2f7b01148b2"

[[package]]
name = "self_cell"
Expand Down Expand Up @@ -5508,7 +5507,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5d4f6d1145dcb577acf783d4e601bc1d76a13337bb54e6233add580b07344c8b"
dependencies = [
"displaydoc",
"zerovec 0.11.2",
"zerovec 0.11.4",
]

[[package]]
Expand Down Expand Up @@ -6854,9 +6853,9 @@ dependencies = [

[[package]]
name = "zerovec"
version = "0.11.2"
version = "0.11.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a05eb080e015ba39cc9e23bbe5e7fb04d5fb040350f99f34e338d5fdd294428"
checksum = "e7aa2bd55086f1ab526693ecbe444205da57e25f4489879da80635a46d90e73b"
dependencies = [
"yoke 0.8.0",
"zerofrom",
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_ast_passes/messages.ftl
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ ast_passes_abi_must_not_have_parameters_or_return_type=
ast_passes_abi_must_not_have_return_type=
invalid signature for `extern {$abi}` function
.note = functions with the "custom" ABI cannot have a return type
.note = functions with the {$abi} ABI cannot have a return type
.help = remove the return type
ast_passes_assoc_const_without_body =
Expand Down
16 changes: 14 additions & 2 deletions compiler/rustc_ast_passes/src/ast_validation.rs
Original file line number Diff line number Diff line change
Expand Up @@ -390,7 +390,13 @@ impl<'a> AstValidator<'a> {
if let InterruptKind::X86 = interrupt_kind {
// "x86-interrupt" is special because it does have arguments.
// FIXME(workingjubilee): properly lint on acceptable input types.
if let FnRetTy::Ty(ref ret_ty) = sig.decl.output {
if let FnRetTy::Ty(ref ret_ty) = sig.decl.output
&& match &ret_ty.kind {
TyKind::Never => false,
TyKind::Tup(tup) if tup.is_empty() => false,
_ => true,
}
{
self.dcx().emit_err(errors::AbiMustNotHaveReturnType {
span: ret_ty.span,
abi,
Expand Down Expand Up @@ -449,7 +455,13 @@ impl<'a> AstValidator<'a> {

fn reject_params_or_return(&self, abi: ExternAbi, ident: &Ident, sig: &FnSig) {
let mut spans: Vec<_> = sig.decl.inputs.iter().map(|p| p.span).collect();
if let FnRetTy::Ty(ref ret_ty) = sig.decl.output {
if let FnRetTy::Ty(ref ret_ty) = sig.decl.output
&& match &ret_ty.kind {
TyKind::Never => false,
TyKind::Tup(tup) if tup.is_empty() => false,
_ => true,
}
{
spans.push(ret_ty.span);
}

Expand Down
Loading
Loading