Skip to content

Rollup of 2 pull requests#156561

Merged
rust-bors[bot] merged 5 commits into
rust-lang:mainfrom
jieyouxu:rollup-l3kXdVY
May 14, 2026
Merged

Rollup of 2 pull requests#156561
rust-bors[bot] merged 5 commits into
rust-lang:mainfrom
jieyouxu:rollup-l3kXdVY

Conversation

@jieyouxu
Copy link
Copy Markdown
Member

Successful merges:

r? @ghost

Create a similar rollup

Zalathar and others added 5 commits May 13, 2026 15:52
The compiletest `--pass` flag only affects tests with a `*-pass` directive,
i.e. `check-pass`, `build-pass`, or `run-pass`.

It has no effect in `*-fail` tests, or in auxiliary crates.
By convention, compiletest directives starting with `ignore-*` normally cause
the test itself to be skipped under certain conditions.

The `//@ ignore-pass` directive was the only exception to that convention. The
new name should hopefully do a better job of communicating its effect, which is
to cause the `--pass` flag to not override the test's `build-pass` or
`run-pass` directive.

The `//@ no-pass-override` directive is mainly useful for tests that expect
warnings produced during codegen.
compiletest: Enforce that directives are consistently used with or without a colon

With the notable exception of `//@ pp-exact`, all directives expect to either always be used *with* a colon, or always be used *without* a colon. For example:

- `//@ uses-colon: value`
- `//@ no-colon` or `//@ no-colon (remark)`

Currently we just silently discard directives that use the wrong syntax, which is not great.

This PR therefore makes `parse_name_directive` and `parse_name_value_directive` panic if the wrong syntax is encountered.

The parser for `pp-exact` has been adjusted to check for the colon before deciding which parse method to call.

r? jieyouxu
compiletest: Rename `//@ ignore-pass` to `//@ no-pass-override`

By convention, compiletest directives starting with `ignore-*` normally cause the test itself to be skipped under certain conditions.

The `//@ ignore-pass` directive was the only exception to that convention. The new name should hopefully do a better job of communicating its effect, which is to cause the `--pass` flag to not override the test's `build-pass` or `run-pass` directive.

The `//@ no-pass-override` directive is mainly useful for tests that expect warnings produced during codegen.

---
r? jieyouxu
@rust-bors rust-bors Bot added the rollup A PR which is a rollup label May 14, 2026
@rustbot rustbot added 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 F-explicit_tail_calls `#![feature(explicit_tail_calls)]` 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. labels May 14, 2026
@jieyouxu
Copy link
Copy Markdown
Member Author

@bors r+ p=5

@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented May 14, 2026

📌 Commit 76d07a6 has been approved by jieyouxu

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 May 14, 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 May 14, 2026
@rust-bors
Copy link
Copy Markdown
Contributor

rust-bors Bot commented May 14, 2026

☀️ Test successful - CI
Approved by: jieyouxu
Duration: 3h 19m 22s
Pushing 1a70f8d to main...

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

📌 Perf builds for each rolled up PR:

PR# Message Perf Build Sha
#156450 compiletest: Enforce that directives are consistently used … 13b7e6bdeadb693bfa714208d24f6381709d741d (link)
#156531 compiletest: Rename //@ ignore-pass to `//@ no-pass-overr… 599d4a6c44cf65f919cb0c3cf08b7d672d2803c0 (link)

previous master: c85af1c5ed

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 c85af1c (parent) -> 1a70f8d (this PR)

Test differences

Show 4 test diffs

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

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 1a70f8d36e818b45829a5c065fd6004c9047e8d1 --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. x86_64-rust-for-linux: 55m -> 36m 32s (-33.6%)
  2. x86_64-msvc-ext1: 2h 23m -> 1h 40m (-30.5%)
  3. x86_64-gnu-llvm-21: 1h 18m -> 55m 18s (-29.4%)
  4. i686-gnu-nopt-1: 2h 22m -> 1h 42m (-28.5%)
  5. i686-gnu-1: 2h 25m -> 1h 49m (-24.7%)
  6. x86_64-mingw-2: 2h 49m -> 2h 8m (-24.4%)
  7. dist-x86_64-musl: 2h 17m -> 1h 43m (-24.2%)
  8. dist-apple-various: 1h 49m -> 2h 13m (+22.4%)
  9. dist-various-1: 1h -> 1h 13m (+22.4%)
  10. dist-powerpc64-linux-musl: 1h 16m -> 1h 32m (+20.8%)
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.

@jieyouxu jieyouxu deleted the rollup-l3kXdVY branch May 14, 2026 08:49
@rust-timer
Copy link
Copy Markdown
Collaborator

Finished benchmarking commit (1a70f8d): 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.1% [0.0%, 0.1%] 5
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-0.1% [-0.1%, -0.1%] 3
All ❌✅ (primary) - - 0

Max RSS (memory usage)

Results (primary -2.3%, secondary 3.0%)

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)
3.0% [2.7%, 3.4%] 2
Improvements ✅
(primary)
-2.3% [-2.3%, -2.3%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -2.3% [-2.3%, -2.3%] 1

Cycles

Results (primary -3.4%, secondary 10.7%)

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)
10.7% [3.1%, 18.1%] 13
Improvements ✅
(primary)
-3.4% [-3.4%, -3.4%] 1
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) -3.4% [-3.4%, -3.4%] 1

Binary size

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

Bootstrap: 515.921s -> 512.682s (-0.63%)
Artifact size: 400.07 MiB -> 398.03 MiB (-0.51%)

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

Labels

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 F-explicit_tail_calls `#![feature(explicit_tail_calls)]` 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants