Skip to content

Rollup of 9 pull requests#155720

Merged
rust-bors[bot] merged 23 commits intorust-lang:mainfrom
jhpratt:rollup-OEB9tQ5
Apr 24, 2026
Merged

Rollup of 9 pull requests#155720
rust-bors[bot] merged 23 commits intorust-lang:mainfrom
jhpratt:rollup-OEB9tQ5

Conversation

@jhpratt
Copy link
Copy Markdown
Member

@jhpratt jhpratt commented Apr 24, 2026

Successful merges:

r? @ghost

Create a similar rollup

reddevilmidzy and others added 23 commits April 10, 2026 05:40
Over time the landscape for myself has changed, and I no longer would
like to be officially listed as a maintainer of this target in Rust, so
I'm going to step down. There are still a number of others listed on
this target, however, so I'm sure they can address issues should they
come up.
There are a number of things I dislike about `CrateMetadataRef`.
- It contains two fields `cstore` and `cdata`. The latter points to data
  within the former. It's like having an `Elem` type that has a
  reference to a vec element and also a reference to the vec itself.
  Weird.
- The `cdata` field gets a lot of use, and the `Deref` impl just derefs
  that field. The `cstore` field is rarely used.
- `CrateMetadataRef` is not a good name.
- Variables named `cdata` sometimes refer to values of this type and
  sometimes to values of type `CrateMetadata`, which is confusing.

The good news is that `CrateMetadataRef` is not necessary and can be
replaced with `&CrateMetadata`. Why? Everywhere that `CrateMetadataRef`
is used, a `TyCtxt` is also present, and the `CStore` is accessible from
the `TyCtxt` with `CStore::from_tcx`.

So this commit removes `CrateMetadataRef` and replaces all its uses with
`&CrateMetadata`. Notes:
- This requires adding only two uses of `CStore::from_tcx`, which shows
  how rarely the `cstore` field was used.
- `get_crate_data` now matches `get_crate_data_mut` more closely.
- A few variables are renamed for consistency, e.g. `data`/`cmeta` ->
  `cdata`.
- An unnecessary local variable (`local_cdata`) in `decode_expn_id` is
  removed.
- All the `CrateMetadataRef` methods become `CrateMetadata` methods, and
  their receiver changes from `self` to `&self`.
- `RawDefId::decode_from_cdata` is inlined and removed, because it has a
  single call site.
Similar to the existing `Receiver` item, it will be used in Clippy to
detect uses of `is_disconnected` that are racy.
Crash tests are always expected to crash during compilation, so there is no
sensible meaning for specifying a pass/fail expectation in a crash test.
* Avoid query cycles in DataflowConstProp
* Add -Zmir-opt-level=0 to the test
Added a marker trait `IoHandle` which can be used by the standard library to opt-in types to a blanket implementation of the various IO traits on `Arc<T>` where `&T: IoTrait` for some `IoTrait`.

The marker is required to avoid types like `Arc<[u8]>`  being included, since they don't have interior mutability and would not give expected results.
…ref, r=jhpratt

Generalize IO Traits for `Arc<T>` where `&T: IoTrait`

ACP: rust-lang/libs-team#755
Tracking issue: rust-lang#154046
Related: rust-lang#94744

## Description

After experimenting with rust-lang#155625, I noticed `Seek` and `SeekFrom` can almost be moved to `core::io`. Unfortunately, the implementation of `Seek` for `Arc<File>` is a blocker for such a move, since `Arc` is not a fundamental type. This PR attempts to resolve this potential blocker by replacing the implementation with a more general alternative. An internal trait `IoHandle` has been added which types can implement to opt-in to `Read`/`Write`/`Seek` implementations for `Arc<Self>` as long as `&Self` implements said trait. Note that `BufRead` is excluded as the signature for `fill_buf` would require returning from a temporary.

Since this "blanket" implementation only applies to a single type which already implements the same traits, I believe this should have no user-facing impact.

