Skip to content

Commit 50aabc1

Browse files
committed
Auto merge of #154629 - JonathanBrouwer:rollup-4kICxoY, r=<try>
Rollup of 21 pull requests try-job: test-various try-job: x86_64-gnu-aux try-job: x86_64-gnu-llvm-21-3 try-job: x86_64-msvc-1 try-job: aarch64-apple try-job: x86_64-mingw-1 try-job: dist-x86_64-linux
2 parents 08cd08f + 7fef380 commit 50aabc1

157 files changed

Lines changed: 1895 additions & 981 deletions

File tree

Some content is hidden

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

Cargo.lock

Lines changed: 50 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -1422,12 +1422,13 @@ checksum = "3a3076410a55c90011c298b04d0cfa770b00fa04e1e3c97d3f6c9de105a03844"
14221422

14231423
[[package]]
14241424
name = "flate2"
1425-
version = "1.1.5"
1425+
version = "1.1.9"
14261426
source = "registry+https://github.com/rust-lang/crates.io-index"
1427-
checksum = "bfe33edd8e85a12a67454e37f8c75e730830d83e313556ab9ebf9ee7fbeb3bfb"
1427+
checksum = "843fba2746e448b37e26a819579957415c8cef339bf08564fe8b7ddbd959573c"
14281428
dependencies = [
14291429
"crc32fast",
14301430
"miniz_oxide",
1431+
"zlib-rs",
14311432
]
14321433

