about summary refs log tree commit diff
path: root/tests/ui/coroutine
diff options
context:
space:
mode:
author许杰友 Jieyou Xu (Joe) <jieyouxu@outlook.com>2024-02-16 20:02:50 +0000
committer许杰友 Jieyou Xu (Joe) <jieyouxu@outlook.com>2024-02-16 20:02:50 +0000
commitec2cc761bc7067712ecc7734502f703fe3b024c8 (patch)
tree7ab55cd9562da45b86c959f1b98c199b2b03ca92 /tests/ui/coroutine
parente53d6dd35bb38b81dff4b00497f4c152e9009499 (diff)
downloadrust-ec2cc761bc7067712ecc7734502f703fe3b024c8.tar.gz
rust-ec2cc761bc7067712ecc7734502f703fe3b024c8.zip
[AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives
Diffstat (limited to 'tests/ui/coroutine')
-rw-r--r--tests/ui/coroutine/addassign-yield.rs2
-rw-r--r--tests/ui/coroutine/async-coroutine-issue-67158.rs2
-rw-r--r--tests/ui/coroutine/async-gen-deduce-yield.rs4
-rw-r--r--tests/ui/coroutine/async-gen-yield-ty-is-unit.rs4
-rw-r--r--tests/ui/coroutine/async_gen_fn.rs4
-rw-r--r--tests/ui/coroutine/async_gen_fn_iter.rs6
-rw-r--r--tests/ui/coroutine/auxiliary/metadata-sufficient-for-layout.rs2
-rw-r--r--tests/ui/coroutine/auxiliary/unwind-aux.rs6
-rw-r--r--tests/ui/coroutine/borrow-in-tail-expr.rs2
-rw-r--r--tests/ui/coroutine/clone-impl-async.rs2
-rw-r--r--tests/ui/coroutine/clone-rpit.rs8
-rw-r--r--tests/ui/coroutine/conditional-drop.rs6
-rw-r--r--tests/ui/coroutine/control-flow.rs6
-rw-r--r--tests/ui/coroutine/coroutine-resume-after-panic.rs8
-rw-r--r--tests/ui/coroutine/derived-drop-parent-expr.rs2
-rw-r--r--tests/ui/coroutine/discriminant.rs2
-rw-r--r--tests/ui/coroutine/drop-and-replace.rs2
-rw-r--r--tests/ui/coroutine/drop-control-flow.rs2
-rw-r--r--tests/ui/coroutine/drop-env.rs6
-rw-r--r--tests/ui/coroutine/drop-track-addassign-yield.rs2
-rw-r--r--tests/ui/coroutine/drop-tracking-yielding-in-match-guards.rs4
-rw-r--r--tests/ui/coroutine/gen_block.rs4
-rw-r--r--tests/ui/coroutine/gen_block_is_coro.rs2
-rw-r--r--tests/ui/coroutine/gen_block_is_iter.rs8
-rw-r--r--tests/ui/coroutine/gen_block_is_no_future.rs2
-rw-r--r--tests/ui/coroutine/gen_block_iterate.rs8
-rw-r--r--tests/ui/coroutine/gen_block_move.fixed4
-rw-r--r--tests/ui/coroutine/gen_block_move.rs4
-rw-r--r--tests/ui/coroutine/gen_block_panic.rs6
-rw-r--r--tests/ui/coroutine/gen_fn.rs4
-rw-r--r--tests/ui/coroutine/gen_fn_iter.rs6
-rw-r--r--tests/ui/coroutine/gen_fn_lifetime_capture.rs6
-rw-r--r--tests/ui/coroutine/issue-110929-coroutine-conflict-error-ice.rs4
-rw-r--r--tests/ui/coroutine/issue-44197.rs2
-rw-r--r--tests/ui/coroutine/issue-52304.rs2
-rw-r--r--tests/ui/coroutine/issue-52398.rs2
-rw-r--r--tests/ui/coroutine/issue-53548-1.rs2
-rw-r--r--tests/ui/coroutine/issue-53548.rs2
-rw-r--r--tests/ui/coroutine/issue-57017.rs2
-rw-r--r--tests/ui/coroutine/issue-57084.rs4
-rw-r--r--tests/ui/coroutine/issue-57478.rs2
-rw-r--r--tests/ui/coroutine/issue-58888.rs4
-rw-r--r--tests/ui/coroutine/issue-61442-stmt-expr-with-drop.rs4
-rw-r--r--tests/ui/coroutine/issue-62506-two_awaits.rs4
-rw-r--r--tests/ui/coroutine/issue-69017.rs2
-rw-r--r--tests/ui/coroutine/issue-69039.rs2
-rw-r--r--tests/ui/coroutine/issue-87142.rs4
-rw-r--r--tests/ui/coroutine/issue-93161.rs4
-rw-r--r--tests/ui/coroutine/iterator-count.rs2
-rw-r--r--tests/ui/coroutine/layout-error.rs2
-rw-r--r--tests/ui/coroutine/live-upvar-across-yield.rs2
-rw-r--r--tests/ui/coroutine/match-bindings.rs2
-rw-r--r--tests/ui/coroutine/metadata-sufficient-for-layout.rs2
-rw-r--r--tests/ui/coroutine/nested_coroutine.rs2
-rw-r--r--tests/ui/coroutine/niche-in-coroutine.rs2
-rw-r--r--tests/ui/coroutine/non-static-is-unpin.rs6
-rw-r--r--tests/ui/coroutine/overlap-locals.rs2
-rw-r--r--tests/ui/coroutine/panic-drops-resume.rs4
-rw-r--r--tests/ui/coroutine/panic-drops.rs4
-rw-r--r--tests/ui/coroutine/panic-safe.rs4
-rw-r--r--tests/ui/coroutine/partial-drop.rs2
-rw-r--r--tests/ui/coroutine/pin-box-coroutine.rs2
-rw-r--r--tests/ui/coroutine/polymorphize-args.rs4
-rw-r--r--tests/ui/coroutine/print/coroutine-print-verbose-1.rs2
-rw-r--r--tests/ui/coroutine/print/coroutine-print-verbose-2.rs2
-rw-r--r--tests/ui/coroutine/print/coroutine-print-verbose-3.rs2
-rw-r--r--tests/ui/coroutine/reborrow-mut-upvar.rs2
-rw-r--r--tests/ui/coroutine/reinit-in-match-guard.rs2
-rw-r--r--tests/ui/coroutine/resume-after-return.rs4
-rw-r--r--tests/ui/coroutine/resume-arg-size.rs2
-rw-r--r--tests/ui/coroutine/resume-live-across-yield.rs2
-rw-r--r--tests/ui/coroutine/return-types-diverge.rs4
-rw-r--r--tests/ui/coroutine/return-types.rs2
-rw-r--r--tests/ui/coroutine/self_referential_gen_block.rs2
-rw-r--r--tests/ui/coroutine/size-moved-locals.rs8
-rw-r--r--tests/ui/coroutine/smoke-resume-args.rs6
-rw-r--r--tests/ui/coroutine/smoke.rs10
-rw-r--r--tests/ui/coroutine/static-coroutine.rs2
-rw-r--r--tests/ui/coroutine/static-mut-reference-across-yield.rs2
-rw-r--r--tests/ui/coroutine/static-not-unpin.rs6
-rw-r--r--tests/ui/coroutine/static-reference-across-yield.rs2
-rw-r--r--tests/ui/coroutine/too-live-local-in-immovable-gen.rs2
-rw-r--r--tests/ui/coroutine/uninhabited-field.rs2
-rw-r--r--tests/ui/coroutine/unresolved-ct-var.rs4
-rw-r--r--tests/ui/coroutine/unwind-abort-mix.rs10
-rw-r--r--tests/ui/coroutine/witness-ignore-fake-reads.rs4
-rw-r--r--tests/ui/coroutine/xcrate-reachable.rs4
-rw-r--r--tests/ui/coroutine/xcrate.rs4
-rw-r--r--tests/ui/coroutine/yield-in-args-rev.rs2
-rw-r--r--tests/ui/coroutine/yield-in-initializer.rs2
-rw-r--r--tests/ui/coroutine/yield-subtype.rs2
-rw-r--r--tests/ui/coroutine/yielding-in-match-guards.rs4
92 files changed, 163 insertions, 163 deletions
diff --git a/tests/ui/coroutine/addassign-yield.rs b/tests/ui/coroutine/addassign-yield.rs
index 919a559f85b..8718e73512f 100644
--- a/tests/ui/coroutine/addassign-yield.rs
+++ b/tests/ui/coroutine/addassign-yield.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 // Regression test for broken MIR error (#61442)
 // Due to the two possible evaluation orders for
 // a '+=' expression (depending on whether or not the 'AddAssign' trait
diff --git a/tests/ui/coroutine/async-coroutine-issue-67158.rs b/tests/ui/coroutine/async-coroutine-issue-67158.rs
index 420454656d4..14905e6b8bf 100644
--- a/tests/ui/coroutine/async-coroutine-issue-67158.rs
+++ b/tests/ui/coroutine/async-coroutine-issue-67158.rs
@@ -1,5 +1,5 @@
 #![feature(coroutines)]
-// edition:2018
+//@ edition:2018
 // Regression test for #67158.
 fn main() {
     async { yield print!(":C") }; //~ ERROR `async` coroutines are not yet supported
diff --git a/tests/ui/coroutine/async-gen-deduce-yield.rs b/tests/ui/coroutine/async-gen-deduce-yield.rs
index 9ccc8ee41f6..aee920e9773 100644
--- a/tests/ui/coroutine/async-gen-deduce-yield.rs
+++ b/tests/ui/coroutine/async-gen-deduce-yield.rs
@@ -1,5 +1,5 @@
-// compile-flags: --edition 2024 -Zunstable-options
-// check-pass
+//@ compile-flags: --edition 2024 -Zunstable-options
+//@ check-pass
 
 #![feature(async_iterator, gen_blocks)]
 
diff --git a/tests/ui/coroutine/async-gen-yield-ty-is-unit.rs b/tests/ui/coroutine/async-gen-yield-ty-is-unit.rs
index 80c0b69a6f7..62b9bafcd60 100644
--- a/tests/ui/coroutine/async-gen-yield-ty-is-unit.rs
+++ b/tests/ui/coroutine/async-gen-yield-ty-is-unit.rs
@@ -1,5 +1,5 @@
-// compile-flags: --edition 2024 -Zunstable-options
-// check-pass
+//@ compile-flags: --edition 2024 -Zunstable-options
+//@ check-pass
 
 #![feature(async_iterator, gen_blocks, noop_waker)]
 
diff --git a/tests/ui/coroutine/async_gen_fn.rs b/tests/ui/coroutine/async_gen_fn.rs
index 20564106f99..9e96ecf3ea6 100644
--- a/tests/ui/coroutine/async_gen_fn.rs
+++ b/tests/ui/coroutine/async_gen_fn.rs
@@ -1,5 +1,5 @@
-// revisions: e2024 none
-//[e2024] compile-flags: --edition 2024 -Zunstable-options
+//@ revisions: e2024 none
+//@[e2024] compile-flags: --edition 2024 -Zunstable-options
 
 async gen fn foo() {}
 //[none]~^ ERROR: `async fn` is not permitted in Rust 2015
diff --git a/tests/ui/coroutine/async_gen_fn_iter.rs b/tests/ui/coroutine/async_gen_fn_iter.rs
index 604156b4d37..c4a7629f314 100644
--- a/tests/ui/coroutine/async_gen_fn_iter.rs
+++ b/tests/ui/coroutine/async_gen_fn_iter.rs
@@ -1,6 +1,6 @@
-// edition: 2024
-// compile-flags: -Zunstable-options
-// run-pass
+//@ edition: 2024
+//@ compile-flags: -Zunstable-options
+//@ run-pass
 
 #![feature(gen_blocks, async_iterator)]
 #![feature(noop_waker)]
diff --git a/tests/ui/coroutine/auxiliary/metadata-sufficient-for-layout.rs b/tests/ui/coroutine/auxiliary/metadata-sufficient-for-layout.rs
index dc052185340..8af6973134a 100644
--- a/tests/ui/coroutine/auxiliary/metadata-sufficient-for-layout.rs
+++ b/tests/ui/coroutine/auxiliary/metadata-sufficient-for-layout.rs
@@ -1,4 +1,4 @@
-// compile-flags: --emit metadata
+//@ compile-flags: --emit metadata
 #![feature(coroutines, coroutine_trait)]
 
 use std::marker::Unpin;
diff --git a/tests/ui/coroutine/auxiliary/unwind-aux.rs b/tests/ui/coroutine/auxiliary/unwind-aux.rs
index 215d6769116..ff1e8ed32cd 100644
--- a/tests/ui/coroutine/auxiliary/unwind-aux.rs
+++ b/tests/ui/coroutine/auxiliary/unwind-aux.rs
@@ -1,6 +1,6 @@
-// compile-flags: -Cpanic=unwind  --crate-type=lib
-// no-prefer-dynamic
-// edition:2021
+//@ compile-flags: -Cpanic=unwind  --crate-type=lib
+//@ no-prefer-dynamic
+//@ edition:2021
 
 #![feature(coroutines)]
 pub fn run<T>(a: T) {
diff --git a/tests/ui/coroutine/borrow-in-tail-expr.rs b/tests/ui/coroutine/borrow-in-tail-expr.rs
index c1497ad2911..2f0aa62019e 100644
--- a/tests/ui/coroutine/borrow-in-tail-expr.rs
+++ b/tests/ui/coroutine/borrow-in-tail-expr.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/clone-impl-async.rs b/tests/ui/coroutine/clone-impl-async.rs
index e8e82f1994d..d7ba1143b5c 100644
--- a/tests/ui/coroutine/clone-impl-async.rs
+++ b/tests/ui/coroutine/clone-impl-async.rs
@@ -1,4 +1,4 @@
-// edition:2021
+//@ edition:2021
 // gate-test-coroutine_clone
 // Verifies that feature(coroutine_clone) doesn't allow async blocks to be cloned/copied.
 
diff --git a/tests/ui/coroutine/clone-rpit.rs b/tests/ui/coroutine/clone-rpit.rs
index 22a553c83d6..445d155afa9 100644
--- a/tests/ui/coroutine/clone-rpit.rs
+++ b/tests/ui/coroutine/clone-rpit.rs
@@ -1,7 +1,7 @@
-// revisions: current next
-//[next] compile-flags: -Znext-solver
-//[current] check-pass
-//[next] known-bug: trait-system-refactor-initiative#82
+//@ revisions: current next
+//@[next] compile-flags: -Znext-solver
+//@[current] check-pass
+//@[next] known-bug: trait-system-refactor-initiative#82
 
 #![feature(coroutines, coroutine_trait, coroutine_clone)]
 
diff --git a/tests/ui/coroutine/conditional-drop.rs b/tests/ui/coroutine/conditional-drop.rs
index 634095c7acc..65d3a9e701e 100644
--- a/tests/ui/coroutine/conditional-drop.rs
+++ b/tests/ui/coroutine/conditional-drop.rs
@@ -1,7 +1,7 @@
-// run-pass
+//@ run-pass
 
-// revisions: default nomiropt
-//[nomiropt]compile-flags: -Z mir-opt-level=0
+//@ revisions: default nomiropt
+//@[nomiropt]compile-flags: -Z mir-opt-level=0
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/control-flow.rs b/tests/ui/coroutine/control-flow.rs
index 0cb37524a6c..9070ba17856 100644
--- a/tests/ui/coroutine/control-flow.rs
+++ b/tests/ui/coroutine/control-flow.rs
@@ -1,7 +1,7 @@
-// run-pass
+//@ run-pass
 
-// revisions: default nomiropt
-//[nomiropt]compile-flags: -Z mir-opt-level=0
+//@ revisions: default nomiropt
+//@[nomiropt]compile-flags: -Z mir-opt-level=0
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/coroutine-resume-after-panic.rs b/tests/ui/coroutine/coroutine-resume-after-panic.rs
index 5915f5ad9a9..8445bf7e635 100644
--- a/tests/ui/coroutine/coroutine-resume-after-panic.rs
+++ b/tests/ui/coroutine/coroutine-resume-after-panic.rs
@@ -1,7 +1,7 @@
-// run-fail
-// needs-unwind
-// error-pattern:coroutine resumed after panicking
-// ignore-emscripten no processes
+//@ run-fail
+//@ needs-unwind
+//@ error-pattern:coroutine resumed after panicking
+//@ ignore-emscripten no processes
 
 // Test that we get the correct message for resuming a panicked coroutine.
 
diff --git a/tests/ui/coroutine/derived-drop-parent-expr.rs b/tests/ui/coroutine/derived-drop-parent-expr.rs
index 59a3e847838..f70a732c90f 100644
--- a/tests/ui/coroutine/derived-drop-parent-expr.rs
+++ b/tests/ui/coroutine/derived-drop-parent-expr.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 
 //! Like drop-tracking-parent-expression, but also tests that this doesn't ICE when building MIR
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/discriminant.rs b/tests/ui/coroutine/discriminant.rs
index 0cdeb6dd678..a44d8f74746 100644
--- a/tests/ui/coroutine/discriminant.rs
+++ b/tests/ui/coroutine/discriminant.rs
@@ -1,7 +1,7 @@
 //! Tests that coroutine discriminant sizes and ranges are chosen optimally and that they are
 //! reflected in the output of `mem::discriminant`.
 
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait, core_intrinsics, discriminant_kind)]
 
diff --git a/tests/ui/coroutine/drop-and-replace.rs b/tests/ui/coroutine/drop-and-replace.rs
index 38b757fac29..6e30d76512b 100644
--- a/tests/ui/coroutine/drop-and-replace.rs
+++ b/tests/ui/coroutine/drop-and-replace.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 // Regression test for incorrect DropAndReplace behavior introduced in #60840
 // and fixed in #61373. When combined with the optimization implemented in
 // #60187, this produced incorrect code for coroutines when a saved local was
diff --git a/tests/ui/coroutine/drop-control-flow.rs b/tests/ui/coroutine/drop-control-flow.rs
index 55d08b8d5b5..f4e8eed4f8d 100644
--- a/tests/ui/coroutine/drop-control-flow.rs
+++ b/tests/ui/coroutine/drop-control-flow.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 
 // A test to ensure coroutines capture values that were conditionally dropped,
 // and also that values that are dropped along all paths to a yield do not get
diff --git a/tests/ui/coroutine/drop-env.rs b/tests/ui/coroutine/drop-env.rs
index 404c043431d..b189ab81499 100644
--- a/tests/ui/coroutine/drop-env.rs
+++ b/tests/ui/coroutine/drop-env.rs
@@ -1,7 +1,7 @@
-// run-pass
+//@ run-pass
 
-// revisions: default nomiropt
-//[nomiropt]compile-flags: -Z mir-opt-level=0
+//@ revisions: default nomiropt
+//@[nomiropt]compile-flags: -Z mir-opt-level=0
 
 #![feature(coroutines, coroutine_trait)]
 #![allow(dropping_copy_types)]
diff --git a/tests/ui/coroutine/drop-track-addassign-yield.rs b/tests/ui/coroutine/drop-track-addassign-yield.rs
index 6c5897458ec..b1a4bd79f31 100644
--- a/tests/ui/coroutine/drop-track-addassign-yield.rs
+++ b/tests/ui/coroutine/drop-track-addassign-yield.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 // Based on addassign-yield.rs, but with drop tracking enabled. Originally we did not implement
 // the fake_read callback on ExprUseVisitor which caused this case to break.
diff --git a/tests/ui/coroutine/drop-tracking-yielding-in-match-guards.rs b/tests/ui/coroutine/drop-tracking-yielding-in-match-guards.rs
index 622765d82aa..0f94016f11b 100644
--- a/tests/ui/coroutine/drop-tracking-yielding-in-match-guards.rs
+++ b/tests/ui/coroutine/drop-tracking-yielding-in-match-guards.rs
@@ -1,5 +1,5 @@
-// build-pass
-// edition:2018
+//@ build-pass
+//@ edition:2018
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/gen_block.rs b/tests/ui/coroutine/gen_block.rs
index 852c7c455a6..f6a775aa661 100644
--- a/tests/ui/coroutine/gen_block.rs
+++ b/tests/ui/coroutine/gen_block.rs
@@ -1,5 +1,5 @@
-// revisions: e2024 none
-//[e2024] compile-flags: --edition 2024 -Zunstable-options
+//@ revisions: e2024 none
+//@[e2024] compile-flags: --edition 2024 -Zunstable-options
 #![cfg_attr(e2024, feature(gen_blocks))]
 
 fn main() {
diff --git a/tests/ui/coroutine/gen_block_is_coro.rs b/tests/ui/coroutine/gen_block_is_coro.rs
index c66ccefba85..970646ac470 100644
--- a/tests/ui/coroutine/gen_block_is_coro.rs
+++ b/tests/ui/coroutine/gen_block_is_coro.rs
@@ -1,4 +1,4 @@
-//compile-flags: --edition 2024 -Zunstable-options
+//@compile-flags: --edition 2024 -Zunstable-options
 #![feature(coroutines, coroutine_trait, gen_blocks)]
 
 use std::ops::Coroutine;
diff --git a/tests/ui/coroutine/gen_block_is_iter.rs b/tests/ui/coroutine/gen_block_is_iter.rs
index d43eef4a18d..396d7737132 100644
--- a/tests/ui/coroutine/gen_block_is_iter.rs
+++ b/tests/ui/coroutine/gen_block_is_iter.rs
@@ -1,7 +1,7 @@
-// revisions: next old
-//compile-flags: --edition 2024 -Zunstable-options
-//[next] compile-flags: -Znext-solver
-// check-pass
+//@ revisions: next old
+//@compile-flags: --edition 2024 -Zunstable-options
+//@[next] compile-flags: -Znext-solver
+//@ check-pass
 #![feature(gen_blocks)]
 
 fn foo() -> impl Iterator<Item = u32> {
diff --git a/tests/ui/coroutine/gen_block_is_no_future.rs b/tests/ui/coroutine/gen_block_is_no_future.rs
index 94766519738..a5bb8533719 100644
--- a/tests/ui/coroutine/gen_block_is_no_future.rs
+++ b/tests/ui/coroutine/gen_block_is_no_future.rs
@@ -1,4 +1,4 @@
-//compile-flags: --edition 2024 -Zunstable-options
+//@compile-flags: --edition 2024 -Zunstable-options
 #![feature(gen_blocks)]
 
 fn foo() -> impl std::future::Future { //~ ERROR is not a future
diff --git a/tests/ui/coroutine/gen_block_iterate.rs b/tests/ui/coroutine/gen_block_iterate.rs
index 8e72b00d99d..a9cb5ef3e2c 100644
--- a/tests/ui/coroutine/gen_block_iterate.rs
+++ b/tests/ui/coroutine/gen_block_iterate.rs
@@ -1,7 +1,7 @@
-// revisions: next old
-//compile-flags: --edition 2024 -Zunstable-options
-//[next] compile-flags: -Znext-solver
-// run-pass
+//@ revisions: next old
+//@compile-flags: --edition 2024 -Zunstable-options
+//@[next] compile-flags: -Znext-solver
+//@ run-pass
 #![feature(gen_blocks)]
 
 fn foo() -> impl Iterator<Item = u32> {
diff --git a/tests/ui/coroutine/gen_block_move.fixed b/tests/ui/coroutine/gen_block_move.fixed
index 5c6c8062322..0327ca75f9e 100644
--- a/tests/ui/coroutine/gen_block_move.fixed
+++ b/tests/ui/coroutine/gen_block_move.fixed
@@ -1,5 +1,5 @@
-// compile-flags: --edition 2024 -Zunstable-options
-// run-rustfix
+//@ compile-flags: --edition 2024 -Zunstable-options
+//@ run-rustfix
 #![feature(gen_blocks)]
 
 fn moved() -> impl Iterator<Item = u32> {
diff --git a/tests/ui/coroutine/gen_block_move.rs b/tests/ui/coroutine/gen_block_move.rs
index abbf8132476..53d0149872a 100644
--- a/tests/ui/coroutine/gen_block_move.rs
+++ b/tests/ui/coroutine/gen_block_move.rs
@@ -1,5 +1,5 @@
-// compile-flags: --edition 2024 -Zunstable-options
-// run-rustfix
+//@ compile-flags: --edition 2024 -Zunstable-options
+//@ run-rustfix
 #![feature(gen_blocks)]
 
 fn moved() -> impl Iterator<Item = u32> {
diff --git a/tests/ui/coroutine/gen_block_panic.rs b/tests/ui/coroutine/gen_block_panic.rs
index 2da0eb512cc..ada56a5bd6f 100644
--- a/tests/ui/coroutine/gen_block_panic.rs
+++ b/tests/ui/coroutine/gen_block_panic.rs
@@ -1,6 +1,6 @@
-//compile-flags: --edition 2024 -Zunstable-options
-// run-pass
-// needs-unwind
+//@compile-flags: --edition 2024 -Zunstable-options
+//@ run-pass
+//@ needs-unwind
 #![feature(gen_blocks)]
 
 fn main() {
diff --git a/tests/ui/coroutine/gen_fn.rs b/tests/ui/coroutine/gen_fn.rs
index e06629c5dfe..3228650f415 100644
--- a/tests/ui/coroutine/gen_fn.rs
+++ b/tests/ui/coroutine/gen_fn.rs
@@ -1,5 +1,5 @@
-// revisions: e2024 none
-//[e2024] compile-flags: --edition 2024 -Zunstable-options
+//@ revisions: e2024 none
+//@[e2024] compile-flags: --edition 2024 -Zunstable-options
 
 gen fn foo() {}
 //[none]~^ ERROR: expected one of `#`, `async`, `const`, `default`, `extern`, `fn`, `pub`, `unsafe`, or `use`, found `gen`
diff --git a/tests/ui/coroutine/gen_fn_iter.rs b/tests/ui/coroutine/gen_fn_iter.rs
index da01bc96ef4..ae09d678fe3 100644
--- a/tests/ui/coroutine/gen_fn_iter.rs
+++ b/tests/ui/coroutine/gen_fn_iter.rs
@@ -1,6 +1,6 @@
-// edition: 2024
-// compile-flags: -Zunstable-options
-// run-pass
+//@ edition: 2024
+//@ compile-flags: -Zunstable-options
+//@ run-pass
 #![feature(gen_blocks)]
 
 // make sure that a ridiculously simple gen fn works as an iterator.
diff --git a/tests/ui/coroutine/gen_fn_lifetime_capture.rs b/tests/ui/coroutine/gen_fn_lifetime_capture.rs
index b6a4d71e6cc..517096d092e 100644
--- a/tests/ui/coroutine/gen_fn_lifetime_capture.rs
+++ b/tests/ui/coroutine/gen_fn_lifetime_capture.rs
@@ -1,6 +1,6 @@
-// edition: 2024
-// compile-flags: -Zunstable-options
-// check-pass
+//@ edition: 2024
+//@ compile-flags: -Zunstable-options
+//@ check-pass
 #![feature(gen_blocks)]
 
 // make sure gen fn captures lifetimes in its signature
diff --git a/tests/ui/coroutine/issue-110929-coroutine-conflict-error-ice.rs b/tests/ui/coroutine/issue-110929-coroutine-conflict-error-ice.rs
index ad39b71b0eb..3d372ac9110 100644
--- a/tests/ui/coroutine/issue-110929-coroutine-conflict-error-ice.rs
+++ b/tests/ui/coroutine/issue-110929-coroutine-conflict-error-ice.rs
@@ -1,5 +1,5 @@
-// edition:2021
-// check-pass
+//@ edition:2021
+//@ check-pass
 #![feature(coroutines)]
 
 fn main() {
diff --git a/tests/ui/coroutine/issue-44197.rs b/tests/ui/coroutine/issue-44197.rs
index c0326bdae4e..e18bcc2c996 100644
--- a/tests/ui/coroutine/issue-44197.rs
+++ b/tests/ui/coroutine/issue-44197.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/issue-52304.rs b/tests/ui/coroutine/issue-52304.rs
index fed3a5f19b3..01ed181ab1d 100644
--- a/tests/ui/coroutine/issue-52304.rs
+++ b/tests/ui/coroutine/issue-52304.rs
@@ -1,4 +1,4 @@
-// check-pass
+//@ check-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/issue-52398.rs b/tests/ui/coroutine/issue-52398.rs
index 8d651d0e2ce..826ce6b9d9b 100644
--- a/tests/ui/coroutine/issue-52398.rs
+++ b/tests/ui/coroutine/issue-52398.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 #![allow(unused_variables)]
 
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/issue-53548-1.rs b/tests/ui/coroutine/issue-53548-1.rs
index 4be8e95f3e7..21b71e228a9 100644
--- a/tests/ui/coroutine/issue-53548-1.rs
+++ b/tests/ui/coroutine/issue-53548-1.rs
@@ -2,7 +2,7 @@
 // but which encountered the same ICE/error. See `issue-53548.rs`
 // for details.
 //
-// check-pass
+//@ check-pass
 
 use std::cell::RefCell;
 use std::rc::Rc;
diff --git a/tests/ui/coroutine/issue-53548.rs b/tests/ui/coroutine/issue-53548.rs
index bb267f74ae2..6d55994137f 100644
--- a/tests/ui/coroutine/issue-53548.rs
+++ b/tests/ui/coroutine/issue-53548.rs
@@ -15,7 +15,7 @@
 // also analogous to what we would do for higher-ranked regions
 // appearing within the trait in other positions).
 //
-// check-pass
+//@ check-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/issue-57017.rs b/tests/ui/coroutine/issue-57017.rs
index 4f63abbdb10..b83d916932a 100644
--- a/tests/ui/coroutine/issue-57017.rs
+++ b/tests/ui/coroutine/issue-57017.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 #![feature(coroutines, negative_impls)]
 #![allow(dropping_references, dropping_copy_types)]
 
diff --git a/tests/ui/coroutine/issue-57084.rs b/tests/ui/coroutine/issue-57084.rs
index e0aeae66735..51b0c8e1de9 100644
--- a/tests/ui/coroutine/issue-57084.rs
+++ b/tests/ui/coroutine/issue-57084.rs
@@ -1,7 +1,7 @@
 // This issue reproduces an ICE on compile (E.g. fails on 2018-12-19 nightly).
 // "cannot relate bound region: ReBound(DebruijnIndex(1), BrAnon(1)) <= '?1"
-// run-pass
-// edition:2018
+//@ run-pass
+//@ edition:2018
 #![feature(coroutines,coroutine_trait)]
 use std::ops::Coroutine;
 
diff --git a/tests/ui/coroutine/issue-57478.rs b/tests/ui/coroutine/issue-57478.rs
index 716e4c67b87..5e479aaa9c1 100644
--- a/tests/ui/coroutine/issue-57478.rs
+++ b/tests/ui/coroutine/issue-57478.rs
@@ -1,4 +1,4 @@
-// check-pass
+//@ check-pass
 
 #![feature(negative_impls, coroutines)]
 
diff --git a/tests/ui/coroutine/issue-58888.rs b/tests/ui/coroutine/issue-58888.rs
index 9c699c7bb82..ce45f22dd6e 100644
--- a/tests/ui/coroutine/issue-58888.rs
+++ b/tests/ui/coroutine/issue-58888.rs
@@ -1,5 +1,5 @@
-// run-pass
-// compile-flags: -g
+//@ run-pass
+//@ compile-flags: -g
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/issue-61442-stmt-expr-with-drop.rs b/tests/ui/coroutine/issue-61442-stmt-expr-with-drop.rs
index cff6c24a83f..6280b777201 100644
--- a/tests/ui/coroutine/issue-61442-stmt-expr-with-drop.rs
+++ b/tests/ui/coroutine/issue-61442-stmt-expr-with-drop.rs
@@ -1,8 +1,8 @@
 // Test that we don't consider temporaries for statement expressions as live
 // across yields
 
-// check-pass
-// edition:2018
+//@ check-pass
+//@ edition:2018
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/issue-62506-two_awaits.rs b/tests/ui/coroutine/issue-62506-two_awaits.rs
index b50e2a45c58..62feb1bf555 100644
--- a/tests/ui/coroutine/issue-62506-two_awaits.rs
+++ b/tests/ui/coroutine/issue-62506-two_awaits.rs
@@ -1,8 +1,8 @@
 // Output = String caused an ICE whereas Output = &'static str compiled successfully.
 // Broken MIR: coroutine contains type std::string::String in MIR,
 // but typeck only knows about {<S as T>::Future, ()}
-// check-pass
-// edition:2018
+//@ check-pass
+//@ edition:2018
 
 use std::future::Future;
 
diff --git a/tests/ui/coroutine/issue-69017.rs b/tests/ui/coroutine/issue-69017.rs
index 7aaa1ee03c4..09bbf63a986 100644
--- a/tests/ui/coroutine/issue-69017.rs
+++ b/tests/ui/coroutine/issue-69017.rs
@@ -2,7 +2,7 @@
 // Fails on 2020-02-08 nightly
 // regressed commit: https://github.com/rust-lang/rust/commit/f8fd4624474a68bd26694eff3536b9f3a127b2d3
 //
-// check-pass
+//@ check-pass
 
 #![feature(coroutine_trait)]
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/issue-69039.rs b/tests/ui/coroutine/issue-69039.rs
index 041985e15a3..fd12414c3d8 100644
--- a/tests/ui/coroutine/issue-69039.rs
+++ b/tests/ui/coroutine/issue-69039.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/issue-87142.rs b/tests/ui/coroutine/issue-87142.rs
index b5708c4b385..f5c3805842c 100644
--- a/tests/ui/coroutine/issue-87142.rs
+++ b/tests/ui/coroutine/issue-87142.rs
@@ -1,5 +1,5 @@
-// compile-flags: -Cdebuginfo=2
-// build-pass
+//@ compile-flags: -Cdebuginfo=2
+//@ build-pass
 
 // Regression test for #87142
 // This test needs the above flags and the "lib" crate type.
diff --git a/tests/ui/coroutine/issue-93161.rs b/tests/ui/coroutine/issue-93161.rs
index ae8603b7c09..0c7be8407d0 100644
--- a/tests/ui/coroutine/issue-93161.rs
+++ b/tests/ui/coroutine/issue-93161.rs
@@ -1,5 +1,5 @@
-// edition:2021
-// run-pass
+//@ edition:2021
+//@ run-pass
 
 #![feature(never_type)]
 
diff --git a/tests/ui/coroutine/iterator-count.rs b/tests/ui/coroutine/iterator-count.rs
index b7628c44ddc..bb202ab2d33 100644
--- a/tests/ui/coroutine/iterator-count.rs
+++ b/tests/ui/coroutine/iterator-count.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/layout-error.rs b/tests/ui/coroutine/layout-error.rs
index 87da60700a4..70a0248eabc 100644
--- a/tests/ui/coroutine/layout-error.rs
+++ b/tests/ui/coroutine/layout-error.rs
@@ -1,7 +1,7 @@
 // Verifies that computing a layout of a coroutine tainted by type errors
 // doesn't ICE. Regression test for #80998.
 //
-// edition:2018
+//@ edition:2018
 
 #![feature(type_alias_impl_trait)]
 use std::future::Future;
diff --git a/tests/ui/coroutine/live-upvar-across-yield.rs b/tests/ui/coroutine/live-upvar-across-yield.rs
index 740a446e737..86c4716c951 100644
--- a/tests/ui/coroutine/live-upvar-across-yield.rs
+++ b/tests/ui/coroutine/live-upvar-across-yield.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/match-bindings.rs b/tests/ui/coroutine/match-bindings.rs
index 1a5b3cdb026..9ea1deaab36 100644
--- a/tests/ui/coroutine/match-bindings.rs
+++ b/tests/ui/coroutine/match-bindings.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 #![allow(dead_code)]
 
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/metadata-sufficient-for-layout.rs b/tests/ui/coroutine/metadata-sufficient-for-layout.rs
index 434a2801597..23937e12c52 100644
--- a/tests/ui/coroutine/metadata-sufficient-for-layout.rs
+++ b/tests/ui/coroutine/metadata-sufficient-for-layout.rs
@@ -3,7 +3,7 @@
 //
 // Regression test for #80998.
 //
-// aux-build:metadata-sufficient-for-layout.rs
+//@ aux-build:metadata-sufficient-for-layout.rs
 
 #![feature(type_alias_impl_trait, rustc_attrs)]
 #![feature(coroutine_trait)]
diff --git a/tests/ui/coroutine/nested_coroutine.rs b/tests/ui/coroutine/nested_coroutine.rs
index 04f4aa77153..7ff97abf4bb 100644
--- a/tests/ui/coroutine/nested_coroutine.rs
+++ b/tests/ui/coroutine/nested_coroutine.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/niche-in-coroutine.rs b/tests/ui/coroutine/niche-in-coroutine.rs
index 7ad4c6bc98a..45b920ab927 100644
--- a/tests/ui/coroutine/niche-in-coroutine.rs
+++ b/tests/ui/coroutine/niche-in-coroutine.rs
@@ -1,6 +1,6 @@
 // Test that niche finding works with captured coroutine upvars.
 
-// run-pass
+//@ run-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/non-static-is-unpin.rs b/tests/ui/coroutine/non-static-is-unpin.rs
index 238e49bbfdf..0a108d52897 100644
--- a/tests/ui/coroutine/non-static-is-unpin.rs
+++ b/tests/ui/coroutine/non-static-is-unpin.rs
@@ -1,6 +1,6 @@
-// revisions: current next
-//[next] compile-flags: -Znext-solver
-// run-pass
+//@ revisions: current next
+//@[next] compile-flags: -Znext-solver
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 #![allow(dropping_copy_types)]
diff --git a/tests/ui/coroutine/overlap-locals.rs b/tests/ui/coroutine/overlap-locals.rs
index 7c151270bb5..eea8595ed06 100644
--- a/tests/ui/coroutine/overlap-locals.rs
+++ b/tests/ui/coroutine/overlap-locals.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/panic-drops-resume.rs b/tests/ui/coroutine/panic-drops-resume.rs
index e866f216a24..6d026e6edc8 100644
--- a/tests/ui/coroutine/panic-drops-resume.rs
+++ b/tests/ui/coroutine/panic-drops-resume.rs
@@ -1,7 +1,7 @@
 //! Tests that panics inside a coroutine will correctly drop the initial resume argument.
 
-// run-pass
-// needs-unwind
+//@ run-pass
+//@ needs-unwind
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/panic-drops.rs b/tests/ui/coroutine/panic-drops.rs
index 7e37279b9eb..c99abdc7246 100644
--- a/tests/ui/coroutine/panic-drops.rs
+++ b/tests/ui/coroutine/panic-drops.rs
@@ -1,5 +1,5 @@
-// run-pass
-// needs-unwind
+//@ run-pass
+//@ needs-unwind
 
 
 #![feature(coroutines, coroutine_trait)]
diff --git a/tests/ui/coroutine/panic-safe.rs b/tests/ui/coroutine/panic-safe.rs
index 9aa42756544..89dd09bf520 100644
--- a/tests/ui/coroutine/panic-safe.rs
+++ b/tests/ui/coroutine/panic-safe.rs
@@ -1,5 +1,5 @@
-// run-pass
-// needs-unwind
+//@ run-pass
+//@ needs-unwind
 
 
 #![feature(coroutines, coroutine_trait)]
diff --git a/tests/ui/coroutine/partial-drop.rs b/tests/ui/coroutine/partial-drop.rs
index a4347f52a70..ba13544712f 100644
--- a/tests/ui/coroutine/partial-drop.rs
+++ b/tests/ui/coroutine/partial-drop.rs
@@ -1,4 +1,4 @@
-// check-pass
+//@ check-pass
 #![feature(negative_impls, coroutines)]
 
 struct Foo;
diff --git a/tests/ui/coroutine/pin-box-coroutine.rs b/tests/ui/coroutine/pin-box-coroutine.rs
index e348551a642..1ee6393d1d8 100644
--- a/tests/ui/coroutine/pin-box-coroutine.rs
+++ b/tests/ui/coroutine/pin-box-coroutine.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/polymorphize-args.rs b/tests/ui/coroutine/polymorphize-args.rs
index de44d667656..21aa3c7aafd 100644
--- a/tests/ui/coroutine/polymorphize-args.rs
+++ b/tests/ui/coroutine/polymorphize-args.rs
@@ -1,5 +1,5 @@
-// compile-flags: -Zpolymorphize=on
-// build-pass
+//@ compile-flags: -Zpolymorphize=on
+//@ build-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/print/coroutine-print-verbose-1.rs b/tests/ui/coroutine/print/coroutine-print-verbose-1.rs
index f0094aa694b..73106328618 100644
--- a/tests/ui/coroutine/print/coroutine-print-verbose-1.rs
+++ b/tests/ui/coroutine/print/coroutine-print-verbose-1.rs
@@ -1,4 +1,4 @@
-// compile-flags: -Zverbose-internals
+//@ compile-flags: -Zverbose-internals
 
 // Same as: tests/ui/coroutine/issue-68112.stderr
 
diff --git a/tests/ui/coroutine/print/coroutine-print-verbose-2.rs b/tests/ui/coroutine/print/coroutine-print-verbose-2.rs
index 390bfc542b7..f9ea68a8cd9 100644
--- a/tests/ui/coroutine/print/coroutine-print-verbose-2.rs
+++ b/tests/ui/coroutine/print/coroutine-print-verbose-2.rs
@@ -1,4 +1,4 @@
-// compile-flags: -Zverbose-internals
+//@ compile-flags: -Zverbose-internals
 
 // Same as test/ui/coroutine/not-send-sync.rs
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/print/coroutine-print-verbose-3.rs b/tests/ui/coroutine/print/coroutine-print-verbose-3.rs
index 49b54a4cd5b..be6dbad9e1c 100644
--- a/tests/ui/coroutine/print/coroutine-print-verbose-3.rs
+++ b/tests/ui/coroutine/print/coroutine-print-verbose-3.rs
@@ -1,4 +1,4 @@
-// compile-flags: -Zverbose-internals
+//@ compile-flags: -Zverbose-internals
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/reborrow-mut-upvar.rs b/tests/ui/coroutine/reborrow-mut-upvar.rs
index e4f717be8b5..e1f6211baeb 100644
--- a/tests/ui/coroutine/reborrow-mut-upvar.rs
+++ b/tests/ui/coroutine/reborrow-mut-upvar.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/reinit-in-match-guard.rs b/tests/ui/coroutine/reinit-in-match-guard.rs
index 1895de1f12b..4a584204773 100644
--- a/tests/ui/coroutine/reinit-in-match-guard.rs
+++ b/tests/ui/coroutine/reinit-in-match-guard.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/resume-after-return.rs b/tests/ui/coroutine/resume-after-return.rs
index acbd8740a35..81f86de641f 100644
--- a/tests/ui/coroutine/resume-after-return.rs
+++ b/tests/ui/coroutine/resume-after-return.rs
@@ -1,5 +1,5 @@
-// run-pass
-// needs-unwind
+//@ run-pass
+//@ needs-unwind
 
 
 #![feature(coroutines, coroutine_trait)]
diff --git a/tests/ui/coroutine/resume-arg-size.rs b/tests/ui/coroutine/resume-arg-size.rs
index 22bb469f941..81e96975c98 100644
--- a/tests/ui/coroutine/resume-arg-size.rs
+++ b/tests/ui/coroutine/resume-arg-size.rs
@@ -1,7 +1,7 @@
 #![feature(coroutines)]
 #![allow(dropping_copy_types)]
 
-// run-pass
+//@ run-pass
 
 use std::mem::size_of_val;
 
diff --git a/tests/ui/coroutine/resume-live-across-yield.rs b/tests/ui/coroutine/resume-live-across-yield.rs
index 935e7d326be..45851411daa 100644
--- a/tests/ui/coroutine/resume-live-across-yield.rs
+++ b/tests/ui/coroutine/resume-live-across-yield.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/return-types-diverge.rs b/tests/ui/coroutine/return-types-diverge.rs
index 5f21c8cbf34..5b639eea09a 100644
--- a/tests/ui/coroutine/return-types-diverge.rs
+++ b/tests/ui/coroutine/return-types-diverge.rs
@@ -1,5 +1,5 @@
-// compile-flags: --edition 2024 -Zunstable-options
-// check-pass
+//@ compile-flags: --edition 2024 -Zunstable-options
+//@ check-pass
 
 #![feature(gen_blocks)]
 
diff --git a/tests/ui/coroutine/return-types.rs b/tests/ui/coroutine/return-types.rs
index 3543d6293f7..ad2080fd88b 100644
--- a/tests/ui/coroutine/return-types.rs
+++ b/tests/ui/coroutine/return-types.rs
@@ -1,4 +1,4 @@
-// compile-flags: --edition 2024 -Zunstable-options
+//@ compile-flags: --edition 2024 -Zunstable-options
 
 #![feature(gen_blocks)]
 
diff --git a/tests/ui/coroutine/self_referential_gen_block.rs b/tests/ui/coroutine/self_referential_gen_block.rs
index 14daa2e9c35..dccd83768c4 100644
--- a/tests/ui/coroutine/self_referential_gen_block.rs
+++ b/tests/ui/coroutine/self_referential_gen_block.rs
@@ -1,4 +1,4 @@
-// compile-flags: --edition 2024 -Zunstable-options
+//@ compile-flags: --edition 2024 -Zunstable-options
 #![feature(gen_blocks)]
 //! This test checks that we don't allow self-referential generators
 
diff --git a/tests/ui/coroutine/size-moved-locals.rs b/tests/ui/coroutine/size-moved-locals.rs
index fa657e3b275..84cc4319070 100644
--- a/tests/ui/coroutine/size-moved-locals.rs
+++ b/tests/ui/coroutine/size-moved-locals.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 // Test that we don't duplicate storage for a variable that is moved to another
 // binding. This used to happen in the presence of unwind and drop edges (see
 // `complex` below.)
@@ -9,9 +9,9 @@
 //
 // See issue #59123 for a full explanation.
 
-// edition:2018
-// ignore-wasm32 issue #62807
-// needs-unwind Size of Closures change on panic=abort
+//@ edition:2018
+//@ ignore-wasm32 issue #62807
+//@ needs-unwind Size of Closures change on panic=abort
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/smoke-resume-args.rs b/tests/ui/coroutine/smoke-resume-args.rs
index 752b21ba087..7d20cd2293d 100644
--- a/tests/ui/coroutine/smoke-resume-args.rs
+++ b/tests/ui/coroutine/smoke-resume-args.rs
@@ -1,7 +1,7 @@
-// run-pass
+//@ run-pass
 
-// revisions: default nomiropt
-//[nomiropt]compile-flags: -Z mir-opt-level=0
+//@ revisions: default nomiropt
+//@[nomiropt]compile-flags: -Z mir-opt-level=0
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/smoke.rs b/tests/ui/coroutine/smoke.rs
index b74ed26865f..0ed56982c9b 100644
--- a/tests/ui/coroutine/smoke.rs
+++ b/tests/ui/coroutine/smoke.rs
@@ -1,10 +1,10 @@
-// run-pass
+//@ run-pass
 
-// revisions: default nomiropt
-//[nomiropt]compile-flags: -Z mir-opt-level=0
+//@ revisions: default nomiropt
+//@[nomiropt]compile-flags: -Z mir-opt-level=0
 
-// ignore-emscripten no threads support
-// compile-flags: --test
+//@ ignore-emscripten no threads support
+//@ compile-flags: --test
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/static-coroutine.rs b/tests/ui/coroutine/static-coroutine.rs
index f9fd65b9793..9beaef3e4de 100644
--- a/tests/ui/coroutine/static-coroutine.rs
+++ b/tests/ui/coroutine/static-coroutine.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/static-mut-reference-across-yield.rs b/tests/ui/coroutine/static-mut-reference-across-yield.rs
index 0ed849e0e7d..0d8042ed852 100644
--- a/tests/ui/coroutine/static-mut-reference-across-yield.rs
+++ b/tests/ui/coroutine/static-mut-reference-across-yield.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/static-not-unpin.rs b/tests/ui/coroutine/static-not-unpin.rs
index f27183d11db..63a2b35ef7a 100644
--- a/tests/ui/coroutine/static-not-unpin.rs
+++ b/tests/ui/coroutine/static-not-unpin.rs
@@ -1,9 +1,9 @@
-// revisions: current next
-//[next] compile-flags: -Znext-solver
+//@ revisions: current next
+//@[next] compile-flags: -Znext-solver
 
 #![feature(coroutines)]
 
-// normalize-stderr-test "std::pin::Unpin" -> "std::marker::Unpin"
+//@ normalize-stderr-test "std::pin::Unpin" -> "std::marker::Unpin"
 
 use std::marker::Unpin;
 
diff --git a/tests/ui/coroutine/static-reference-across-yield.rs b/tests/ui/coroutine/static-reference-across-yield.rs
index 6496d8b86cc..cf19ccb54d5 100644
--- a/tests/ui/coroutine/static-reference-across-yield.rs
+++ b/tests/ui/coroutine/static-reference-across-yield.rs
@@ -1,4 +1,4 @@
-// build-pass
+//@ build-pass
 #![feature(coroutines)]
 
 static A: [i32; 5] = [1, 2, 3, 4, 5];
diff --git a/tests/ui/coroutine/too-live-local-in-immovable-gen.rs b/tests/ui/coroutine/too-live-local-in-immovable-gen.rs
index 7eaa1552227..382e7ff3814 100644
--- a/tests/ui/coroutine/too-live-local-in-immovable-gen.rs
+++ b/tests/ui/coroutine/too-live-local-in-immovable-gen.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 #![allow(unused_unsafe)]
 
 #![feature(coroutines)]
diff --git a/tests/ui/coroutine/uninhabited-field.rs b/tests/ui/coroutine/uninhabited-field.rs
index d9570c2fed8..79776d653b1 100644
--- a/tests/ui/coroutine/uninhabited-field.rs
+++ b/tests/ui/coroutine/uninhabited-field.rs
@@ -1,5 +1,5 @@
 // Test that uninhabited saved local doesn't make the entire variant uninhabited.
-// run-pass
+//@ run-pass
 #![allow(unused)]
 #![feature(assert_matches)]
 #![feature(coroutine_trait)]
diff --git a/tests/ui/coroutine/unresolved-ct-var.rs b/tests/ui/coroutine/unresolved-ct-var.rs
index 0316385fba9..d7e3c2d3732 100644
--- a/tests/ui/coroutine/unresolved-ct-var.rs
+++ b/tests/ui/coroutine/unresolved-ct-var.rs
@@ -1,5 +1,5 @@
-// incremental
-// edition:2021
+//@ incremental
+//@ edition:2021
 
 fn main() {
     let _ = async {
diff --git a/tests/ui/coroutine/unwind-abort-mix.rs b/tests/ui/coroutine/unwind-abort-mix.rs
index 869b3e4f433..517c6613e3d 100644
--- a/tests/ui/coroutine/unwind-abort-mix.rs
+++ b/tests/ui/coroutine/unwind-abort-mix.rs
@@ -1,11 +1,11 @@
 // Ensure that coroutine drop glue is valid when mixing different panic
 // strategies. Regression test for #116953.
 //
-// no-prefer-dynamic
-// build-pass
-// aux-build:unwind-aux.rs
-// compile-flags: -Cpanic=abort
-// needs-unwind
+//@ no-prefer-dynamic
+//@ build-pass
+//@ aux-build:unwind-aux.rs
+//@ compile-flags: -Cpanic=abort
+//@ needs-unwind
 extern crate unwind_aux;
 
 pub fn main() {
diff --git a/tests/ui/coroutine/witness-ignore-fake-reads.rs b/tests/ui/coroutine/witness-ignore-fake-reads.rs
index ccf9ce8b49e..9764b00422d 100644
--- a/tests/ui/coroutine/witness-ignore-fake-reads.rs
+++ b/tests/ui/coroutine/witness-ignore-fake-reads.rs
@@ -1,5 +1,5 @@
-// check-pass
-// edition: 2021
+//@ check-pass
+//@ edition: 2021
 
 // regression test for #117059
 struct SendNotSync(*const ());
diff --git a/tests/ui/coroutine/xcrate-reachable.rs b/tests/ui/coroutine/xcrate-reachable.rs
index c6328448868..2e7de649c72 100644
--- a/tests/ui/coroutine/xcrate-reachable.rs
+++ b/tests/ui/coroutine/xcrate-reachable.rs
@@ -1,6 +1,6 @@
-// run-pass
+//@ run-pass
 
-// aux-build:xcrate-reachable.rs
+//@ aux-build:xcrate-reachable.rs
 
 #![feature(coroutine_trait)]
 
diff --git a/tests/ui/coroutine/xcrate.rs b/tests/ui/coroutine/xcrate.rs
index 4572d1cfd54..406152a0bf1 100644
--- a/tests/ui/coroutine/xcrate.rs
+++ b/tests/ui/coroutine/xcrate.rs
@@ -1,6 +1,6 @@
-// run-pass
+//@ run-pass
 
-// aux-build:xcrate.rs
+//@ aux-build:xcrate.rs
 
 #![feature(coroutines, coroutine_trait)]
 
diff --git a/tests/ui/coroutine/yield-in-args-rev.rs b/tests/ui/coroutine/yield-in-args-rev.rs
index b22c32ccd92..b074e2bc939 100644
--- a/tests/ui/coroutine/yield-in-args-rev.rs
+++ b/tests/ui/coroutine/yield-in-args-rev.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 #![allow(dead_code)]
 
 // Test that a borrow that occurs after a yield in the same
diff --git a/tests/ui/coroutine/yield-in-initializer.rs b/tests/ui/coroutine/yield-in-initializer.rs
index 5a7b3a4feaf..19218926b8a 100644
--- a/tests/ui/coroutine/yield-in-initializer.rs
+++ b/tests/ui/coroutine/yield-in-initializer.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 
 #![feature(coroutines)]
 
diff --git a/tests/ui/coroutine/yield-subtype.rs b/tests/ui/coroutine/yield-subtype.rs
index 3595d449823..271f8362f17 100644
--- a/tests/ui/coroutine/yield-subtype.rs
+++ b/tests/ui/coroutine/yield-subtype.rs
@@ -1,4 +1,4 @@
-// run-pass
+//@ run-pass
 #![allow(dead_code)]
 #![allow(dead_code)]
 
diff --git a/tests/ui/coroutine/yielding-in-match-guards.rs b/tests/ui/coroutine/yielding-in-match-guards.rs
index a9575a9e77e..6f074188728 100644
--- a/tests/ui/coroutine/yielding-in-match-guards.rs
+++ b/tests/ui/coroutine/yielding-in-match-guards.rs
@@ -1,5 +1,5 @@
-// build-pass
-// edition:2018
+//@ build-pass
+//@ edition:2018
 
 // This test is derived from
 // https://github.com/rust-lang/rust/issues/72651#issuecomment-668720468