If this PR was merged, rust-lang#134190 could be replaced with a 2 line PR:
```rust
impl IoHandle for TcpStream {}
impl IoHandle for UnixStream {}
```
Likewise for any other types, a table of which can be found [here](rust-lang/libs-team#504 (comment)). This is out of scope for this PR to avoid the need for an ACP.

---

## Notes

* See [this comment](rust-lang#154046 (comment)) for further details.
* No AI tooling of any kind was used during the creation of this PR.
Move and clean up some ui test

`ui/reserved` -> `ui/keyword`
`ui/deref-patterns` -> `ui/pattern/deref-patterns`
`ui/unknown-unstable-lints` -> `ui/lint/unknown-lints`

Tests related to unknown_lints that were located above lint have also been moved to a subdirectory, and duplicate tests have been deleted.

And delete unnecessary `//@ check-fail`

r? Kivooeo
…thlin

Avoid query cycles in DataflowConstProp

Fixes rust-lang#155376 by skipping coroutines.
…aRef, r=mejrs,petrochenkov

Eliminate `CrateMetadataRef`.

There are a number of things I dislike about `CrateMetadataRef`.
- It contains two fields `cstore` and `cdata`. The latter points to data within the former. It's like having an `Elem` type that has a reference to a vec element and also a reference to the vec itself. Weird.
- The `cdata` field gets a lot of use, and the `Deref` impl just derefs that field. The `cstore` field is rarely used.
- `CrateMetadataRef` is not a good name.
- Variables named `cdata` sometimes refer to values of this type and sometimes to values of type `CrateMetadata`, which is confusing.

The good news is that `CrateMetadataRef` is not necessary and can be replaced with `&CrateMetadata`. Why? Everywhere that `CrateMetadataRef` is used, a `TyCtxt` is also present, and the `CStore` is accessible from the `TyCtxt` with `CStore::from_tcx`.

So this commit removes `CrateMetadataRef` and replaces all its uses with `&CrateMetadata`. Notes:
- This requires adding only two uses of `CStore::from_tcx`, which shows how rarely the `cstore` field was used.
- `get_crate_data` now matches `get_crate_data_mut` more closely.
- A few variables are renamed for consistency, e.g. `data`/`cmeta` -> `cdata`.
- An unnecessary local variable (`local_cdata`) in `decode_expn_id` is removed.
- All the `CrateMetadataRef` methods become `CrateMetadata` methods, and their receiver changes from `self` to `&self`.
- `RawDefId::decode_from_cdata` is inlined and removed, because it has a single call site.

r? @mejrs
…mejrs

Add `Sender` diagnostic item for `std::sync::mpsc::Sender`

Similar to the existing `Receiver` item, it will be used in Clippy to detect uses of `is_disconnected` that are racy.

Tracking issue: rust-lang#153668
Suggested: rust-lang/libs-team#748 (comment)
…horthand, r=mu001999

Syntactically reject tuple index shorthands in struct patterns to fix a correctness regression

Split out of PR rust-lang#154492. This fixes a correctness regression introduced in PR rust-lang#81235 from 2021. Crater was run in my other PR and didn't report any real regressions (rust-lang#154492 (comment)); a rerun has been issued for a few spurious builds (rust-lang#154492 (comment)) but I'm certain it won't find anything either.

This is a theoretical breaking change that doesn't need any T-lang input IMHO since it's such a minute, niche and crystal clear bug that's not worth bothering them with (such a decision is not unprecedented). I'm adding it to the compatibility section of the release notes as is customary.

The Reference doesn't need updating since it didn't adopt this bug and thus accurately describes this part of the grammar as it used to be before 2021-02-23 and as it's meant to be.

The majority of the diff is doc comment additions & necessary UI test restructurings.
…sm32-wasip1-threads, r=jieyouxu

Remove myself as a maintainer of `wasm32-wasip1-threads`

Over time the landscape for myself has changed, and I no longer would like to be officially listed as a maintainer of this target in Rust, so I'm going to step down. There are still a number of others listed on this target, however, so I'm sure they can address issues should they come up.
…d, r=JonathanBrouwer

Remove `AttributeLintKind` variants - part 7

Part of rust-lang#153099.

It's the last easy one. Next one will require to get the crate name and to pass `Session` to the remaining lints. Fun times ahead. :)

r? @JonathanBrouwer
Forbid `*-pass` and `*-fail` directives in tests/crashes

Crash tests are always expected to crash during compilation, so there is no sensible meaning for specifying a pass expectation or a run-fail expectation in a crash test.

It could conceivably be useful to use failure expectations to specify whether a crash test requires codegen in order to crash, but currently none of the crash tests try to do that. If that functionality is desired in the future, we can always look into re-adding it after the internals of pass/fail expectations have been cleaned up a bit.

---

After this change, pass/fail directives are only allowed in UI tests, which should make it easier to overhaul and simplify their implementation.

r? jieyouxu
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label Apr 24, 2026
@rustbot rustbot added A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 24, 2026
@rustbot rustbot added 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. T-libs Relevant to the library team, which will review and decide on the PR/issue. labels Apr 24, 2026
@jhpratt
Copy link
Copy Markdown
Member Author

jhpratt commented Apr 24, 2026

@bors r+ rollup=never p=5

@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Apr 24, 2026

📌 Commit a2622ef has been approved by jhpratt

It is now in the queue for this repository.

@rust-bors rust-bors Bot 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 Apr 24, 2026
@rust-bors

This comment has been minimized.

@rust-bors rust-bors Bot added merged-by-bors This PR was explicitly merged by bors. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Apr 24, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented Apr 24, 2026

☀️ Test successful - CI
Approved by: jhpratt
Duration: 3h 22m 18s
Pushing cf79d03 to main...

@rust-bors rust-bors Bot merged commit cf79d03 into rust-lang:main Apr 24, 2026
12 checks passed
@rustbot rustbot added this to the 1.97.0 milestone Apr 24, 2026
@rust-timer
Copy link
Copy Markdown
Collaborator

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#155081 Move and clean up some ui test a2bc39b7afe0844dfdb54000efee5117da7a4cac (link)
#155379 Avoid query cycles in DataflowConstProp 9ec858b92669d1a273e799f85f40a2bc37cac345 (link)
#155663 Eliminate CrateMetadataRef. a06bfacee08158e7c4896a16fc5b20510a07a6c0 (link)
#155669 Add Sender diagnostic item for std::sync::mpsc::Sender 8357283ea796e736df8d0a693fbcd90914403943 (link)
#155684 Generalize IO Traits for Arc<T> where &T: IoTrait ed234f42be1b3adcbd05d52316516330939801b0 (link)
#155698 Syntactically reject tuple index shorthands in struct patte… b9e7dee4cf4e95e2dcc28bacba782fd377acdfa9 (link)
#155703 Remove myself as a maintainer of wasm32-wasip1-threads 4a2693b11ac95ee2414cb9f957b0e961d30c4828 (link)
#155706 Remove AttributeLintKind variants - part 7 78019fda2a2b6a2c520956f392ab96b970a6c10b (link)
#155712 Forbid *-pass and *-fail directives in tests/crashes beb2f8ccb8218e572c81738624b1e96e1c4c1abf (link)

previous master: d493b7c5ac

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

@github-actions
Copy link
Copy Markdown
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing d493b7c (parent) -> cf79d03 (this PR)

Test differences

Show 544 test diffs

Stage 1

  • [ui] tests/ui/dataflow_const_prop/recursive-async.rs: [missing] -> pass (J1)
  • [ui] tests/ui/deref-patterns/deref-non-pointer.rs: pass -> [missing] (J1)
  • [ui] tests/ui/deref-patterns/issue-71676-1.rs: pass -> [missing] (J1)
  • [ui] tests/ui/deref-patterns/issue-71676-2.rs: pass -> [missing] (J1)
  • [ui] tests/ui/keyword/meta-is-not-reserved.rs: [missing] -> pass (J1)
  • [ui] tests/ui/keyword/reserved-attr-on-macro.rs: [missing] -> pass (J1)
  • [ui] tests/ui/keyword/reserved-become.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/cli-unknown-force-warn.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/issue-83477.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/issue-97094.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline-allow.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline-deny.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/lint-unknown-lint.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/not_found.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/unknown-lints-at-crate-level.rs: pass -> [missing] (J1)
  • [ui] tests/ui/lint/unknown-lints/allow-unknown-unstable-lint-command-line.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/allow-unknown-unstable-lint-inline.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/cli-unknown-force-warn.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/deny-unstable-lint-command-line.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/deny-unstable-lint-inline.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/redundant-path-83477.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/suggestions.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/unknown-lints-in-cfg-attr-97094.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/warn-unknown-unstable-lint-command-line.rs: [missing] -> pass (J1)
  • [ui] tests/ui/lint/unknown-lints/warn-unknown-unstable-lint-inline.rs: [missing] -> pass (J1)
  • [ui] tests/ui/parser/struct-expr-pat-tuple-index-shorthand.rs: [missing] -> pass (J1)
  • [ui] tests/ui/parser/struct-field-numeric-shorthand.rs: pass -> [missing] (J1)
  • [ui] tests/ui/pattern/deref-patterns/deref-non-pointer.rs: [missing] -> pass (J1)
  • [ui] tests/ui/pattern/deref-patterns/deref-pointer-cast-mutability-71676.rs: [missing] -> pass (J1)
  • [ui] tests/ui/reserved/meta-is-not-reserved.rs: pass -> [missing] (J1)
  • [ui] tests/ui/reserved/reserved-attr-on-macro.rs: pass -> [missing] (J1)
  • [ui] tests/ui/reserved/reserved-become.rs: pass -> [missing] (J1)
  • [ui] tests/ui/structs/struct-pat-unmentioned-tuple-indices.rs: [missing] -> pass (J1)
  • [ui] tests/ui/structs/struct-tuple-field-names.rs: pass -> [missing] (J1)
  • [ui] tests/ui/tuple/tuple-variant-written-as-empty-struct-variant.rs: [missing] -> pass (J1)
  • [ui] tests/ui/unknown-unstable-lints/allow-unknown-unstable-lint-command-line.rs: pass -> [missing] (J1)
  • [ui] tests/ui/unknown-unstable-lints/allow-unknown-unstable-lint-inline.rs: pass -> [missing] (J1)
  • [ui] tests/ui/unknown-unstable-lints/deny-unstable-lint-command-line.rs: pass -> [missing] (J1)
  • [ui] tests/ui/unknown-unstable-lints/deny-unstable-lint-inline.rs: pass -> [missing] (J1)
  • [ui] tests/ui/unknown-unstable-lints/warn-unknown-unstable-lint-command-line.rs: pass -> [missing] (J1)
  • [ui] tests/ui/unknown-unstable-lints/warn-unknown-unstable-lint-inline.rs: pass -> [missing] (J1)

Stage 2

  • [ui] tests/ui/dataflow_const_prop/recursive-async.rs: [missing] -> pass (J0)
  • [ui] tests/ui/deref-patterns/deref-non-pointer.rs: pass -> [missing] (J0)
  • [ui] tests/ui/deref-patterns/issue-71676-1.rs: pass -> [missing] (J0)
  • [ui] tests/ui/deref-patterns/issue-71676-2.rs: pass -> [missing] (J0)
  • [ui] tests/ui/keyword/meta-is-not-reserved.rs: [missing] -> pass (J0)
  • [ui] tests/ui/keyword/reserved-attr-on-macro.rs: [missing] -> pass (J0)
  • [ui] tests/ui/keyword/reserved-become.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/cli-unknown-force-warn.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/issue-83477.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/issue-97094.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline-allow.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline-deny.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/lint-unknown-lint-cmdline.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/lint-unknown-lint.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/not_found.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/unknown-lints-at-crate-level.rs: pass -> [missing] (J0)
  • [ui] tests/ui/lint/unknown-lints/allow-unknown-unstable-lint-command-line.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/allow-unknown-unstable-lint-inline.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/cli-unknown-force-warn.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/deny-unstable-lint-command-line.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/deny-unstable-lint-inline.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/redundant-path-83477.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/suggestions.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/unknown-lints-in-cfg-attr-97094.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/warn-unknown-unstable-lint-command-line.rs: [missing] -> pass (J0)
  • [ui] tests/ui/lint/unknown-lints/warn-unknown-unstable-lint-inline.rs: [missing] -> pass (J0)
  • [ui] tests/ui/parser/struct-expr-pat-tuple-index-shorthand.rs: [missing] -> pass (J0)
  • [ui] tests/ui/parser/struct-field-numeric-shorthand.rs: pass -> [missing] (J0)
  • [ui] tests/ui/pattern/deref-patterns/deref-non-pointer.rs: [missing] -> pass (J0)
  • [ui] tests/ui/pattern/deref-patterns/deref-pointer-cast-mutability-71676.rs: [missing] -> pass (J0)
  • [ui] tests/ui/reserved/meta-is-not-reserved.rs: pass -> [missing] (J0)
  • [ui] tests/ui/reserved/reserved-attr-on-macro.rs: pass -> [missing] (J0)
  • [ui] tests/ui/reserved/reserved-become.rs: pass -> [missing] (J0)
  • [ui] tests/ui/structs/struct-pat-unmentioned-tuple-indices.rs: [missing] -> pass (J0)
  • [ui] tests/ui/structs/struct-tuple-field-names.rs: pass -> [missing] (J0)
  • [ui] tests/ui/tuple/tuple-variant-written-as-empty-struct-variant.rs: [missing] -> pass (J0)
  • [ui] tests/ui/unknown-unstable-lints/allow-unknown-unstable-lint-command-line.rs: pass -> [missing] (J0)
  • [ui] tests/ui/unknown-unstable-lints/allow-unknown-unstable-lint-inline.rs: pass -> [missing] (J0)
  • [ui] tests/ui/unknown-unstable-lints/deny-unstable-lint-command-line.rs: pass -> [missing] (J0)
  • [ui] tests/ui/unknown-unstable-lints/deny-unstable-lint-inline.rs: pass -> [missing] (J0)
  • [ui] tests/ui/unknown-unstable-lints/warn-unknown-unstable-lint-command-line.rs: pass -> [missing] (J0)
  • [ui] tests/ui/unknown-unstable-lints/warn-unknown-unstable-lint-inline.rs: pass -> [missing] (J0)

Additionally, 460 doctest diffs were found. These are ignored, as they are noisy.

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard cf79d034aa3d8f396d407aafce6f1ccd818e710e --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. dist-various-2: 1h 20m -> 43m 50s (-45.4%)
  2. x86_64-msvc-1: 2h 7m -> 2h 45m (+29.6%)
  3. armhf-gnu: 1h 10m -> 1h 28m (+26.0%)
  4. x86_64-mingw-1: 2h 21m -> 2h 48m (+19.5%)
  5. i686-gnu-1: 1h 51m -> 2h 12m (+19.3%)
  6. dist-aarch64-apple: 1h 53m -> 2h 14m (+18.7%)
  7. i686-gnu-nopt-1: 2h 11m -> 1h 49m (-16.3%)
  8. x86_64-msvc-ext2: 2h 2m -> 1h 45m (-13.8%)
  9. dist-apple-various: 1h 38m -> 1h 47m (+9.4%)
  10. x86_64-msvc-2: 2h 18m -> 2h 31m (+9.1%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (cf79d03): comparison URL.

Overall result: ❌✅ regressions and improvements - no action needed

@rustbot label: -perf-regression

Instruction count

Our most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
0.4% [0.2%, 0.6%] 4
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.1% [-0.1%, -0.1%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -2.7%, secondary -2.4%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
2.0% [2.0%, 2.0%] 1
Improvements ✅
(primary)
-2.7% [-3.5%, -1.9%] 2
Improvements ✅
(secondary)
-2.8% [-4.3%, -1.5%] 12
All ❌✅ (primary) -2.7% [-3.5%, -1.9%] 2

Cycles

This perf run didn't have relevant results for this metric.

Binary size

This perf run didn't have relevant results for this metric.

Bootstrap: 491.485s -> 493.065s (0.32%)
Artifact size: 394.32 MiB -> 394.27 MiB (-0.01%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-attributes Area: Attributes (`#[…]`, `#![…]`) A-compiletest Area: The compiletest test runner A-rustc-dev-guide Area: rustc-dev-guide A-testsuite Area: The testsuite used to check the correctness of rustc A-tidy Area: The tidy tool merged-by-bors This PR was explicitly merged by bors. rollup A PR which is a rollup 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. T-libs Relevant to the library team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.