about summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2025-07-14Bootstrap's `tool.TOOL_NAME.features` now works on any subcommandStypox-15/+20
2025-07-14Fix `manual_abs_diff` suggests wrongly behind refs (#15265)Jason Newcomb-6/+33
Closes rust-lang/rust-clippy#15254 changelog: [`manual_abs_diff`] fix wrong suggestions behind refs
2025-07-14Merge pull request #20234 from Hmikihiro/migrate_ted_remove_defaultShoyu Vanilla (Flint)-62/+19
Remove `ConstParam::remove_default` and `TypeParam::remove_default` to migrate from ted
2025-07-14Add test array-type-no-semi.rsxizheyin-0/+74
Signed-off-by: xizheyin <xizheyin@smail.nju.edu.cn>
2025-07-14Merge pull request #4467 from rust-lang/rustup-2025-07-14Ralf Jung-3998/+6167
Automatic Rustup
2025-07-14tests: Test line debuginfo for linebreaked function parametersMartin Nordholts-0/+22
2025-07-14Merge from rustcThe Miri Cronjob Bot-319/+274
2025-07-14Merge from rustcThe Miri Cronjob Bot-3997/+6166
2025-07-14Preparing for merge from rustcThe Miri Cronjob Bot-1/+1
2025-07-14Auto merge of #143779 - JonathanBrouwer:automatically_derived_parser, r=oli-obkbors-4/+5
Port `#[automatically_derived]` to the new attribute parsing infrastructure Ports `#[automatically_derived]` to the new attribute parsing infrastructure for https://github.com/rust-lang/rust/issues/131229#issuecomment-2971351163 r? `@oli-obk` cc `@jdonszelmann`
2025-07-14Auto merge of #143779 - JonathanBrouwer:automatically_derived_parser, r=oli-obkbors-50/+92
Port `#[automatically_derived]` to the new attribute parsing infrastructure Ports `#[automatically_derived]` to the new attribute parsing infrastructure for https://github.com/rust-lang/rust/issues/131229#issuecomment-2971351163 r? `@oli-obk` cc `@jdonszelmann`
2025-07-13Auto merge of #143357 - cjgillot:no-assoc-item-kind, r=compiler-errorsbors-898/+663
Retire hir::*ItemRef. This information was kept for various places that iterate on HIR to know about trait-items and impl-items. This PR replaces them by uses of the `associated_items` query that contain pretty much the same information. This shortens many spans to just `def_span`, which can be easier to read.
2025-07-13Auto merge of #143357 - cjgillot:no-assoc-item-kind, r=compiler-errorsbors-256/+220
Retire hir::*ItemRef. This information was kept for various places that iterate on HIR to know about trait-items and impl-items. This PR replaces them by uses of the `associated_items` query that contain pretty much the same information. This shortens many spans to just `def_span`, which can be easier to read.
2025-07-13docs(alloc::fmt): Make `type` optional, instead of matching the empty stringNik Revenco-2/+2
2025-07-13Fixes for Arm64ECDaniel Paoliello-2/+6
2025-07-14moved testsKivooeo-0/+0
2025-07-13core: make `str::split_at_unchecked()` inlineRené Kijewski-0/+1
This PR adds `#[inline]` to the method `str::split_at_unchecked()`. This is done for two reasons: 1. The method is tiny, e.g. on AMD-64 (<https://godbolt.org/z/ba68fdfxn>): ```asm movq %rdi, %rax subq %rcx, %rdx movq %rsi, (%rdi) addq %rcx, %rsi movq %rcx, 8(%rdi) movq %rsi, 16(%rdi) movq %rdx, 24(%rdi) retq ``` 2. More importantly, inlining the method enables further automatic optimizations. E.g. if you split at index 3, then in the compiler (rustc, llvm or both) knows that this code cannot fail, and the panicking path is omitted in the generated code: ```rust pub fn punctuation(i: &str) -> Result<(), ()> { const THREE_CHARS: &[[u8; 3]] = &[*b"<<=", *b">>=", *b"...", *b"..="]; if let Some((head, _)) = i.split_at_checked(3) && THREE_CHARS.contains(&head.as_bytes().try_into().unwrap()) { Ok(()) } else { Err(()) } } ``` <details> <summary>Without PR</summary> <https://play.rust-lang.org/?version=stable&mode=release&edition=2024&gist=0234de8158f467eebd73286f20d6e27a> ```asm playground::punctuation: subq $40, %rsp movq %rsi, %rdx movq %rdi, %rsi movb $1, %al cmpq $3, %rdx ja .LBB2_2 je .LBB2_3 .LBB2_11: addq $40, %rsp retq .LBB2_2: cmpb $-64, 3(%rsi) jl .LBB2_11 .LBB2_3: leaq 8(%rsp), %rdi movl $3, %ecx callq *core::str::<impl str>::split_at_unchecked@GOTPCREL(%rip) movq 8(%rsp), %rcx movb $1, %al testq %rcx, %rcx je .LBB2_11 cmpq $3, 16(%rsp) jne .LBB2_12 movzwl (%rcx), %edx movzbl 2(%rcx), %ecx shll $16, %ecx orl %edx, %ecx cmpl $4013115, %ecx jg .LBB2_8 cmpl $3026478, %ecx je .LBB2_10 cmpl $4009518, %ecx je .LBB2_10 jmp .LBB2_11 .LBB2_8: cmpl $4013630, %ecx je .LBB2_10 cmpl $4013116, %ecx jne .LBB2_11 .LBB2_10: xorl %eax, %eax addq $40, %rsp retq .LBB2_12: leaq .Lanon.d98a7fbb86d10a97c24516e267466134.2(%rip), %rdi leaq .Lanon.d98a7fbb86d10a97c24516e267466134.1(%rip), %rcx leaq .Lanon.d98a7fbb86d10a97c24516e267466134.6(%rip), %r8 leaq 7(%rsp), %rdx movl $43, %esi callq *core::result::unwrap_failed@GOTPCREL(%rip) ``` </details> <details> <summary>With PR</summary> <https://play.rust-lang.org/?version=stable&mode=release&edition=2024&gist=5d4058c79ce0f6cb1a434190427d2055> ```asm playground::punctuation: movb $1, %al cmpq $3, %rsi ja .LBB0_2 je .LBB0_3 .LBB0_9: retq .LBB0_2: cmpb $-64, 3(%rdi) jl .LBB0_9 .LBB0_3: movzwl (%rdi), %eax movzbl 2(%rdi), %ecx shll $16, %ecx orl %eax, %ecx movb $1, %al cmpl $4013115, %ecx jg .LBB0_6 cmpl $3026478, %ecx je .LBB0_8 cmpl $4009518, %ecx je .LBB0_8 jmp .LBB0_9 .LBB0_6: cmpl $4013630, %ecx je .LBB0_8 cmpl $4013116, %ecx jne .LBB0_9 .LBB0_8: xorl %eax, %eax retq ``` </details>
2025-07-13Fix LTO testAntoni Boucher-1/+1
2025-07-13Fix no-f16-f128 feature nameAntoni Boucher-3/+3
2025-07-13Ignore failing testAntoni Boucher-0/+2
2025-07-13Fix empty backtraceAntoni Boucher-0/+3
2025-07-13Simplify make_query_region_constraintsMichael Goulet-23/+15
2025-07-13Make sure that users don't take region obligations in a snapshotMichael Goulet-1/+4
2025-07-13Auto merge of #143461 - folkertdev:cfg-select-builtin-macro, r=petrochenkovbors-52/+299
make `cfg_select` a builtin macro tracking issue: https://github.com/rust-lang/rust/issues/115585 This parses mostly the same as the `macro cfg_select` version, except: 1. wrapping in double brackets is no longer supported (or needed): `cfg_select {{ /* ... */ }}` is now rejected. 2. in an expression context, the rhs is no longer wrapped in a block, so that this now works: ```rust fn main() { println!(cfg_select! { unix => { "foo" } _ => { "bar" } }); } ``` 3. a single wildcard rule is now supported: `cfg_select { _ => 1 }` now works I've also added an error if none of the rules evaluate to true, and warnings for any arms that follow the `_` wildcard rule. cc `@traviscross` if I'm missing any feature that should/should not be included r? `@petrochenkov` for the macro logic details
2025-07-13Merge pull request #20236 from gvozdvmozgu/patch-1Chayim Refael Friedman-12/+7
remove now useless `#[allow(unused_lifetimes)]`
2025-07-13Imply always-const host effects the same as any other item boundMichael Goulet-0/+20
2025-07-13Dont collect assoc ty item bounds from trait where clause for host effect ↵Michael Goulet-50/+47
predicates
2025-07-13Ensure proper item queries for assoc tysMichael Goulet-4/+6
2025-07-14fix: `manual_assert` suggests wrongly for macrosyanglsh-3/+54
2025-07-13update issue number for `const_trait_impl`Deadbeef-67/+67
2025-07-13Auto merge of #143888 - matthiaskrgr:rollup-fv9x7kf, r=matthiaskrgrbors-581/+1032
Rollup of 11 pull requests Successful merges: - rust-lang/rust#143301 (`tests/ui`: A New Order [26/N]) - rust-lang/rust#143519 (Check assoc consts and tys later like assoc fns) - rust-lang/rust#143554 (slice: Mark `rotate_left`, `rotate_right` unstably const) - rust-lang/rust#143634 (interpret/allocation: expose init + write_wildcards on a range) - rust-lang/rust#143685 (Resolve: merge `source_bindings` and `target_bindings` into `bindings`) - rust-lang/rust#143734 (Refactor resolve resolution bindings) - rust-lang/rust#143774 (constify `From` and `Into`) - rust-lang/rust#143785 (Add --compile-time-deps argument for x check) - rust-lang/rust#143786 (Fix fallback for CI_JOB_NAME) - rust-lang/rust#143825 (clippy: fix test filtering when TESTNAME is empty) - rust-lang/rust#143826 (Fix command trace) r? `@ghost` `@rustbot` modify labels: rollup
2025-07-13Update manual_is_variant_and documentation to include equality comparison ↵Alejandra González-1/+12
(#15239) Update `manual_is_variant_and` documentation to include equality comparison patterns This commit updates the documentation for the `manual_is_variant_and` lint to include all linted cases. Previously, the documentation only mentioned the `.map(f).unwrap_or_default()` pattern, but the lint also catches equality comparison patterns like `option.map(f) == Some(true)` and `result.map(f) == Ok(true)`. changelog: [`manual_is_variant_and`]: Update documentation to include equality comparison patterns fixes rust-lang/rust-clippy#15217
2025-07-13Lint: Improve manual_is_variant_and to support equality comparisonKrishna Ketan Rai-1/+12
- Add equality pattern support to manual_is_variant_and - Update documentation and Clippy manual
2025-07-13Compiletest: Simplify {Html,Json}DocCk directive handlingLeón Orell Valerian Liehr-359/+294
2025-07-13Merge pull request #20235 from A4-Tacks/assoctype-where-compShoyu Vanilla (Flint)-5/+75
Fix assoc type where clause position
2025-07-13Bless incremental tests.Camille GILLOT-3/+3
2025-07-13Retire hir::*ItemRef.Camille GILLOT-151/+141
2025-07-13Retire hir::*ItemRef.Camille GILLOT-308/+244
2025-07-13Remove hir::AssocItemKind.Camille GILLOT-111/+85
2025-07-13Retire hir::ForeignItemRef.Camille GILLOT-66/+40
2025-07-13Generalize TyCtxt::item_name.Camille GILLOT-10/+14
2025-07-13Remove hir::AssocItemKind.Camille GILLOT-456/+294
2025-07-13Move trait_item_def_id from ImplItemRef to ImplItem.Camille GILLOT-74/+64
2025-07-13Delegation: self parameter must be named exactly `self`.Camille GILLOT-7/+33
2025-07-13Remove usused depth.Camille GILLOT-4/+1
2025-07-13fix: `manual_abs_diff` suggests wrongly behind refsyanglsh-6/+33
2025-07-13Rollup merge of #143825 - RalfJung:clippy-test-filter, r=llogiqMatthias Krüger-1/+10
clippy: fix test filtering when TESTNAME is empty Fixes https://github.com/rust-lang/rust/issues/143824. Turns out bootstrap was just fine, the TESTNAME logic in clippy was wrong... I still made this a rustc PR as that's where I did all the debugging. The bootstrap change is not really related, but it's comment-only so not worth a separate PR... adding the `test_args` is also part of what `prepare_cargo_test` would usually do so let's group the code properly.
2025-07-13Rollup merge of #143826 - Shourya742:2025-07-12-fix-command-trace, r=KobzolMatthias Krüger-4/+29
Fix command trace With the recent developments in centralization of command execution, we somehow broke the traces for command execution. This PR fixes that and add trace to stream command execution as well. r? ````@Kobzol````
2025-07-13Rollup merge of #143825 - RalfJung:clippy-test-filter, r=llogiqMatthias Krüger-3/+12
clippy: fix test filtering when TESTNAME is empty Fixes https://github.com/rust-lang/rust/issues/143824. Turns out bootstrap was just fine, the TESTNAME logic in clippy was wrong... I still made this a rustc PR as that's where I did all the debugging. The bootstrap change is not really related, but it's comment-only so not worth a separate PR... adding the `test_args` is also part of what `prepare_cargo_test` would usually do so let's group the code properly.
2025-07-13Rollup merge of #143786 - nikic:ci-job-name-fallback, r=marcoieniMatthias Krüger-1/+1
Fix fallback for CI_JOB_NAME If CI_JOB_NAME is not specified, it's supposed to fall back to the image name, which is `$image`, not `$IMAGE`. Failing to set the correct CI_JOB_NAME causes failures when running `dist-ohos-*` images locally.