Skip to content

Rollup of 13 pull requests #144633

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

Merged
merged 85 commits into from
Jul 29, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
85 commits
Select commit Hold shift + click to select a range
8acdee7
don't halt execution when we write to a read-only file
RalfJung Jul 19, 2025
d3fc02c
non-deterministically truncate reads/writes
RalfJung Jul 19, 2025
72ba7c5
Preparing for merge from rustc
Jul 21, 2025
e3e711b
Merge from rustc
Jul 21, 2025
9ef15d2
Merge pull request #4486 from rust-lang/rustup-2025-07-21
RalfJung Jul 21, 2025
800d805
Merge pull request #4481 from RalfJung/read-write-truncate
oli-obk Jul 21, 2025
6f06667
Preparing for merge from rustc
Jul 22, 2025
4d62686
Merge from rustc
Jul 22, 2025
7a8288b
Merge pull request #4487 from rust-lang/rustup-2025-07-22
oli-obk Jul 22, 2025
08d7787
CI: add windows-arm runner
RalfJung Jul 19, 2025
a6c1093
Init josh-sync config file
Kobzol Jul 23, 2025
a61657e
Remove Josh code from `miri-script`
Kobzol Jul 23, 2025
037b2f6
Merge pull request #4479 from RalfJung/ci-win-arm
RalfJung Jul 23, 2025
e685e90
Update `CONTRIBUTING.md`
Kobzol Jul 23, 2025
48963fa
Update CI workflow
Kobzol Jul 23, 2025
8664aa7
Remove Zulip API keys and use `set -x`
Kobzol Jul 23, 2025
cbd1557
Merge pull request #4490 from Kobzol/use-josh-sync
RalfJung Jul 23, 2025
477814a
Document (internally) that `Range*<&T> as RangeBounds<T>` impls are i…
zachs18 Jul 19, 2025
fd114d4
make the missing-MIR message more clear
RalfJung Jul 24, 2025
94f725f
Merge pull request #4491 from RalfJung/missing-mir
RalfJung Jul 24, 2025
0258894
Prepare for merging from rust-lang/rust
Jul 25, 2025
8ff5894
Merge ref 'b56aaec52bc0' from rust-lang/rust
Jul 25, 2025
0dba9f5
fmt
Jul 25, 2025
60b0545
Fix cronjob Zulip message
Kobzol Jul 25, 2025
80c9f78
Merge pull request #4493 from Kobzol/ci-fail-message
RalfJung Jul 25, 2025
2a81b4f
Use i64 for tracing chrome "id"
Stypox Jul 22, 2025
00de833
Fix missing $ in enter_trace_span!
Stypox Jul 22, 2025
c7b81f3
Fix double "fatal error: " in message
Stypox Jul 22, 2025
d2ba3c8
fix target json
RalfJung Jul 25, 2025
dd96ec6
Merge pull request #4492 from rust-lang/rustup-2025-07-25
RalfJung Jul 25, 2025
5295649
Merge pull request #4489 from Stypox/misc-tracing-fixes
RalfJung Jul 25, 2025
d88bdc9
CI: run apt update before installing anything
RalfJung Jul 26, 2025
4779dd7
Merge pull request #4494 from RalfJung/ci
RalfJung Jul 26, 2025
3d3534d
add download context
Shourya742 Jul 27, 2025
861de92
move utility methods out of config impl
Shourya742 Jul 27, 2025
8facd06
move download_beta_toolchain out of impl as its used during config in…
Shourya742 Jul 27, 2025
19dc195
move download_rustfmt out of impl as its used during config initializ…
Shourya742 Jul 27, 2025
23e2942
call_function helper: dont ICE on return type mismatches
RalfJung Jul 27, 2025
43eaa4f
Merge pull request #4496 from RalfJung/ctor-ret-type
RalfJung Jul 27, 2025
49eda8e
fix(debuginfo): disable overflow check for
godzie44 Jul 24, 2025
fd65b7e
introduce a macro for shim signature checking
RalfJung Jul 27, 2025
b59c40e
Merge pull request #4497 from RalfJung/check-shim
RalfJung Jul 27, 2025
4125905
Add support for building and linking against genmc
Patrick-6 Mar 14, 2025
87b8cb0
various minor adjustments
RalfJung Jul 27, 2025
c751579
Merge pull request #4498 from RalfJung/genmc-build
RalfJung Jul 27, 2025
a20692c
centralize clockid_t interpretation
RalfJung Jul 27, 2025
0570fb4
Merge pull request #4499 from RalfJung/clockid
RalfJung Jul 27, 2025
fbd553e
prepare for sync
RalfJung Jul 28, 2025
8bf3251
Merge commit 'abd9cba5acbcc35fb4cc59ce25580fa1624b5571'
RalfJung Jul 28, 2025
dea3e13
revert accidental change
RalfJung Jul 28, 2025
fb46410
Merge pull request #4500 from RalfJung/rustup
RalfJung Jul 28, 2025
ecb046a
Reduce required cc crate version.
Patrick-6 Jul 28, 2025
9176fee
Merge pull request #4502 from Patrick-6/reduce-cc-version
RalfJung Jul 28, 2025
f63f212
use dry_run and verbose directly from exec_ctx
Shourya742 Jul 28, 2025
d87b4f2
fix: Reject upvar scrutinees for `loop_match`
ShoyuVanilla Jul 25, 2025
d409694
lookup_link_section: support arrays of function pointers
RalfJung Jul 28, 2025
db42d5b
remove config wrappers of download_toolchain and maybe_download_fmt a…
Shourya742 Jul 28, 2025
86e9370
Merge pull request #4504 from RalfJung/link-section-arrays
RalfJung Jul 28, 2025
73751a0
thread name in stack overflow message
joboet Jul 26, 2025
c071101
make sure to populate DownloadState dependencies before its initializ…
Shourya742 Jul 28, 2025
5185a66
tidy: increase performance of auto extra checks feature
lolbinarycat Jul 25, 2025
4096582
bootstrap: enable tidy auto extra checks on tools profile
lolbinarycat Jul 28, 2025
327ee15
Ensure external paths passed via flags end up in rustdoc depinfo
Noratrieb Jul 28, 2025
aa97672
feat: Right align line numbers
Muscraft May 30, 2025
dc33eb6
update lockfile and bless tidy
RalfJung Jul 29, 2025
e532080
cc dependencies: clarify comment
RalfJung Jul 29, 2025
b8302ce
Add a regression test for an ICE with the `generic_const_exprs` featu…
jakubadamw Jul 29, 2025
ec4dc1c
clean up existing poison files
connortsui20 Jul 23, 2025
3bdc228
add `nonpoison::mutex` implementation
connortsui20 Jul 23, 2025
f34fb05
reorder mutex tests
connortsui20 Jul 23, 2025
3eb722e
add nonpoison and poison mutex tests
connortsui20 Jul 23, 2025
d073d29
add extra drop, panic, and unwind tests
connortsui20 Jul 29, 2025
4bc1b98
Rollup merge of #144022 - connortsui20:sync_nonpoison, r=tgross35
Zalathar Jul 29, 2025
9cba498
Rollup merge of #144167 - zachs18:rangebounds-not-unsized-reason, r=t…
Zalathar Jul 29, 2025
b3962e8
Rollup merge of #144407 - godzie44:godzie44/fix_dwarf_inconsistency, …
Zalathar Jul 29, 2025
dbcf168
Rollup merge of #144451 - ShoyuVanilla:loop-match-upvar, r=oli-obk
Zalathar Jul 29, 2025
047304b
Rollup merge of #144482 - Shourya742:2025-07-24-have-explicit-downloa…
Zalathar Jul 29, 2025
4bfbd80
Rollup merge of #144500 - joboet:thread-name-stack-overflow, r=ChrisD…
Zalathar Jul 29, 2025
df7da14
Rollup merge of #144511 - lolbinarycat:tidy-extra-checks-opt, r=Kobzol
Zalathar Jul 29, 2025
0abc0c4
Rollup merge of #144599 - lolbinarycat:bootstrap-build.tidy-extra-che…
Zalathar Jul 29, 2025
03bb80c
Rollup merge of #144600 - Noratrieb:rustdoc-dep-info-paths, r=Guillau…
Zalathar Jul 29, 2025
15ddf9c
Rollup merge of #144609 - Muscraft:right-align, r=compiler-errors
Zalathar Jul 29, 2025
f034a4f
Rollup merge of #144623 - RalfJung:miri, r=RalfJung
Zalathar Jul 29, 2025
f5c5736
Rollup merge of #144626 - RalfJung:cc-pin-comment, r=lqd
Zalathar Jul 29, 2025
ba29c0d
Rollup merge of #144627 - jakubadamw:issue-129882, r=lqd
Zalathar Jul 29, 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
139 changes: 139 additions & 0 deletions Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -466,6 +466,8 @@ version = "1.2.16"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "be714c154be609ec7f5dad223a33bf1482fff90472de28f7362806e6d4832b8c"
dependencies = [
"jobserver",
"libc",
"shlex",
]

