I thought resources were freed when they went out of scope preventing any memory leaks in Rust.
This is different from Rust's guarantees about memory and thread safety, which you can't break without `unsafe`.
However, it is possible to leak, e.g. if you use a reference-counted type and create a cycle. There's also Box::leak() that does what it says (it's useful for singleton-like things).