diff options
| author | Trevor Gross <t.gross35@gmail.com> | 2025-05-04 18:11:50 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-05-04 18:11:50 -0400 |
| commit | 0b8789c2019dc259564522d622ee45c777d1eb68 (patch) | |
| tree | bed3ec1ea473b97b505bdd2d1643750820fccfc7 /tests/rustdoc/enum/enum-variant-fields-heading.rs | |
| parent | 5b3de49822fa1f7a078b447b54cf02afaa311a34 (diff) | |
| parent | a82b7a63b7843b703d9ad41e52a215aaa2fa86ef (diff) | |
| download | rust-0b8789c2019dc259564522d622ee45c777d1eb68.tar.gz rust-0b8789c2019dc259564522d622ee45c777d1eb68.zip | |
Rollup merge of #140630 - azhogin:azhogin/async-drop-proxy-source-info-fix, r=oli-obk
Async drop source info fix for proxy-drop-coroutine
Fixes crash at debug info generation: https://github.com/rust-lang/rust/issues/140426 .
Also, the submitted example requires sync Drop implementation too.
Because sync version is required for unwind and when drop is performed in sync context (sync function).
Probably, it is also needed to add such a lint/error about missed `impl Drop`, when there is `impl AsyncDrop`.
Fix description: even minimal, empty coroutine (for proxy-coroutine) has 3 states and the source info array should have 3 elements too.
```
#![feature(async_drop)]
use std::future::AsyncDrop;
use std::pin::Pin;
#[tokio::main(flavor = "current_thread")]
async fn main() {
let _st = St;
}
struct St;
impl AsyncDrop for St {
async fn drop(self: Pin<&mut Self>) {
println!("123");
}
}
```
Diffstat (limited to 'tests/rustdoc/enum/enum-variant-fields-heading.rs')
0 files changed, 0 insertions, 0 deletions