14331434
[[package]]
@@ -3421,14 +3422,14 @@ dependencies = [
34213422

34223423
[[package]]
34233424
name = "rustc-build-sysroot"
3424-
version = "0.5.11"
3425+
version = "0.5.12"
34253426
source = "registry+https://github.com/rust-lang/crates.io-index"
3426-
checksum = "3b881c015c729b43105bbd3702a9bdecee28fafaa21126d1d62e454ec011a4b7"
3427+
checksum = "eec3905e8201688412f6f4b1f6c86d38b3ee6578f59ba85f41330a3af61e8365"
34273428
dependencies = [
34283429
"anyhow",
34293430
"rustc_version",
34303431
"tempfile",
3431-
"toml 0.8.23",
3432+
"toml 1.1.0+spec-1.1.0",
34323433
"walkdir",
34333434
]
34343435

@@ -5195,9 +5196,9 @@ dependencies = [
51955196

51965197
[[package]]
51975198
name = "serde_spanned"
5198-
version = "1.0.3"
5199+
version = "1.1.0"
51995200
source = "registry+https://github.com/rust-lang/crates.io-index"
5200-
checksum = "e24345aa0fe688594e73770a5f6d1b216508b4f93484c0026d521acd30134392"
5201+
checksum = "876ac351060d4f882bb1032b6369eb0aef79ad9df1ea8bc404874d8cc3d0cd98"
52015202
dependencies = [
52025203
"serde_core",
52035204
]
@@ -5693,7 +5694,6 @@ version = "0.8.23"
56935694
source = "registry+https://github.com/rust-lang/crates.io-index"
56945695
checksum = "dc1beb996b9d83529a9e75c17a1686767d148d70663143c7854d8b4a09ced362"
56955696
dependencies = [
5696-
"indexmap",
56975697
"serde",
56985698
"serde_spanned 0.6.9",
56995699
"toml_datetime 0.6.11",
@@ -5708,13 +5708,28 @@ checksum = "f0dc8b1fb61449e27716ec0e1bdf0f6b8f3e8f6b05391e8497b8b6d7804ea6d8"
57085708
dependencies = [
57095709
"indexmap",
57105710
"serde_core",
5711-
"serde_spanned 1.0.3",
5711+
"serde_spanned 1.1.0",
57125712
"toml_datetime 0.7.3",
57135713
"toml_parser",
57145714
"toml_writer",
57155715
"winnow 0.7.13",
57165716
]
57175717

5718+
[[package]]
5719+
name = "toml"
5720+
version = "1.1.0+spec-1.1.0"
5721+
source = "registry+https://github.com/rust-lang/crates.io-index"
5722+
checksum = "f8195ca05e4eb728f4ba94f3e3291661320af739c4e43779cbdfae82ab239fcc"
5723+
dependencies = [
5724+
"indexmap",
5725+
"serde_core",
5726+
"serde_spanned 1.1.0",
5727+
"toml_datetime 1.1.0+spec-1.1.0",
5728+
"toml_parser",
5729+
"toml_writer",
5730+
"winnow 1.0.0",
5731+
]
5732+
57185733
[[package]]
57195734
name = "toml_datetime"
57205735
version = "0.6.11"
@@ -5733,6 +5748,15 @@ dependencies = [
57335748
"serde_core",
57345749
]
57355750

5751+
[[package]]
5752+
name = "toml_datetime"
5753+
version = "1.1.0+spec-1.1.0"
5754+
source = "registry+https://github.com/rust-lang/crates.io-index"
5755+
checksum = "97251a7c317e03ad83774a8752a7e81fb6067740609f75ea2b585b569a59198f"
5756+
dependencies = [
5757+
"serde_core",
5758+
]
5759+
57365760
[[package]]
57375761
name = "toml_edit"
57385762
version = "0.19.15"
@@ -5762,11 +5786,11 @@ dependencies = [
57625786

57635787
[[package]]
57645788
name = "toml_parser"
5765-
version = "1.0.4"
5789+
version = "1.1.0+spec-1.1.0"
57665790
source = "registry+https://github.com/rust-lang/crates.io-index"
5767-
checksum = "c0cbe268d35bdb4bb5a56a2de88d0ad0eb70af5384a99d648cd4b3d04039800e"
5791+
checksum = "2334f11ee363607eb04df9b8fc8a13ca1715a72ba8662a26ac285c98aabb4011"
57685792
dependencies = [
5769-
"winnow 0.7.13",
5793+
"winnow 1.0.0",
57705794
]
57715795

57725796
[[package]]
@@ -5777,9 +5801,9 @@ checksum = "5d99f8c9a7727884afe522e9bd5edbfc91a3312b36a77b5fb8926e4c31a41801"
57775801

57785802
[[package]]
57795803
name = "toml_writer"
5780-
version = "1.0.4"
5804+
version = "1.1.0+spec-1.1.0"
57815805
source = "registry+https://github.com/rust-lang/crates.io-index"
5782-
checksum = "df8b2b54733674ad286d16267dcfc7a71ed5c776e4ac7aa3c3e2561f7c637bf2"
5806+
checksum = "d282ade6016312faf3e41e57ebbba0c073e4056dab1232ab1cb624199648f8ed"
57835807

57845808
[[package]]
57855809
name = "tracing"
@@ -6765,6 +6789,12 @@ dependencies = [
67656789
"memchr",
67666790
]
67676791

6792+
[[package]]
6793+
name = "winnow"
6794+
version = "1.0.0"
6795+
source = "registry+https://github.com/rust-lang/crates.io-index"
6796+
checksum = "a90e88e4667264a994d34e6d1ab2d26d398dcdca8b7f52bec8668957517fc7d8"
6797+
67686798
[[package]]
67696799
name = "winsplit"
67706800
version = "0.1.0"
@@ -6944,3 +6974,9 @@ dependencies = [
69446974
"quote",
69456975
"syn 2.0.110",
69466976
]
6977+
6978+
[[package]]
6979+
name = "zlib-rs"
6980+
version = "0.6.3"
6981+
source = "registry+https://github.com/rust-lang/crates.io-index"
6982+
checksum = "3be3d40e40a133f9c916ee3f9f4fa2d9d63435b5fbe1bfc6d9dae0aa0ada1513"

compiler/rustc_ast_passes/src/ast_validation.rs

Lines changed: 13 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -173,17 +173,19 @@ impl<'a> AstValidator<'a> {
173173
{
174174
let mut state = State::new();
175175

176+
let mut needs_comma = !ty_alias.after_where_clause.predicates.is_empty();
176177
if !ty_alias.after_where_clause.has_where_token {
177178
state.space();
178179
state.word_space("where");
180+
} else if !needs_comma {
181+
state.space();
179182
}
180183

181-
let mut first = ty_alias.after_where_clause.predicates.is_empty();
182184
for p in &ty_alias.generics.where_clause.predicates {
183-
if !first {
185+
if needs_comma {
184186
state.word_space(",");
185187
}
186-
first = false;
188+
needs_comma = true;
187189
state.print_where_predicate(p);
188190
}
189191

@@ -1832,7 +1834,11 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
18321834
Some((right, snippet))
18331835
}
18341836
};
1835-
let left_sp = err.span;
1837+
let left_sp = self
1838+
.sess
1839+
.source_map()
1840+
.span_extend_prev_while(err.span, char::is_whitespace)
1841+
.unwrap_or(err.span);
18361842
self.lint_buffer.dyn_buffer_lint(
18371843
DEPRECATED_WHERE_CLAUSE_LOCATION,
18381844
item.id,
@@ -1846,9 +1852,9 @@ impl<'a> Visitor<'a> for AstValidator<'a> {
18461852
sugg,
18471853
}
18481854
}
1849-
None => {
1850-
errors::DeprecatedWhereClauseLocationSugg::RemoveWhere { span: left_sp }
1851-
}
1855+
None => errors::DeprecatedWhereClauseLocationSugg::RemoveWhere {
1856+
span: err.span,
1857+
},
18521858
};
18531859
errors::DeprecatedWhereClauseLocation { suggestion }.into_diag(dcx, level)
18541860
},

compiler/rustc_attr_parsing/src/attributes/doc.rs

Lines changed: 20 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,12 @@
11
use rustc_ast::ast::{AttrStyle, LitKind, MetaItemLit};
2+
use rustc_errors::msg;
23
use rustc_feature::template;
34
use rustc_hir::Target;
45
use rustc_hir::attrs::{
56
AttributeKind, CfgEntry, CfgHideShow, CfgInfo, DocAttribute, DocInline, HideOrShow,
67
};
78
use rustc_hir::lints::AttributeLintKind;
9+
use rustc_session::parse::feature_err;
810
use rustc_span::{Span, Symbol, edition, sym};
911
use thin_vec::ThinVec;
1012

@@ -481,15 +483,19 @@ impl DocParser {
481483
}
482484
macro_rules! no_args_and_crate_level {
483485
($ident: ident) => {{
486+
no_args_and_crate_level!($ident, |span| {});
487+
}};
488+
($ident: ident, |$span:ident| $extra_validation:block) => {{
484489
if let Err(span) = args.no_args() {
485490
expected_no_args(cx, span);
486491
return;
487492
}
488-
let span = path.span();
489-
if !check_attr_crate_level(cx, span) {
493+
let $span = path.span();
494+
if !check_attr_crate_level(cx, $span) {
490495
return;
491496
}
492-
self.attribute.$ident = Some(span);
497+
$extra_validation
498+
self.attribute.$ident = Some($span);
493499
}};
494500
}
495501
macro_rules! string_arg_and_crate_level {
@@ -553,7 +559,17 @@ impl DocParser {
553559
),
554560
Some(sym::fake_variadic) => no_args_and_not_crate_level!(fake_variadic),
555561
Some(sym::search_unbox) => no_args_and_not_crate_level!(search_unbox),
556-
Some(sym::rust_logo) => no_args_and_crate_level!(rust_logo),
562+
Some(sym::rust_logo) => no_args_and_crate_level!(rust_logo, |span| {
563+
if !cx.features().rustdoc_internals() {
564+
feature_err(
565+
cx.sess(),
566+
sym::rustdoc_internals,
567+
span,
568+
msg!("the `#[doc(rust_logo)]` attribute is used for Rust branding"),
569+
)
570+
.emit();
571+
}
572+
}),
557573
Some(sym::auto_cfg) => self.parse_auto_cfg(cx, path, args),
558574
Some(sym::test) => {
559575
let Some(list) = args.list() else {

0 commit comments

Comments
 (0)