|
|
|
|
|
by aw1621107
250 days ago
|
|
> Lifetimes affect drop order and program semantics. These aren't erased - they're compiled into the code being verified. mrustc is existential proof that this statement is wrong. mrustc is a bootstrap compiler for Rust written in C++ that notably ignores lifetimes since it assumes that the code it is compiling (old rustc versions) will have correct lifetimes. And despite ignoring lifetimes, its output is bit-for-bit identical to what rustc produces, so clearly those lifetimes can't have been that important :P (More seriously, lifetimes affect program correctness, but do not affect program semantics, let alone drop order. They are definitely erased as well. Not sure how you got this so wrong). [0]: https://github.com/thepowersgang/mrustc |
|