9f03cfc207
This was previously needed because the indirection used to hide some unexplained lifetime errors, which it turned out were related to the `min_choice` algorithm. Removing the indirection also solves a couple of cycle errors, large moves and makes async blocks support the `#[track_caller]` annotation.
10 lines
329 B
Rust
10 lines
329 B
Rust
// edition:2021
|
|
#![feature(stmt_expr_attributes)]
|
|
#![feature(generators)]
|
|
|
|
fn main() {
|
|
let _closure = #[track_caller] || {}; //~ `#[track_caller]` on closures
|
|
let _generator = #[track_caller] || { yield; }; //~ `#[track_caller]` on closures
|
|
let _future = #[track_caller] async {}; //~ `#[track_caller]` on closures
|
|
}
|