Expand Down Expand Up @@ -655,6 +657,26 @@ dependencies = [
"serde",
]

[[package]]
name = "cmake"
version = "0.1.54"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7caa3f9de89ddbe2c607f4101924c5abec803763ae9534e4f4d7d8f84aa81f0"
dependencies = [
"cc",
]

[[package]]
name = "codespan-reporting"
version = "0.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fe6d2e5af09e8c8ad56c969f2157a3d4238cebc7c55f0a517728c38f7b200f81"
dependencies = [
"serde",
"termcolor",
"unicode-width 0.2.1",
]

[[package]]
name = "collect-license-metadata"
version = "0.1.0"
Expand Down Expand Up @@ -913,6 +935,68 @@ dependencies = [
"windows-sys 0.59.0",
]

[[package]]
name = "cxx"
version = "1.0.161"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a3523cc02ad831111491dd64b27ad999f1ae189986728e477604e61b81f828df"
dependencies = [
"cc",
"cxxbridge-cmd",
"cxxbridge-flags",
"cxxbridge-macro",
"foldhash",
"link-cplusplus",
]

[[package]]
name = "cxx-build"
version = "1.0.161"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "212b754247a6f07b10fa626628c157593f0abf640a3dd04cce2760eca970f909"
dependencies = [
"cc",
"codespan-reporting",
"indexmap",
"proc-macro2",
"quote",
"scratch",
"syn 2.0.104",
]

