For example, if you force C to have defined overflow semantics, the code you'll get for a CPU which does not behave in the same way will use an order of magnitude more instructions for that purpose.
[0] a lot of people seem to think that performance is everything but actually uptime and reliability are often more important.
This line of comments is rather silly, as it tries to compare implementations with a language specification described through international standards. Apples and oranges. Mozilla's rust implementation has no undefined behavior because it isn't even defined in any standard document nor are there many competing commercial teams developing rust implementations independently of each other. Complaining that C has undefined behavior but rust hasn't makes as much sense as complaining that C has undefined behavior but MS Visual C 2015 doesn't.
This is not true. “No UB in safe Rust” is a guiding principle of the language design.
(And there is a second implementation of everything but the borrow checker.)
MS Visual C absolutely has UB.