about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-08-22misc: reorder to have struct first, then its methodAda Alakbarova-3/+3
2025-08-22non_octal_unix_permissions: `get_diagnostic_name` onceAda Alakbarova-7/+5
2025-08-22misc: return earlier on `name = None`Ada Alakbarova-4/+5
2025-08-22misc: pull condition into guardAda Alakbarova-8/+5
`None` is the fallback case anyway
2025-08-22misc: destruct `args` directlyAda Alakbarova-6/+6
avoids bounds checks
2025-08-22higher: use `get_diagnostic_name`Ada Alakbarova-16/+17
2025-08-22`get_diagnostic_name` in other placesAda Alakbarova-101/+87
2025-08-22Merge commit '877967959ae8da9814df4f2614971f4d784bf53f' into ↵Philipp Krones-1050/+1823
clippy-subtree-update
2025-08-22Merge commit '877967959ae8da9814df4f2614971f4d784bf53f' into ↵Philipp Krones-1050/+1823
clippy-subtree-update
2025-08-22Rustup (#15531)Philipp Krones-305/+430
Letting rustbot assign a reviewer, so that someone can double check 9de86f40d7e1a2cbcc308e39fdbc7447d691c527. changelog: none
2025-08-22Bump nightly version -> 2025-08-22Philipp Krones-2/+2
2025-08-22Dogfood fixesPhilipp Krones-115/+114
2025-08-22Ignore unexpected_cfgs warning for bootstrapPhilipp Krones-0/+4
2025-08-22Merge remote-tracking branch 'upstream/master' into rustupPhilipp Krones-959/+1657
2025-08-22change HIR typeck unification handling approachlcnr-128/+168
2025-08-22Region inference: Use outlives-static constraints in constraint searchAmanda Stjerna-218/+283
Revise the extra `r: 'static` constraints added upon universe issues to add an explanation, and use that explanation during constraint blame search. This greatly simplifies the region inference logic, which now does not need to reverse-engineer the event that caused a region to outlive 'static.
2025-08-22Auto merge of #144689 - JonathanBrouwer:share_parse_path, r=jdonszelmannbors-519/+665
Rewrite the new attribute argument parser Fixes https://github.com/rust-lang/rust/issues/143940 This rewrites the parser, should improve performance and maintainability. This can be reviewed commit by commit
2025-08-22Sort Config fields and remove some `mut`s from bindingsJakub Beránek-198/+210
2025-08-22Migrate `BuiltinLintDiag::HiddenUnicodeCodepoints` to use `LintDiagnostic` ↵Josh Triplett-126/+98
directly
2025-08-22Remove unused `BuiltinLintDiag` variant `InnerAttributeUnstable`Josh Triplett-21/+0
This variant doesn't appear to have ever been used. There's a matching message in `rustc_resolve`, that used to have a FIXME for porting it to the new diagnostic infrastructure, but that message is using `feature_err`, which doesn't use buffered lints. Thus, even when that does get ported, it won't use `BuiltinLintDiag`.
2025-08-22fix: convert_integer_literal not on selectedA4-Tacks-2/+8
`convert_integer_literal` can only convert the first literal, it is not reasonable to apply it when selected Example --- ```rust fn main() { $01+1$0; } ``` **Assist old outputs**: ``` Convert 1 to 0b1 Convert 1 to 0o1 Convert 1 to 0x1 Replace arithmetic with call to checked_* Replace arithmetic with call to saturating_* Replace arithmetic with call to wrapping_* Extract into variable Extract into constant Extract into static Extract into function ``` **Assist this PR outputs**: ``` Replace arithmetic with call to checked_* Replace arithmetic with call to saturating_* Replace arithmetic with call to wrapping_* Extract into variable Extract into constant Extract into static Extract into function ```
2025-08-22Migrate `BuiltinLintDiag::MissingAbi` to use `LintDiagnostic` directlyJosh Triplett-22/+14
2025-08-22Migrate `BuiltinLintDiag::UnexpectedBuiltinCfg` to use `LintDiagnostic` directlyJosh Triplett-26/+17
2025-08-22Refactor lint buffering to avoid requiring a giant enumJosh Triplett-83/+137
Lint buffering currently relies on a giant enum `BuiltinLintDiag` containing all the lints that might potentially get buffered. In addition to being an unwieldy enum in a central crate, this also makes `rustc_lint_defs` a build bottleneck: it depends on various types from various crates (with a steady pressure to add more), and many crates depend on it. Having all of these variants in a separate crate also prevents detecting when a variant becomes unused, which we can do with a dedicated type defined and used in the same crate. Refactor this to use a dyn trait, to allow using `LintDiagnostic` types directly. This requires boxing, but all of this is already on the slow path (emitting an error). Because the existing `BuiltinLintDiag` requires some additional types in order to decorate some variants, which are only available later in `rustc_lint`, use an enum `DecorateDiagCompat` to handle both the `dyn LintDiagnostic` case and the `BuiltinLintDiag` case.
2025-08-22Merge pull request #4538 from RalfJung/zst-reborRalf Jung-1/+21
add some ZST reborrow tests
2025-08-22Fix`unnecessary_safety_comment` does not lint for the first line (#15354)Philipp Krones-8/+75
Closes rust-lang/rust-clippy#14553 Closes rust-lang/rust-clippy#14554 changelog: [`unnecessary_safety_comment`] fix FN for the first line in file
2025-08-22miri: also detect aliasing of in-place argument and return placeRalf Jung-7/+111
2025-08-22add some ZST reborrow testsRalf Jung-1/+21
2025-08-22Merge pull request #20506 from Veykril/veykril/push-xlytslrrylzqShoyu Vanilla (Flint)-27/+29
Fix panic in syntax_highlighting
2025-08-22tests: Ignore basic-stepping.rs on LoongArchWANG Rui-0/+1
2025-08-22Auto merge of #145358 - Kobzol:symbol-name-sort, r=nnethercotebors-43/+60
Sort mono items by symbol name Trying to claw back cycles/branch/cache miss losses from https://github.com/rust-lang/rust/pull/144722.
2025-08-22Fix panic in syntax_highlightingLukas Wirth-27/+29
2025-08-22Updated uitests for new parserJonathan Brouwer-151/+193
2025-08-22Use the new attribute parser throughout the codebaseJonathan Brouwer-41/+71
2025-08-22Merge pull request #4537 from rust-lang/rustup-2025-08-22Ralf Jung-2145/+2622
Automatic Rustup
2025-08-22chore: remove redundant word in comment (#15530)Philipp Krones-1/+1
remove redundant word in comment changelog: none
2025-08-22doc: fix some typos in commentxihuwenhua-4/+4
Signed-off-by: xihuwenhua <xihuwenhua@outlook.com>
2025-08-22Rewrite the new attribute parserJonathan Brouwer-243/+303
2025-08-22chore: remove redundant word in commentxihuwenhua-1/+1
Signed-off-by: xihuwenhua <xihuwenhua@outlook.com>
2025-08-22Move validate_attr to `rustc_attr_parsing`Jonathan Brouwer-85/+99
2025-08-22address review commentsDeadbeef-35/+30
2025-08-22Merge ref '8e3710ef31a0' from rust-lang/rustThe Miri Cronjob Bot-2144/+2621
Pull recent changes from https://github.com/rust-lang/rust via Josh. Upstream ref: 8e3710ef31a0b2cdf5a1c2f3929b7735d1e28c20 Filtered ref: 3629e47f19f1c1c9710f45b80a31eb32d851baf6 This merge was created using https://github.com/rust-lang/josh-sync.
2025-08-22don't print invalid labels with `r#`Deadbeef-16/+22
2025-08-22print raw lifetime idents with `r#`Deadbeef-48/+166
2025-08-22Prepare for merging from rust-lang/rustThe Miri Cronjob Bot-1/+1
This updates the rust-version file to 8e3710ef31a0b2cdf5a1c2f3929b7735d1e28c20.
2025-08-22Auto merge of #145410 - cuviper:expand-stack, r=lqdbors-1/+2
rustc_expand: ensure stack in `InvocationCollector::visit_expr` In Fedora, when we built rustc with PGO on ppc64le, we started failing the test `issue-74564-if-expr-stack-overflow.rs`. This could also be reproduced on other arches by setting a smaller `RUST_MIN_STACK`, so it's probably just unlucky that ppc64le PGO created a large stack frame somewhere in this recursion path. Adding an `ensure_sufficient_stack` solves the stack overflow. Historically, that test and its fix were added in rust-lang/rust#74708, which was also an `ensure_sufficient_stack` in this area of code at the time. However, the refactor in rust-lang/rust#92573 basically left that to the general `MutVisitor`, and then rust-lang/rust#142240 removed even that ensure call. It may be luck that our tier-1 tested targets did not regress the original issue across those refactors.
2025-08-22Fix indent for move_guard_to_arm_bodyA4-Tacks-13/+57
Input: ```rust fn main() { match 92 { x $0if true && true && true => { { false } }, _ => true } } ``` Old output: ```rust fn main() { match 92 { x => if true && true && true { { { false } } }, _ => true }; } ``` This PR fixed: ```rust fn main() { match 92 { x => if true && true && true { { { false } } }, _ => true } } ```
2025-08-21typecheck window.NOTABLE_TRAITSbinarycat-2/+2
2025-08-21typecheck window.rr_binarycat-2/+2
2025-08-21typecheck window.searchIndexbinarycat-2/+2