[[package]]
name = "cxxbridge-cmd"
version = "1.0.161"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f426a20413ec2e742520ba6837c9324b55ffac24ead47491a6e29f933c5b135a"
dependencies = [
"clap",
"codespan-reporting",
"indexmap",
"proc-macro2",
"quote",
"syn 2.0.104",
]

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

[[package]]
name = "cxxbridge-macro"
version = "1.0.161"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8dec184b52be5008d6eaf7e62fc1802caf1ad1227d11b3b7df2c409c7ffc3f4"
dependencies = [
"indexmap",
"proc-macro2",
"quote",
"rustversion",
"syn 2.0.104",
]

[[package]]
name = "darling"
version = "0.20.11"
Expand Down Expand Up @@ -1373,6 +1457,17 @@ dependencies = [
"version_check",
]

[[package]]
name = "genmc-sys"
version = "0.1.0"
dependencies = [
"cc",
"cmake",
"cxx",
"cxx-build",
"git2",
]

[[package]]
name = "getopts"
version = "0.2.23"
Expand Down Expand Up @@ -1427,6 +1522,21 @@ dependencies = [
"stable_deref_trait",
]

[[package]]
name = "git2"
version = "0.20.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2deb07a133b1520dc1a5690e9bd08950108873d7ed5de38dcc74d3b5ebffa110"
dependencies = [
"bitflags",
"libc",
"libgit2-sys",
"log",
"openssl-probe",
"openssl-sys",
"url",
]

[[package]]
name = "glob"
version = "0.3.2"
Expand Down Expand Up @@ -2060,6 +2170,19 @@ dependencies = [
"cc",
]

[[package]]
name = "libgit2-sys"
version = "0.18.2+1.9.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c42fe03df2bd3c53a3a9c7317ad91d80c81cd1fb0caec8d7cc4cd2bfa10c222"
dependencies = [
"cc",
"libc",
"libz-sys",
"openssl-sys",
"pkg-config",
]

