Skip to content

Rollup of 7 pull requests #125456

New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Merged
merged 16 commits into from
May 23, 2024
Merged

Rollup of 7 pull requests #125456

merged 16 commits into from
May 23, 2024

Conversation

fmease
Copy link
Member

@fmease fmease commented May 23, 2024

Successful merges:

r? @ghost
@rustbot modify labels: rollup

Create a similar rollup

CensoredUsername and others added 16 commits May 18, 2024 01:41
…t it.

It does not provide the behaviour it is indicated to provide when used in
a proc_macro context.
…ochenkov

Detect unused structs which implement private traits

Fixes rust-lang#122361
…enkov

Add a warning to proc_macro::Delimiter::None that rustc currently does not respect it.

It does not provide the behaviour it is indicated to provide when used in a proc_macro context.

This seems to be a bug, (rust-lang#67062), but it is a long standing one, and hard to discover.

This pull request adds a warning to inform users of this issue, with a link to the relevant issue, and a version number of the last known affected rustc version.
Migrate `run-make/issue-53964` to `rmake`

Part of rust-lang#121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html).

This is extremely similar to rust-lang#125146. Could it be interesting to merge the two in some way? This one seems to do the same thing as the rust-lang#125146, but with an added check that a useless lint is not shown.
Migrate `run-make/issue-30063` to `rmake`

Part of rust-lang#121876 and the associated [Google Summer of Code project](https://blog.rust-lang.org/2024/05/01/gsoc-2024-selected-projects.html).

(Sorry about the [inconvenience](rust-lang#125224 (comment)) of all these PRs, this is the last one batched for today. I will discuss how we can cut these down a bit.)

The last check was previously commented out in the Makefile, and I have readded it. If it fails the CI, this can be reconsidered.
…ape-examples-macros, r=jieyouxu

Migrate `run-make/rustdoc-scrape-examples-macros` to `rmake.rs`

Part of rust-lang#121876.

r? `````@jieyouxu`````
Improve the doc of query associated_item

<!--
If this PR is related to an unstable feature or an otherwise tracked effort,
please link to the relevant tracking issue here. If you don't know of a related
tracking issue or there are none, feel free to ignore this.

This PR will get automatically assigned to a reviewer. In case you would like
a specific user to review your work, you can assign it to them by using

    r​? <reviewer name>
-->

This query also maps from a impl item to the impl item "descriptor". So it's a bit confused, I skipped it cause it doesn't say it contains impl items.

```rust
fn associated_item(tcx: TyCtxt<'_>, def_id: LocalDefId) -> ty::AssocItem {
    let id = tcx.local_def_id_to_hir_id(def_id);
    let parent_def_id = tcx.hir().get_parent_item(id);
    let parent_item = tcx.hir().expect_item(parent_def_id.def_id);
    match parent_item.kind {
        hir::ItemKind::Impl(impl_) => {
            if let Some(impl_item_ref) = impl_.items.iter().find(|i| i.id.owner_id.def_id == def_id)
            {
                let assoc_item = associated_item_from_impl_item_ref(impl_item_ref);
                debug_assert_eq!(assoc_item.def_id.expect_local(), def_id);
                return assoc_item;
            }
        }

        hir::ItemKind::Trait(.., trait_item_refs) => {
            if let Some(trait_item_ref) =
                trait_item_refs.iter().find(|i| i.id.owner_id.def_id == def_id)
            {
                let assoc_item = associated_item_from_trait_item_ref(trait_item_ref);
                debug_assert_eq!(assoc_item.def_id.expect_local(), def_id);
                return assoc_item;
            }
        }

        _ => {}
    }

    span_bug!(
        parent_item.span,
        "unexpected parent of trait or impl item or item not found: {:?}",
        parent_item.kind
    )
}
```
@rustbot rustbot added A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. rollup A PR which is a rollup labels May 23, 2024
@fmease
Copy link
Member Author

fmease commented May 23, 2024

@bors r+ rollup=never p=7

@bors
Copy link
Collaborator

bors commented May 23, 2024

📌 Commit 55a16a4 has been approved by fmease

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels May 23, 2024
@bors
Copy link
Collaborator

bors commented May 23, 2024

⌛ Testing commit 55a16a4 with merge 5baee04...

@bors
Copy link
Collaborator

bors commented May 23, 2024

☀️ Test successful - checks-actions
Approved by: fmease
Pushing 5baee04 to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label May 23, 2024
@bors bors merged commit 5baee04 into rust-lang:master May 23, 2024
7 checks passed
@rustbot rustbot added this to the 1.80.0 milestone May 23, 2024
@rust-timer
Copy link
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#122382 Detect unused structs which implement private traits 4cfe57a6518913330a52c45021aa3ab26ac53558 (link)
#124389 Add a warning to proc_macro::Delimiter::None that rustc cur… 5e86de56ac1c21200c47ecc0d2169a4e4fb697a9 (link)
#125224 Migrate run-make/issue-53964 to rmake 2f1e6e547f1d4ff9b305056d4b67515f4097c025 (link)
#125227 Migrate run-make/issue-30063 to rmake 3ad75a6538c6a3f48e6e31060b836d92b05c9598 (link)
#125336 Add dedicated definition for intrinsics 5f909bcb4c71622efa3bea8f1924c20c81dee319 (link)
#125401 Migrate run-make/rustdoc-scrape-examples-macros to `rmake… c81d52ed7fbc4e76d9a0495db346472834a75488 (link)
#125454 Improve the doc of query associated_item 38e916075e3ae60edb0184062dd586d13be91233 (link)

previous master: 606afbb617

In the case of a perf regression, run the following command for each PR you suspect might be the cause: @rust-timer build $SHA

@fmease fmease deleted the rollup-n8608gc branch May 23, 2024 21:49
@rust-timer
Copy link
Collaborator

Finished benchmarking commit (5baee04): comparison URL.

Overall result: ❌✅ regressions and improvements - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.3% [0.2%, 0.4%] 8
Improvements ✅
(primary)
-0.3% [-0.4%, -0.3%] 2
Improvements ✅
(secondary)
-0.5% [-0.9%, -0.4%] 7
All ❌✅ (primary) -0.3% [-0.4%, -0.3%] 2

Max RSS (memory usage)

Results (primary -1.2%, secondary -4.1%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
-1.2% [-1.2%, -1.2%] 1
Improvements ✅
(secondary)
-4.1% [-4.1%, -4.1%] 1
All ❌✅ (primary) -1.2% [-1.2%, -1.2%] 1

Cycles

Results (secondary 2.3%)

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
2.3% [2.3%, 2.3%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 672.526s -> 674.256s (0.26%)
Artifact size: 315.69 MiB -> 315.73 MiB (0.01%)

@rustbot rustbot added the perf-regression Performance regression. label May 23, 2024
@Mark-Simulacrum
Copy link
Member

Seems plausible that the regression is due to #124389 (since it affected derive macros). But also seems not worth further investigation given it's a secondary benchmark and minimal impact. Marking as triaged.

@Mark-Simulacrum Mark-Simulacrum added the perf-regression-triaged The performance regression has been triaged. label May 27, 2024
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. rollup A PR which is a rollup S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants