Skip to content

Rollup of 13 pull requests #145373

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 50 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
50 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
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
d6c7cf7
resolve: Introduce `RibKind::Block`
petrochenkov Aug 7, 2025
7af4ee8
resolve: Inline `with_mod_rib`
petrochenkov Aug 7, 2025
4c4c3d5
resolve: Restructure `resolve_ident_in_lexical_scope` for better clarity
petrochenkov Aug 7, 2025
7418fa9
resolve: Add one more test case for "binding is available in a differ…
petrochenkov Aug 11, 2025
e6dddcb
Store bootstrap tracing outputs to a unified directory
Kobzol Aug 10, 2025
c97b606
Store `latest` symlink to the latest tracing output directory
Kobzol Aug 10, 2025
f819729
Store Chrome step trace into the tracing directory
Kobzol Aug 10, 2025
aad5795
Use shorter command span label
Kobzol Aug 10, 2025
3a115ba
Print step timings also when the stap starts to execute
Kobzol Aug 10, 2025
c846f7c
Replace `tracing_forest` with custom span formatting
Kobzol Aug 11, 2025
1e14229
Create a span for each executed step
Kobzol Aug 11, 2025
690c781
Remove ad-hoc print of executed/cached steps in verbose mode
Kobzol Aug 11, 2025
d403934
Remove manual `#[instrument]` annotations on steps
Kobzol Aug 11, 2025
604c180
Move tracing setup to the `tracing` module
Kobzol Aug 11, 2025
c3682b2
Correctly show executed command name in Chrome trace
Kobzol Aug 11, 2025
b4a357f
Always profile commands and generate Chrome profile when tracing is e…
Kobzol Aug 11, 2025
f9a4588
Do not create a span for cached commands
Kobzol Aug 11, 2025
12828f7
Create tracing directory symlink even during dry run
Kobzol Aug 11, 2025
3e77562
Use `pretty_step_name` in `step_graph`
Kobzol Aug 11, 2025
a0306bf
Update debugging/profiling bootstrap page
Kobzol Aug 11, 2025
6f584bc
Print created location of executed commands
Kobzol Aug 11, 2025
258915a
llvm: Accept new LLVM lifetime format
maurer Aug 8, 2025
0b8c6ad
Remove one dependency from tracing bootstrap build
Kobzol Aug 12, 2025
c439a59
Change the desugaring of `assert!` for better error output
estebank Mar 17, 2024
6056212
Make std use the edition 2024 prelude
theemathas Aug 13, 2025
ebcbcc8
bootstrap: Fix jemalloc 64K page support for aarch64 tools
CathalMullan Aug 13, 2025
a0eea23
doc test: fix mpsc.rs try_send doc test
eval-exec Aug 12, 2025
d4eb094
Cleanup assoc parent utils
camsteffen Aug 12, 2025
12d1665
Add test suggest-add-wrapper-issue-145294
xizheyin Aug 13, 2025
e0cc2be
Suppress wrapper suggestion when expected and actual ty are the same …
xizheyin Aug 13, 2025
7b5d9ef
Improve `--remap-path-prefix` documentation
Urgau Jun 11, 2025
d6d7760
Rollup merge of #122661 - estebank:assert-macro-span, r=petrochenkov
Zalathar Aug 14, 2025
1d16c81
Rollup merge of #142372 - Urgau:improve-remap_path_prefix-doc, r=wesl…
Zalathar Aug 14, 2025
f40db2a
Rollup merge of #143075 - workingjubilee:interrupts-may-return-neverm…
Zalathar Aug 14, 2025
52d2f5e
Rollup merge of #145005 - tardyp:lto_big_filesize, r=bjorn3
Zalathar Aug 14, 2025
7cdd24d
Rollup merge of #145065 - petrochenkov:riblock, r=davidtwco
Zalathar Aug 14, 2025
18e906d
Rollup merge of #145120 - maurer:llvm-time, r=nikic
Zalathar Aug 14, 2025
b2b332c
Rollup merge of #145189 - rust-lang:cargo_update, r=clubby789
Zalathar Aug 14, 2025
5d7b985
Rollup merge of #145261 - Kobzol:bootstrap-tracing, r=jieyouxu
Zalathar Aug 14, 2025
8654867
Rollup merge of #145266 - camsteffen:reduce-queries, r=petrochenkov
Zalathar Aug 14, 2025
bdba2f8
Rollup merge of #145299 - eval-exec:exec-fix-145293, r=tgross35
Zalathar Aug 14, 2025
bef93cf
Rollup merge of #145331 - theemathas:std-prelude-2024, r=tgross35
Zalathar Aug 14, 2025
30e5be4
Rollup merge of #145353 - CathalMullan:jemalloc-tools, r=Kobzol
Zalathar Aug 14, 2025
ff62657
Rollup merge of #145361 - xizheyin:145294, r=compiler-errors
Zalathar Aug 14, 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
90 changes: 45 additions & 45 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 @@ -4919,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 @@ -4979,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 @@ -5507,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 @@ -6853,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
3 changes: 2 additions & 1 deletion compiler/rustc_borrowck/src/diagnostics/mutability_errors.rs
Original file line number Diff line number Diff line change
Expand Up @@ -677,12 +677,13 @@ impl<'infcx, 'tcx> MirBorrowckCtxt<'_, 'infcx, 'tcx> {
/// - is the trait from the local crate? If not, we can't suggest changing signatures
/// - `Span` of the argument in the trait definition
fn is_error_in_trait(&self, local: Local) -> (bool, bool, Option<Span>) {
let tcx = self.infcx.tcx;
if self.body.local_kind(local) != LocalKind::Arg {
return (false, false, None);
}
let my_def = self.body.source.def_id();
let Some(td) =
self.infcx.tcx.impl_of_assoc(my_def).and_then(|x| self.infcx.tcx.trait_id_of_impl(x))
tcx.trait_impl_of_assoc(my_def).and_then(|id| self.infcx.tcx.trait_id_of_impl(id))
else {
return (false, false, None);
};
Expand Down
5 changes: 1 addition & 4 deletions compiler/rustc_borrowck/src/type_check/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1773,10 +1773,7 @@ impl<'a, 'tcx> Visitor<'tcx> for TypeChecker<'a, 'tcx> {
locations,
);

assert!(!matches!(
tcx.impl_of_assoc(def_id).map(|imp| tcx.def_kind(imp)),
Some(DefKind::Impl { of_trait: true })
));
assert_eq!(tcx.trait_impl_of_assoc(def_id), None);
self.prove_predicates(
args.types().map(|ty| ty::ClauseKind::WellFormed(ty.into())),
locations,
Expand Down
Loading
Loading