mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-11 16:15:03 +00:00
aef0f4024a
And suggest adding the `#[coroutine]` to the closure
36 lines
487 B
Rust
36 lines
487 B
Rust
//@ build-pass
|
|
//@ edition:2018
|
|
|
|
#![feature(coroutines)]
|
|
|
|
fn main() {
|
|
foo();
|
|
}
|
|
|
|
fn foo() {
|
|
#[coroutine] || {
|
|
yield drop(Config {
|
|
nickname: NonCopy,
|
|
b: NonCopy2,
|
|
}.nickname);
|
|
};
|
|
}
|
|
|
|
#[derive(Default)]
|
|
struct NonCopy;
|
|
impl Drop for NonCopy {
|
|
fn drop(&mut self) {}
|
|
}
|
|
|
|
#[derive(Default)]
|
|
struct NonCopy2;
|
|
impl Drop for NonCopy2 {
|
|
fn drop(&mut self) {}
|
|
}
|
|
|
|
#[derive(Default)]
|
|
struct Config {
|
|
nickname: NonCopy,
|
|
b: NonCopy2,
|
|
}
|