[[package]]
name = "libloading"
version = "0.8.8"
Expand Down Expand Up @@ -2099,6 +2222,15 @@ dependencies = [
"vcpkg",
]

[[package]]
name = "link-cplusplus"
version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4a6f6da007f968f9def0d65a05b187e2960183de70c160204ecfccf0ee330212"
dependencies = [
"cc",
]

[[package]]
name = "linkchecker"
version = "0.1.0"
Expand Down Expand Up @@ -2308,6 +2440,7 @@ dependencies = [
"chrono-tz",
"colored 3.0.0",
"directories",
"genmc-sys",
"getrandom 0.3.3",
"ipc-channel",
"libc",
Expand Down Expand Up @@ -4877,6 +5010,12 @@ version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"

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

[[package]]
name = "self_cell"
version = "1.2.0"
Expand Down
3 changes: 3 additions & 0 deletions bootstrap.example.toml
Original file line number Diff line number Diff line change
Expand Up @@ -475,6 +475,9 @@
# Note that if any value is manually given to bootstrap such as
# `./x test tidy --extra-checks=js`, this value is ignored.
# Use `--extra-checks=''` to temporarily disable all extra checks.
#
# Automatically enabled in the "tools" profile.
# Set to the empty string to force disable (recommeded for hdd systems).
#build.tidy-extra-checks = ""

# Indicates whether ccache is used when building certain artifacts (e.g. LLVM).
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -285,8 +285,8 @@ pub(super) fn build_type_with_children<'ll, 'tcx>(
// Item(T),
// }
// ```
let is_expanding_recursive =
debug_context(cx).adt_stack.borrow().iter().any(|(parent_def_id, parent_args)| {
let is_expanding_recursive = adt_def.is_enum()
&& debug_context(cx).adt_stack.borrow().iter().any(|(parent_def_id, parent_args)| {
if def_id == *parent_def_id {
args.iter().zip(parent_args.iter()).any(|(arg, parent_arg)| {
if let (Some(arg), Some(parent_arg)) = (arg.as_type(), parent_arg.as_type())
Expand Down
4 changes: 2 additions & 2 deletions compiler/rustc_codegen_ssa/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ edition = "2024"
ar_archive_writer = "0.4.2"
bitflags = "2.4.1"
bstr = "1.11.3"
# Pinned so `cargo update` bumps don't cause breakage. Please also update the
# `cc` in `rustc_llvm` if you update the `cc` here.
# `cc` updates often break things, so we pin it here. Cargo enforces "max 1 semver-compat version
# per crate", so if you change this, you need to also change it in `rustc_llvm`.
cc = "=1.2.16"
itertools = "0.12"
pathdiff = "0.2.0"
Expand Down
50 changes: 30 additions & 20 deletions compiler/rustc_errors/src/emitter.rs
Original file line number Diff line number Diff line change
Expand Up @@ -713,8 +713,7 @@ impl HumanEmitter {
Style::LineNumber,
);
}
buffer.puts(line_offset, 0, &self.maybe_anonymized(line_index), Style::LineNumber);

self.draw_line_num(buffer, line_index, line_offset, width_offset - 3);
self.draw_col_separator_no_space(buffer, line_offset, width_offset - 2);
left
}
Expand Down Expand Up @@ -2128,11 +2127,11 @@ impl HumanEmitter {
// Account for a suggestion to completely remove a line(s) with whitespace (#94192).
let line_end = sm.lookup_char_pos(parts[0].span.hi()).line;
for line in line_start..=line_end {
buffer.puts(
self.draw_line_num(
&mut buffer,
line,
row_num - 1 + line - line_start,
0,
&self.maybe_anonymized(line),
Style::LineNumber,
max_line_num_len,
);
buffer.puts(
row_num - 1 + line - line_start,
Expand Down Expand Up @@ -2612,12 +2611,7 @@ impl HumanEmitter {
// For more info: https://github.com/rust-lang/rust/issues/92741
let lines_to_remove = file_lines.lines.iter().take(file_lines.lines.len() - 1);
for (index, line_to_remove) in lines_to_remove.enumerate() {
buffer.puts(
*row_num - 1,
0,
&self.maybe_anonymized(line_num + index),
Style::LineNumber,
);
self.draw_line_num(buffer, line_num + index, *row_num - 1, max_line_num_len);
buffer.puts(*row_num - 1, max_line_num_len + 1, "- ", Style::Removal);
let line = normalize_whitespace(
&file_lines.file.get_line(line_to_remove.line_index).unwrap(),
Expand All @@ -2634,11 +2628,11 @@ impl HumanEmitter {
let last_line_index = file_lines.lines[file_lines.lines.len() - 1].line_index;
let last_line = &file_lines.file.get_line(last_line_index).unwrap();
if last_line != line_to_add {
buffer.puts(
self.draw_line_num(
buffer,
line_num + file_lines.lines.len() - 1,
*row_num - 1,
0,
&self.maybe_anonymized(line_num + file_lines.lines.len() - 1),
Style::LineNumber,
max_line_num_len,
);
buffer.puts(*row_num - 1, max_line_num_len + 1, "- ", Style::Removal);
buffer.puts(
Expand All @@ -2661,7 +2655,7 @@ impl HumanEmitter {
// 2 - .await
// |
// *row_num -= 1;
buffer.puts(*row_num, 0, &self.maybe_anonymized(line_num), Style::LineNumber);
self.draw_line_num(buffer, line_num, *row_num, max_line_num_len);
buffer.puts(*row_num, max_line_num_len + 1, "+ ", Style::Addition);
buffer.append(*row_num, &normalize_whitespace(line_to_add), Style::NoStyle);
} else {
Expand All @@ -2671,7 +2665,7 @@ impl HumanEmitter {
*row_num -= 2;
}
} else if is_multiline {
buffer.puts(*row_num, 0, &self.maybe_anonymized(line_num), Style::LineNumber);
self.draw_line_num(buffer, line_num, *row_num, max_line_num_len);
match &highlight_parts {
[SubstitutionHighlight { start: 0, end }] if *end == line_to_add.len() => {
buffer.puts(*row_num, max_line_num_len + 1, "+ ", Style::Addition);
Expand Down Expand Up @@ -2702,11 +2696,11 @@ impl HumanEmitter {
Style::NoStyle,
);
} else if let DisplaySuggestion::Add = show_code_change {
buffer.puts(*row_num, 0, &self.maybe_anonymized(line_num), Style::LineNumber);
self.draw_line_num(buffer, line_num, *row_num, max_line_num_len);
buffer.puts(*row_num, max_line_num_len + 1, "+ ", Style::Addition);
buffer.append(*row_num, &normalize_whitespace(line_to_add), Style::NoStyle);
} else {
buffer.puts(*row_num, 0, &self.maybe_anonymized(line_num), Style::LineNumber);
self.draw_line_num(buffer, line_num, *row_num, max_line_num_len);
self.draw_col_separator(buffer, *row_num, max_line_num_len + 1);
buffer.append(*row_num, &normalize_whitespace(line_to_add), Style::NoStyle);
}
Expand Down Expand Up @@ -3016,6 +3010,22 @@ impl HumanEmitter {
OutputTheme::Unicode => "…",
}
}

fn draw_line_num(
&self,
buffer: &mut StyledBuffer,
line_num: usize,
line_offset: usize,
max_line_num_len: usize,
) {
let line_num = self.maybe_anonymized(line_num);
buffer.puts(
line_offset,
max_line_num_len.saturating_sub(str_width(&line_num)),
&line_num,
Style::LineNumber,
);
}
}

#[derive(Debug, Clone, Copy)]
Expand Down
4 changes: 2 additions & 2 deletions compiler/rustc_llvm/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,8 +10,8 @@ libc = "0.2.73"

[build-dependencies]
# tidy-alphabetical-start
# Pinned so `cargo update` bumps don't cause breakage. Please also update the
# pinned `cc` in `rustc_codegen_ssa` if you update `cc` here.
# `cc` updates often break things, so we pin it here. Cargo enforces "max 1 semver-compat version
# per crate", so if you change this, you need to also change it in `rustc_codegen_ssa`.
cc = "=1.2.16"
# tidy-alphabetical-end

Expand Down
Loading
Loading