> If your goal is purely to make Rust as safe as possible, then you should advocate the view in your comment.
> If your goal is to increase Rust adoption, and/or decrease the use of less safe languages for development in the future (in whichever prioritization of the two you like), then IMO the route described in ekidd's comment seems the quickest route there, IMO.
My view is this is a false dilemma.
The "performance" case is not performance, because the benchmark is broken code. It does not work, because it is not secure/safe/reliable. It is incorrect to compare the performance of code compiled without overflow checking against code which is compiled with it enabled. They simply aren't the same program.
A correct performance comparison would be a program with manually inserted overflow checks everywhere, against a program with the overflow checks done automatically (by compiler).
Or, a performance comparison where code is selectively opted-out, where a critical path bottleneck is identified.
The same can be said of the performance comparison of "array index bounds checking". One program works, the other does not, so it isn't a fair comparison.