-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
NLL: need to run the run-pass
tests under compare-mode=nll
#53764
Comments
nominating so that we discuss at tonight's meeting assign this to a milestone. (I.e. I want to know if this is work we should ensure is done for RC 2.) |
Note that migrating 100% of the (But I would be entirely satisfied if we just ported 99% of the |
whelp I failed to actually look at all the nominated issues during the meeting last night, and so I overlooked my own request to ensure this one was addressed. Still, seems like something important that we may want to ensure is done for RC 2, or perhaps even RC... |
…=nikomatsakis Migrate (some) of run-pass/ to ui This is a step towards addressing #53764. Much still remains. I went through a large portion of the `*.rs` files that were directly stored into `src/test/run-pass/` and moved them into various subdirectories of a newly created `src/test/ui/run-pass/`. (yes, it would have perhaps been nice to meld it more directly with directories already in `src/test/ui/`; but the sad truth is that opens up the reality of filename collisions, and one of my short term goals for resolving #53764 is to keep the *filenames* invariant, even as their parents directories and contents are mildly revised...)
discussed at meeting. We definitely need to do this before we ship. Probably best to do it even sooner, since it would be good to know about anything it happens to catch P-high, Edition RC 2. |
…ss-to-ui, r=nikomatsakis Migrate (some) of run-pass/ to ui This is a step towards addressing rust-lang#53764. Much still remains. I went through a large portion of the `*.rs` files that were directly stored into `src/test/run-pass/` and moved them into various subdirectories of a newly created `src/test/ui/run-pass/`. (yes, it would have perhaps been nice to meld it more directly with directories already in `src/test/ui/`; but the sad truth is that opens up the reality of filename collisions, and one of my short term goals for resolving rust-lang#53764 is to keep the *filenames* invariant, even as their parents directories and contents are mildly revised...)
…ss-borrowck-to-ui, r=nikomatsakis migrate run-pass/borrowck to ui/run-pass Part of rust-lang#53764
…ss-dirs-to-ui, r=alexcrichton migrate run-pass/*/ to ui/run-pass I think this is all that remains of rust-lang#53764
I should soon have a PR up that migrates almost the entire remaining The few exceptions are cases where e.g. there are linker warnings being generated and I am not convinced it would be useful to try to maintain such output in |
Update: after discussion that was prompted by issue #54047, I am going to take a new tack of turning the |
…sakis `ui`ify run-pass This addresses the remainder of #53764 by first converting `src/test/run-pass` into another `ui`-style test suite, and then turning on `compare-mode=nll` for that new suite. After this lands, we can address #54047 for the short term by moving all the `src/test/ui/run-pass` tests back to `src/test/run-pass`. (Longer term, the compiler team's current (hypothetical sketch of a) plan (see [1][], [2][]) is unify all the tests by embedding these meta-properties like "// run-pass` into their headers explicitly and dropping the significance of their location on the file system.) [1]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler/subject/weekly.20meeting.202018-09-13/near/133889370 [2]: #54047 (comment)
The NLL work has been coasting for a long time by focusing on either adding tests that opt into NLL (via
#[feature(nll)]
) or usingcompare-mode=nll
to exercise theui/
test suite.This obviously was imperfect, since it skipped everything outside of
ui/
that didn't use the explicit opt-in, so we have been missing those cases.compile-fail/
by porting those tests to theui/
directory.)At this point, we really should be exercising NLL against (at least) the run-pass test suite.
compiletest
to have some sort ofcompare-mode=nll
that works with therun-pass/
suite.run-pass/
tests to theui/
directory.Below is a task list of directories to be ported from
src/test/run-pass/*/
:./
: PR Migrate (some) of run-pass/ to ui #53860allocator/
: PR migrate run-pass/*/ to ui/run-pass #53994auxiliary/
(N/A)bench/
: PR migrate run-pass/*/ to ui/run-pass #53994borrowck/
: PR migrate run-pass/borrowck to ui/run-pass #53992closure-expected-type/
: PR Migrate (some) of run-pass/ to ui #53860ctfe/
: PR migrate run-pass/*/ to ui/run-pass #53994foreign-mod-src/
: PR Migrate (some) of run-pass/ to ui #53860foreign-src/
: PR Migrate (some) of run-pass/ to ui #53860generator/
: PR migrate run-pass/*/ to ui/run-pass #53994hygiene/
: PR Migrate (some) of run-pass/ to ui #53860impl-trait/
: PR migrate run-pass/*/ to ui/run-pass #53994import-crate-with-invalid-spans/
: PR Migrate (some) of run-pass/ to ui #53860issue-18804/
: PR Migrate (some) of run-pass/ to ui #53860issue24687-embed-debuginfo/
: PR Migrate (some) of run-pass/ to ui #53860issue_26873_multifile/
: PR Migrate (some) of run-pass/ to ui #53860issue-37291/
: PR Migrate (some) of run-pass/ to ui #53860issue-50865-private-impl-trait/
: PR Migrate (some) of run-pass/ to ui #53860issue-52140/
: PR Migrate (some) of run-pass/ to ui #53860issue-52141/
: PR Migrate (some) of run-pass/ to ui #53860issue-52705/
: PR Migrate (some) of run-pass/ to ui #53860mir-inlining/
: PR Migrate (some) of run-pass/ to ui #53860mod_dir_implicit_aux/
: PR Migrate (some) of run-pass/ to ui #53860mod_dir_simple/
: PR Migrate (some) of run-pass/ to ui #53860module-polymorphism3-files/
: PR Migrate (some) of run-pass/ to ui #53860nll/
: PR migrate run-pass/*/ to ui/run-pass #53994non_modrs_mods/
: PR migrate run-pass/*/ to ui/run-pass #53994panic-runtime/
: PR migrate run-pass/*/ to ui/run-pass #53994rfc1445/
: PR Migrate (some) of run-pass/ to ui #53860rfc1717/
: PR Migrate (some) of run-pass/ to ui #53860rfc-1789-as-cell/
: PR Migrate (some) of run-pass/ to ui #53860rfc-1937-termination-trait/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2005-default-binding-mode/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2008-non-exhaustive/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2126-crate-paths/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2126-extern-absolute-paths/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2151-raw-identifiers/
: PR Migrate (some) of run-pass/ to ui #53860rfc-2175-or-if-while-let/
: PR Migrate (some) of run-pass/ to ui #53860specialization/
: PR migrate run-pass/*/ to ui/run-pass #53994syntax-extension-source-utils-files/
: PR Migrate (some) of run-pass/ to ui #53860thinlto/
: PR migrate run-pass/*/ to ui/run-pass #53994uniform-paths/
: PR migrate run-pass/*/ to ui/run-pass #53994union/
: PR migrate run-pass/*/ to ui/run-pass #53994unsized-locals/
: PR migrate run-pass/*/ to ui/run-pass #53994The text was updated successfully, but these errors were encountered: