mirror of
https://github.com/rust-lang/rust.git
synced 2025-11-17 18:36:09 +00:00
Previously, drop-tracking would incorrectly assume the struct would be dropped immediately, which was not true: when the field had a type with a manual `Drop` impl, the drop becomes observable and has to be dropped after the await instead. For reasons I don't understand, this also fixes another error crater popped up related to type parameters. #98476
For high-level intro to how type checking works in rustc, see the type checking chapter of the rustc dev guide.