-
Notifications
You must be signed in to change notification settings - Fork 13.3k
Fix breakage when running compiletest with --test-args=--edition=2015
#139578
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Some changes occurred in src/tools/compiletest cc @jieyouxu This PR changes a file inside Some changes occurred in tests/ui/sanitizer cc @rcvalle |
This comment has been minimized.
This comment has been minimized.
aef870e
to
f13481b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, this mostly looks fine, just a question
tests/ui/closures/2229_closure_analysis/preserve_field_drop_order2.rs
Outdated
Show resolved
Hide resolved
@rustbot author |
Reminder, once the PR becomes ready for a review, use |
f13481b
to
9cf6e8c
Compare
@rustbot author |
...why did I do that... @rustbot review |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, you can r=me after PR CI is green.
…jieyouxu Fix breakage when running compiletest with `--test-args=--edition=2015` Compiletest has an `--edition` flag to change the default edition tests are run with. Unfortunately no test suite successfully executes when that flag is passed. If the edition is set to something greater than 2015 the breakage is expected, since the test suite currently supports only edition 2015 (Ferrous Systems will open an MCP about fixing that soonish). Surprisingly, the test suite is also broken if `--edition=2015` is passed to compiletest. This PR focuses on fixing the latter. This PR fixes the two categories of failures happening when `--edition=2015` is passed: * Some edition-specific tests set their edition through `//@ compile-flags` instead of `//@ edition`. Compiletest doesn't parse the compile flags, so it would see no `//@ edition` and add another `--edition` flag, leading to a rustc error. * Compiletest would add the edition after `//@ compile-flags`, while some tests depend on flags passed to `//@ compile-flags` being the last flags in the rustc invocation. Note that for the first category, I opted to manually go and replace all `//@ compile-flags` setting an edition with an explicit `//@ edition`. We could've changed compiletest to instead check whether an edition was set in `//@ compile-flags`, but I thought it was better to enforce a consistent way to set the edition in tests. I also added the edition to the stamp, so that changing `--edition` results in tests being re-executed. r? `@jieyouxu`
This comment has been minimized.
This comment has been minimized.
💔 Test failed - checks-actions |
@bors r=jieyouxu |
☀️ Test successful - checks-actions |
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 81d8c74 (parent) -> 71b68da (this PR) Test differencesNo test diffs found Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
Finished benchmarking commit (71b68da): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary 2.2%)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.
CyclesResults (secondary 4.6%)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.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 778.797s -> 778.939s (0.02%) |
Compiletest has an
--edition
flag to change the default edition tests are run with. Unfortunately no test suite successfully executes when that flag is passed. If the edition is set to something greater than 2015 the breakage is expected, since the test suite currently supports only edition 2015 (Ferrous Systems will open an MCP about fixing that soonish). Surprisingly, the test suite is also broken if--edition=2015
is passed to compiletest. This PR focuses on fixing the latter.This PR fixes the two categories of failures happening when
--edition=2015
is passed://@ compile-flags
instead of//@ edition
. Compiletest doesn't parse the compile flags, so it would see no//@ edition
and add another--edition
flag, leading to a rustc error.//@ compile-flags
, while some tests depend on flags passed to//@ compile-flags
being the last flags in the rustc invocation.Note that for the first category, I opted to manually go and replace all
//@ compile-flags
setting an edition with an explicit//@ edition
. We could've changed compiletest to instead check whether an edition was set in//@ compile-flags
, but I thought it was better to enforce a consistent way to set the edition in tests.I also added the edition to the stamp, so that changing
--edition
results in tests being re-executed.r? @jieyouxu