Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
7672b83
Upgrade and deduplicate dependencies
cuviper Aug 4, 2026
c234ba3
Update run-make/wasm tests
cuviper Aug 9, 2026
46eb4fd
clippy::needless_borrow
ChrisDenton Aug 12, 2026
ddd8fa0
clippy::op_ref
ChrisDenton Aug 12, 2026
fafcb2b
clippy::borrow_deref_ref
ChrisDenton Aug 13, 2026
d9d6acf
clippy::explicit_auto_deref
ChrisDenton Aug 13, 2026
5653e8f
Library: enforce clippy deref lints in CI
ChrisDenton Aug 13, 2026
7f74e59
Ignore clippy lint in backtrace submodule
ChrisDenton Aug 13, 2026
581ac1c
Add documentation for BPF targets
vadorovsky Aug 15, 2026
0958d0c
Switch to c8a EC2 runner for auto merges
Mark-Simulacrum Aug 15, 2026
d061443
Update `browser-ui-test` version to `0.25.1`
GuillaumeGomez Aug 15, 2026
3183856
Fix typo in search.js
GuillaumeGomez Aug 15, 2026
7748068
Add back flaky rustdoc-gui test with some small tweaks
GuillaumeGomez Aug 15, 2026
f955803
Move `LLVM_TOOLS` and `LLD_FILE_NAMES` into `build_steps::dist`
Zalathar Aug 16, 2026
73960bf
Move `EXTRA_CHECK_CFGS` into `crate::core::builder::cargo`
Zalathar Aug 16, 2026
43620bc
Describe Linux kernel version reqirements
vadorovsky Aug 16, 2026
7e27076
Mention the plan of using GNU flabor of linker
vadorovsky Aug 16, 2026
3da3659
Fix the link to the BPF ABI convention
vadorovsky Aug 16, 2026
ea31c35
Remove the "no-op" word from panic handler description
vadorovsky Aug 16, 2026
5e54aa2
Pin all kernel links to the v6.13
vadorovsky Aug 16, 2026
9612357
Move `Compiler` to its own module `crate::core::compiler`
Zalathar Aug 16, 2026
38c260e
Move `CodegenBackendKind` to its own module `crate::core::backend`
Zalathar Aug 16, 2026
9ff48b2
Move `TestTarget` into `build_steps::test`
Zalathar Aug 16, 2026
57033a0
Move `Crate` into `crate::core::metadata`
Zalathar Aug 16, 2026
af768f6
Move `envify` into `crate::utils::helpers` and add a test
Zalathar Aug 16, 2026
d5a8464
Move/rename/adjust `prepare_behaviour_dump_dir`
Zalathar Aug 16, 2026
38210f8
Rollup merge of #160529 - cuviper:deps, r=Mark-Simulacrum
JonathanBrouwer Aug 16, 2026
dfcd6e8
Rollup merge of #161017 - ChrisDenton:clippy2, r=nia-e
JonathanBrouwer Aug 16, 2026
6568b78
Rollup merge of #161141 - vadorovsky:vad/docs-platform-bpf, r=nagisa,…
JonathanBrouwer Aug 16, 2026
0855b11
Rollup merge of #161157 - Zalathar:bootstrap-root, r=Kobzol
JonathanBrouwer Aug 16, 2026
4c24487
Rollup merge of #161146 - Mark-Simulacrum:ec2-auto, r=Kobzol
JonathanBrouwer Aug 16, 2026
629812f
Rollup merge of #161148 - GuillaumeGomez:put-back-gui-test, r=Urgau
JonathanBrouwer Aug 16, 2026
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
297 changes: 47 additions & 250 deletions Cargo.lock

Large diffs are not rendered by default.

