Skip to content

Move compile-pass tests to check-pass or build-pass #62277

Open
@cramertj

Description

compile-pass was the old way to assert that UI tests were able to successfully build. However, it would do a full build of the code, including codegen and linking. Many of our tests don't need this, however, and should instead use the new check-pass, introduced in #61778. For tests that exercise codegen and linking, build-pass can be used instead.

As a first step, it would be good to remove compile-pass to prevent users adding new tests that unconsciously take a dependency on codegen/linking, and push them to use check/build-pass to make the distinction explicit.

To do this, we'd like to start with a mass migration of compile-pass tests to build-pass (rather than check-pass because we don't want to accidentally stop testing codegen/linking functionality). However, we don't want to lose the distinction between tests which are intentionally build-pass and those that have been automatically migrated, so automatically-migrated tests should include a note like // build-pass (FIXME(this-issue-#): could be check-pass?) or similar.

Once that's done, we can remove compile-pass and work on moving over the FIXME-tagged tests to either check-pass or remove the FIXME.

Activity

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

Metadata

Assignees

No one assigned

    Labels

    A-compiletestArea: The compiletest test runnerA-testsuiteArea: The testsuite used to check the correctness of rustcC-cleanupCategory: PRs that clean code up or issues documenting cleanup.E-mediumCall for participation: Medium difficulty. Experience needed to fix: Intermediate.E-mentorCall for participation: This issue has a mentor. Use #t-compiler/help on Zulip for discussion.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions