Skip to content
This repository was archived by the owner on May 28, 2025. It is now read-only.

Commit 6757779

Browse files
committed
Auto merge of rust-lang#119981 - matthiaskrgr:rollup-v82kpkl, r=matthiaskrgr
Rollup of 7 pull requests Successful merges: - rust-lang#119508 (coverage: Simplify building the coverage graph with `CoverageSuccessors`) - rust-lang#119818 (Silence some follow-up errors [3/x]) - rust-lang#119870 (std: Doc blocking behavior of LazyLock) - rust-lang#119963 (Fix `allow_internal_unstable` for `(min_)specialization`) - rust-lang#119968 (Remove unused/unnecessary features) - rust-lang#119971 (Use `zip_eq` to enforce that things being zipped have equal sizes) - rust-lang#119974 (Minor `trimmed_def_paths` improvements) r? `@ghost` `@rustbot` modify labels: rollup
2 parents 9567c3e + 1b27677 commit 6757779

File tree

73 files changed

+276
-349
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

73 files changed

+276
-349
lines changed

Cargo.lock

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3879,6 +3879,7 @@ dependencies = [
38793879
name = "rustc_hir_analysis"
38803880
version = "0.0.0"
38813881
dependencies = [
3882+
"itertools",
38823883
"rustc_arena",
38833884
"rustc_ast",
38843885
"rustc_attr",
@@ -3917,6 +3918,7 @@ dependencies = [
39173918
name = "rustc_hir_typeck"
39183919
version = "0.0.0"
39193920
dependencies = [
3921+
"itertools",
39203922
"rustc_ast",
39213923
"rustc_attr",
39223924
"rustc_data_structures",
@@ -4200,6 +4202,7 @@ name = "rustc_mir_build"
42004202
version = "0.0.0"
42014203
dependencies = [
42024204
"either",
4205+
"itertools",
42034206
"rustc_apfloat",
42044207
"rustc_arena",
42054208
"rustc_ast",

compiler/rustc_ast/src/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,13 +13,11 @@
1313
#![feature(rustdoc_internals)]
1414
#![feature(associated_type_bounds)]
1515
#![feature(box_patterns)]
16-
#![feature(const_trait_impl)]
1716
#![feature(if_let_guard)]
1817
#![feature(let_chains)]
1918
#![feature(min_specialization)]
2019
#![feature(negative_impls)]
2120
#![feature(stmt_expr_attributes)]
22-
#![recursion_limit = "256"]
2321
#![deny(rustc::untranslatable_diagnostic)]
2422
#![deny(rustc::diagnostic_outside_of_impl)]
2523

compiler/rustc_ast_lowering/src/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,10 +33,8 @@
3333
#![allow(internal_features)]
3434
#![feature(rustdoc_internals)]
3535
#![doc(rust_logo)]
36-
#![feature(if_let_guard)]
3736
#![feature(box_patterns)]
3837
#![feature(let_chains)]
39-
#![recursion_limit = "256"]
4038
#![deny(rustc::untranslatable_diagnostic)]
4139
#![deny(rustc::diagnostic_outside_of_impl)]
4240

compiler/rustc_ast_passes/src/lib.rs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,6 @@
1111
#![feature(if_let_guard)]
1212
#![feature(iter_is_partitioned)]
1313
#![feature(let_chains)]
14-
#![recursion_limit = "256"]
1514
#![deny(rustc::untranslatable_diagnostic)]
1615
#![deny(rustc::diagnostic_outside_of_impl)]
1716

compiler/rustc_ast_pretty/src/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,6 @@
44
#![deny(rustc::untranslatable_diagnostic)]
55
#![deny(rustc::diagnostic_outside_of_impl)]
66
#![feature(box_patterns)]
7-
#![feature(let_chains)]
8-
#![recursion_limit = "256"]
97

108
mod helpers;
119
pub mod pp;

compiler/rustc_borrowck/src/lib.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,12 +8,9 @@
88
#![feature(let_chains)]
99
#![feature(min_specialization)]
1010
#![feature(never_type)]
11-
#![feature(lazy_cell)]
1211
#![feature(rustc_attrs)]
1312
#![feature(stmt_expr_attributes)]
14-
#![feature(trusted_step)]
1513
#![feature(try_blocks)]
16-
#![recursion_limit = "256"]
1714

1815
#[macro_use]
1916
extern crate rustc_middle;

compiler/rustc_borrowck/src/type_check/input_output.rs

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
//! `RETURN_PLACE` the MIR arguments) are always fully normalized (and
88
//! contain revealed `impl Trait` values).
99
10+
use itertools::Itertools;
1011
use rustc_infer::infer::BoundRegionConversionTime;
1112
use rustc_middle::mir::*;
1213
use rustc_middle::ty::{self, Ty};
@@ -39,9 +40,15 @@ impl<'a, 'tcx> TypeChecker<'a, 'tcx> {
3940
user_provided_sig,
4041
);
4142

42-
for (&user_ty, arg_decl) in user_provided_sig.inputs().iter().zip(
43-
// In MIR, closure args begin with an implicit `self`. Skip it!
44-
body.args_iter().skip(1).map(|local| &body.local_decls[local]),
43+
let is_coroutine_with_implicit_resume_ty = self.tcx().is_coroutine(mir_def_id.to_def_id())
44+
&& user_provided_sig.inputs().is_empty();
45+
46+
for (&user_ty, arg_decl) in user_provided_sig.inputs().iter().zip_eq(
47+
// In MIR, closure args begin with an implicit `self`.
48+
// Also, coroutines have a resume type which may be implicitly `()`.
49+
body.args_iter()
50+
.skip(1 + if is_coroutine_with_implicit_resume_ty { 1 } else { 0 })
51+
.map(|local| &body.local_decls[local]),
4552
) {
4653
self.ascribe_user_type_skip_wf(
4754
arg_decl.ty,

compiler/rustc_builtin_macros/src/lib.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,13 @@
55
#![feature(rustdoc_internals)]
66
#![doc(rust_logo)]
77
#![doc(html_root_url = "https://doc.rust-lang.org/nightly/nightly-rustc/")]
8-
#![feature(array_windows)]
98
#![feature(box_patterns)]
109
#![feature(decl_macro)]
1110
#![feature(if_let_guard)]
12-
#![feature(is_sorted)]
1311
#![feature(let_chains)]
1412
#![feature(lint_reasons)]
1513
#![feature(proc_macro_internals)]
1614
#![feature(proc_macro_quote)]
17-
#![recursion_limit = "256"]
1815

1916
extern crate proc_macro;
2017

compiler/rustc_codegen_llvm/src/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,7 @@
1414
#![feature(iter_intersperse)]
1515
#![feature(let_chains)]
1616
#![feature(min_specialization)]
17-
#![feature(never_type)]
1817
#![feature(impl_trait_in_assoc_type)]
19-
#![recursion_limit = "256"]
2018
#![deny(rustc::untranslatable_diagnostic)]
2119
#![deny(rustc::diagnostic_outside_of_impl)]
2220

compiler/rustc_codegen_ssa/src/lib.rs

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,8 @@
77
#![feature(if_let_guard)]
88
#![feature(let_chains)]
99
#![feature(negative_impls)]
10-
#![feature(never_type)]
1110
#![feature(strict_provenance)]
1211
#![feature(try_blocks)]
13-
#![recursion_limit = "256"]
1412

1513
//! This crate contains codegen code that is used by all codegen backends (LLVM and others).
1614
//! The backend-agnostic functions of this crate use functions defined in various traits that

0 commit comments

Comments
 (0)