4 changes: 2 additions & 2 deletions compiler/rustc_codegen_gcc/Cargo.lock
Original file line number Diff line number Diff line change
Expand Up @@ -145,9 +145,9 @@ dependencies = [

[[package]]
name = "object"
version = "0.37.1"
version = "0.39.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "03fd943161069e1768b4b3d050890ba48730e590f57e56d4aa04e7e090e61b4a"
checksum = "2e5a6c098c7a3b6547378093f5cc30bc54fd361ce711e05293a5cc589562739b"
dependencies = [
"memchr",
]
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_codegen_gcc/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ master = ["gccjit/master"]
default = ["master"]

[dependencies]
object = { version = "0.37.0", default-features = false, features = ["std", "read"] }
object = { version = "0.39.0", default-features = false, features = ["std", "read"] }
tempfile = "3.20"
gccjit = { version = "3.3.0", features = ["dlopen"] }
#gccjit = { git = "https://github.com/rust-lang/gccjit.rs", branch = "error-dlopen", features = ["dlopen"] }
Expand Down
4 changes: 2 additions & 2 deletions compiler/rustc_codegen_llvm/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ test = false
bitflags = "2.4.1"
# To avoid duplicate dependencies, this should match the version of gimli used
# by `rustc_codegen_ssa` via its `thorin-dwp` dependency.
gimli = "0.33"
gimli = "0.34"
itertools = "0.15"
libc = "0.2"
libloading = { version = "0.9.0" }
measureme = "12.0.1"
object = { version = "0.38.1", default-features = false, features = ["std", "read"] }
object = { version = "0.39.1", default-features = false, features = ["std", "read"] }
rustc-demangle = "0.1.28"
rustc_abi = { path = "../rustc_abi" }
rustc_ast = { path = "../rustc_ast" }
Expand Down
6 changes: 3 additions & 3 deletions compiler/rustc_codegen_ssa/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -38,9 +38,9 @@ rustc_trait_selection = { path = "../rustc_trait_selection" }
serde_json = "1.0.59"
smallvec = { version = "1.8.1", features = ["union", "may_dangle"] }
tempfile = "3.2"
thorin-dwp = "0.10"
thorin-dwp = "0.11"
tracing = "0.1"
wasm-encoder = "0.219"
wasm-encoder = "0.247"
# tidy-alphabetical-end

[target.'cfg(unix)'.dependencies]
Expand All @@ -49,7 +49,7 @@ libc = "0.2.50"
# tidy-alphabetical-end

[dependencies.object]
version = "0.38.1"
version = "0.39.1"
default-features = false
features = ["read_core", "elf", "macho", "pe", "xcoff", "unaligned", "archive", "write", "wasm"]

Expand Down
6 changes: 3 additions & 3 deletions compiler/rustc_codegen_ssa/src/back/link/raw_dylib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -477,13 +477,13 @@ fn create_elf_raw_dylib_stub(sess: &Session, soname: &str, symbols: &[DllImport]
// the DT_SONAME will be used by the linker to populate DT_NEEDED
// which the loader uses to find the library.
stub.write_align_dynamic();
stub.write_dynamic_string(elf::DT_SONAME, soname);
stub.write_dynamic_string(elf::DT_SONAME, soname).unwrap();
// LSB section "2.7. Symbol Versioning" requires `DT_VERDEFNUM` to be reliable.
if verdef_count > 1 {
stub.write_dynamic(elf::DT_VERDEFNUM, verdef_count as u64);
stub.write_dynamic(elf::DT_VERDEFNUM, verdef_count as u64).unwrap();
}
// DT_NULL terminates the .dynamic table.
stub.write_dynamic(elf::DT_NULL, 0);
stub.write_dynamic(elf::DT_NULL, 0).unwrap();

stub_buf
}
2 changes: 1 addition & 1 deletion compiler/rustc_metadata/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ edition = "2024"
[dependencies]
# tidy-alphabetical-start
bitflags = "2.4.1"
libloading = "0.8.0"
libloading = "0.9.0"
odht = { version = "0.3.1", features = ["nightly"] }
rustc_abi = { path = "../rustc_abi" }
rustc_ast = { path = "../rustc_ast" }
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_metadata/src/host_dylib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ fn attempt_load_dylib(path: &Path) -> Result<libloading::Library, libloading::Er
.map(|lib| lib.into());
}

unsafe { libloading::Library::new(&path) }
unsafe { libloading::Library::new(path) }
}

