Hi, as I understand it, currently, rust zeros variables after cleanup or when moved from (and adds a "drop flag" field to structs with cleanup logic to be zeroed), and so dynamically, at runtime, tracks which variables need to be freed/have destructors called.
This might change somewhat: https://github.com/mozilla/rust/issues/5016 -benh On Sat, 2013-11-16 at 17:59 +0100, spir wrote: > Hello, > > say a function defines 4 pointed elements of data. Depending on logical > conditions, one of them escapes the func to be assigned to some world > variable > (static or on heap), while another is returned. How does Rust determine which > of > those data are to be freed? Seems this can only be done dynamically, at > runtime, > or do I miss a relevant point? Is there a cheap algo to do this? > (Also, those elements of data can be arbitrarily complex, and hold other > pointed > data which themselves may be placed there conditionally.) > > Thank you, > denis > > _______________________________________________ > Rust-dev mailing list > Rust-dev@mozilla.org > https://mail.mozilla.org/listinfo/rust-dev _______________________________________________ Rust-dev mailing list Rust-dev@mozilla.org https://mail.mozilla.org/listinfo/rust-dev