> That's already supported by a .cast block. Oh I didn't know this was already possible, that's neat.
> How about we simply follow the Rust way? Rust's rule for unsafe behavior was what I used as a basis to write the RFC. Specifically this portion from Rust's documentation : > Here are the abilities Unsafe Rust has in addition to Safe Rust: > * De-reference raw pointers > * Implement unsafe traits > * Call unsafe functions > * Mutate statics (including external ones) > * Access fields > > That way we get the benefit that Rust gets: it's clear what code performs > unsafe memory operations. > Of course this would require a lot of changes (many additions of "unsafe" > blocks in the stdlib for example) and we may wish to make it possible to > enable this on a per-module basis. But it would make analysing modules to > determine how unsafe they are very trivial. If you have more to add to the discussion, new ideas or arguments to bring to the table of a memory unsafe effect, I encourage you to write those under the RFC. One of the reason I went to the trouble or writing an RFC was because of the comparison to Rust `unsafe {}` pop-up every 6 month on the Forum :)