[GSoC] Rust Drop trait support in gccrs - Status Report
Janet Chien via Gcc <[email protected]> Fri, 19 Jun 2026 14:27:17 +0100
| Newsgroups | gmane.comp.gcc.devel |
|---|---|
| Message-ID | <CAHtgQQuSczwN390adUh6nWdEJ+Rf1a2z+oKZifkUCz8SaFzXnQ@mail.gmail.com> |
Hi,
My name is Janet, and my GSoC project is about implementing Rust Drop
trait support in gccrs, the Rust frontend for GCC.
Here is my latest status report for the project.
Current status:
- The draft PR I mentioned in my previous report has now been merged:
https://github.com/Rust-GCC/gccrs/pull/4564
- This PR introduced the basic infrastructure for tracking drop
candidates and inserting Drop calls. Based on this infrastructure, it
supports basic block-exit cases and some basic function-scope cases.
- I also investigated the Drop insertion points in rustc 1.49 and
adjusted the work order. I am planning to extend function-scope
support first, followed by explicit return, continue, and break cases.
Progress this week:
- Work on a follow-up cleanup and refactoring patch based on comments
from the previous PR. This includes refactoring CompileDrop and adding
DropBuilder. (currently working on this)
- Continue working on function-scope Drop support, including cases such
as:
fn f() -> i32 {
let x = Droppable;
foo()
}
fn foo(x: Droppable) {
}
Janet