// On Windows the compiler would sometimes intermittently fail to open the
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_target/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ edition = "2024"
# tidy-alphabetical-start
arrayvec = { version = "0.7", default-features = false }
bitflags = "2.4.1"
object = { version = "0.38.1", default-features = false, features = ["elf", "macho"] }
object = { version = "0.39.1", default-features = false, features = ["elf", "macho"] }
rustc_abi = { path = "../rustc_abi" }
rustc_data_structures = { path = "../rustc_data_structures" }
rustc_error_messages = { path = "../rustc_error_messages" }
Expand Down
2 changes: 1 addition & 1 deletion library/alloc/src/borrow.rs
Original file line number Diff line number Diff line change
Expand Up @@ -188,7 +188,7 @@ impl<'a, B: ?Sized + ToOwned> Borrow<B> for Cow<'a, B>
// B::Owned: [const] Borrow<B>,
{
fn borrow(&self) -> &B {
&**self
self
}
}

Expand Down
14 changes: 7 additions & 7 deletions library/alloc/src/boxed.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2144,7 +2144,7 @@ impl<T: Clone, A: Allocator + Clone> Clone for Box<[T], A> {
/// ```
fn clone_from(&mut self, source: &Self) {
if self.len() == source.len() {
self.clone_from_slice(&source);
self.clone_from_slice(source);
} else {
*self = source.clone();
}
Expand Down Expand Up @@ -2295,14 +2295,14 @@ impl<T: ?Sized, A: Allocator> Deref for Box<T, A> {
type Target = T;

fn deref(&self) -> &T {
&**self
self
}
}

#[stable(feature = "rust1", since = "1.0.0")]
impl<T: ?Sized, A: Allocator> DerefMut for Box<T, A> {
fn deref_mut(&mut self) -> &mut T {
&mut **self
self
}
}

Expand Down Expand Up @@ -2398,28 +2398,28 @@ impl<T: ?Sized + Unsize<U>, U: ?Sized> DispatchFromDyn<Box<U>> for Box<T, Global
#[stable(feature = "box_borrow", since = "1.1.0")]
impl<T: ?Sized, A: Allocator> Borrow<T> for Box<T, A> {
fn borrow(&self) -> &T {
&**self
self
}
}

#[stable(feature = "box_borrow", since = "1.1.0")]
impl<T: ?Sized, A: Allocator> BorrowMut<T> for Box<T, A> {
fn borrow_mut(&mut self) -> &mut T {
&mut **self
self
}
}

#[stable(since = "1.5.0", feature = "smart_ptr_as_ref")]
impl<T: ?Sized, A: Allocator> AsRef<T> for Box<T, A> {
fn as_ref(&self) -> &T {
&**self
self
}
}

#[stable(since = "1.5.0", feature = "smart_ptr_as_ref")]
impl<T: ?Sized, A: Allocator> AsMut<T> for Box<T, A> {
fn as_mut(&mut self) -> &mut T {
&mut **self
self
}
}

Expand Down
6 changes: 3 additions & 3 deletions library/alloc/src/collections/btree/map.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1572,7 +1572,7 @@ impl<K, V, A: Allocator + Clone> BTreeMap<K, V, A> {

let right_root = left_root.split_off(key, (*self.alloc).clone());

let (new_left_len, right_len) = Root::calc_split_length(total_num, &left_root, &right_root);
let (new_left_len, right_len) = Root::calc_split_length(total_num, left_root, &right_root);
self.length = new_left_len;

BTreeMap {
Expand Down Expand Up @@ -2208,8 +2208,8 @@ impl<'a, K, V, R> ExtractIfInner<'a, K, V, R> {
// On creation, we navigated directly to the left bound, so we need only check the
// right bound here to decide whether to stop.
match self.range.end_bound() {
Bound::Included(ref end) if (*k).le(end) => (),
Bound::Excluded(ref end) if (*k).lt(end) => (),
Bound::Included(end) if (*k).le(end) => (),
Bound::Excluded(end) if (*k).lt(end) => (),
Bound::Unbounded => (),
_ => return None,
}
Expand Down
2 changes: 1 addition & 1 deletion library/alloc/src/collections/btree/node.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1430,7 +1430,7 @@ impl<'a, K: 'a, V: 'a> BalancingContext<'a, K, V> {
left_node.val_area_mut(old_left_len + 1..new_left_len),
);

slice_remove(&mut parent_node.edge_area_mut(..old_parent_len + 1), parent_idx + 1);
slice_remove(parent_node.edge_area_mut(..old_parent_len + 1), parent_idx + 1);
parent_node.correct_childrens_parent_links(parent_idx + 1..old_parent_len);
*parent_node.len_mut() -= 1;

Expand Down
4 changes: 2 additions & 2 deletions library/alloc/src/collections/btree/set.rs
Original file line number Diff line number Diff line change
Expand Up @@ -1971,7 +1971,7 @@ impl<'a, T: Ord, A: Allocator + Clone> Iterator for Difference<'a, T, A> {
}
DifferenceInner::Search { self_iter, other_set } => loop {
let self_next = self_iter.next()?;
if !other_set.contains(&self_next) {
if !other_set.contains(self_next) {
return Some(self_next);
}
},
Expand Down Expand Up @@ -2068,7 +2068,7 @@ impl<'a, T: Ord, A: Allocator + Clone> Iterator for Intersection<'a, T, A> {
}
IntersectionInner::Search { small_iter, large_set } => loop {
let small_next = small_iter.next()?;
if large_set.contains(&small_next) {
if large_set.contains(small_next) {
return Some(small_next);
}
},
Expand Down
8 changes: 4 additions & 4 deletions library/alloc/src/io/impls.rs
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,7 @@ impl Read for &[u8] {
fn read_buf_exact(&mut self, mut cursor: BorrowedCursor<'_, u8>) -> io::Result<()> {
if cursor.capacity() > self.len() {
// Append everything we can to the cursor.
cursor.append(*self);
cursor.append(self);
*self = &self[self.len()..];
return Err(io::Error::READ_EXACT_EOF);
}
Expand All @@ -349,7 +349,7 @@ impl Read for &[u8] {
buf.try_extend_from_slice_of_bytes(*self)?;
}
_ => {
buf.extend_from_slice(*self);
buf.extend_from_slice(self);
}
}

Expand Down Expand Up @@ -625,7 +625,7 @@ where

#[inline]
fn is_read_vectored(&self) -> bool {
(&**self).is_read_vectored()
(**self).is_read_vectored()
}

#[inline]
Expand Down Expand Up @@ -667,7 +667,7 @@ where

#[inline]
fn is_write_vectored(&self) -> bool {
(&**self).is_write_vectored()
(**self).is_write_vectored()
}

#[inline]
Expand Down
12 changes: 6 additions & 6 deletions library/alloc/src/rc.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3858,14 +3858,14 @@ impl<'a> RcInnerPtr for WeakInner<'a> {
#[stable(feature = "rust1", since = "1.0.0")]
impl<T: ?Sized, A: Allocator> borrow::Borrow<T> for Rc<T, A> {
fn borrow(&self) -> &T {
&**self
self
}
}

#[stable(since = "1.5.0", feature = "smart_ptr_as_ref")]
impl<T: ?Sized, A: Allocator> AsRef<T> for Rc<T, A> {
fn as_ref(&self) -> &T {
&**self
self
}
}

Expand Down Expand Up @@ -3990,28 +3990,28 @@ impl<T: ?Sized, A: Allocator> fmt::Pointer for UniqueRc<T, A> {
#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> borrow::Borrow<T> for UniqueRc<T, A> {
fn borrow(&self) -> &T {
&**self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> borrow::BorrowMut<T> for UniqueRc<T, A> {
fn borrow_mut(&mut self) -> &mut T {
&mut **self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> AsRef<T> for UniqueRc<T, A> {
fn as_ref(&self) -> &T {
&**self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> AsMut<T> for UniqueRc<T, A> {
fn as_mut(&mut self) -> &mut T {
&mut **self
self
}
}

Expand Down
14 changes: 7 additions & 7 deletions library/alloc/src/sync.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3836,7 +3836,7 @@ impl Default for Arc<str> {
#[inline]
fn default() -> Self {
let arc: Arc<[u8]> = Default::default();
debug_assert!(core::str::from_utf8(&*arc).is_ok());
debug_assert!(core::str::from_utf8(&arc).is_ok());
let (ptr, alloc) = Arc::into_inner_with_allocator(arc);
unsafe { Arc::from_ptr_in(ptr.as_ptr() as *mut ArcInner<str>, alloc) }
}
Expand Down Expand Up @@ -4246,14 +4246,14 @@ impl<T, I: iter::TrustedLen<Item = T>> ToArcSlice<T> for I {
#[stable(feature = "rust1", since = "1.0.0")]
impl<T: ?Sized, A: Allocator> borrow::Borrow<T> for Arc<T, A> {
fn borrow(&self) -> &T {
&**self
self
}
}

#[stable(since = "1.5.0", feature = "smart_ptr_as_ref")]
impl<T: ?Sized, A: Allocator> AsRef<T> for Arc<T, A> {
fn as_ref(&self) -> &T {
&**self
self
}
}

Expand Down Expand Up @@ -4463,28 +4463,28 @@ impl<T: ?Sized, A: Allocator> fmt::Pointer for UniqueArc<T, A> {
#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> borrow::Borrow<T> for UniqueArc<T, A> {
fn borrow(&self) -> &T {
&**self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> borrow::BorrowMut<T> for UniqueArc<T, A> {
fn borrow_mut(&mut self) -> &mut T {
&mut **self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> AsRef<T> for UniqueArc<T, A> {
fn as_ref(&self) -> &T {
&**self
self
}
}

#[unstable(feature = "unique_rc_arc", issue = "112566")]
impl<T: ?Sized, A: Allocator> AsMut<T> for UniqueArc<T, A> {
fn as_mut(&mut self) -> &mut T {
&mut **self
self
}
}

Expand Down
2 changes: 1 addition & 1 deletion library/alloc/src/vec/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -3878,7 +3878,7 @@ impl<T: Clone, A: Allocator + Clone> Clone for Vec<T, A> {
/// capacity of the original.
fn clone(&self) -> Self {
let alloc = self.allocator().clone();
<[T]>::to_vec_in(&**self, alloc)
<[T]>::to_vec_in(self, alloc)
}

/// Overwrites the contents of `self` with a clone of the contents of `source`.
Expand Down
2 changes: 1 addition & 1 deletion library/alloc/src/vec/splice.rs
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,7 @@ impl<I: Iterator, A: Allocator> Drop for Splice<'_, I, A> {
// Which means we can replace the slice::Iter with pointers that won't point to deallocated
// memory, so that Drain::drop is still allowed to call iter.len(), otherwise it would break
// the ptr.offset_from_unsigned contract.
self.drain.iter = (&[]).iter();
self.drain.iter = [].iter();

unsafe {
if self.drain.tail_len == 0 {
Expand Down
4 changes: 2 additions & 2 deletions library/alloc/src/wtf8/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -284,7 +284,7 @@ impl Wtf8Buf {
/// like concatenating ill-formed UTF-16 strings effectively would.
#[inline]
pub fn push_wtf8(&mut self, other: &Wtf8) {
match ((&*self).final_lead_surrogate(), other.initial_trail_surrogate()) {
match ((*self).final_lead_surrogate(), other.initial_trail_surrogate()) {
// Replace newly paired surrogates by a supplementary code point.
(Some(lead), Some(trail)) => {
let len_without_lead_surrogate = self.len() - 3;
Expand Down Expand Up @@ -322,7 +322,7 @@ impl Wtf8Buf {
#[inline]
pub fn push(&mut self, code_point: CodePoint) {
if let Some(trail) = code_point.to_trail_surrogate() {
if let Some(lead) = (&*self).final_lead_surrogate() {
if let Some(lead) = (*self).final_lead_surrogate() {
let len_without_lead_surrogate = self.len() - 3;
self.bytes.truncate(len_without_lead_surrogate);
self.push_char(decode_surrogate_pair(lead, trail));
Expand Down
Loading
Loading