История изменений
Исправление hateyoufeel, (текущая версия) :
Почему в Rust смогли, а в C – нет?
В Rust свои UB есть:https://doc.rust-lang.org/reference/behavior-considered-undefined.html
В C и Rust разные трактовки термина «Undefined Behaviour». В Rust это означает «если ты обосрался с указателями, сам виноват, мы ничего не гарантируем». В C это означает «мы изнасилуем твой код и ты получишь чудовищный треш и адов холокост».
Проще говоря, Rust не делает диких трансформаций кода с расчётом на это самое UB или его отсутствие, как в примерах про C выше.
Исходная версия hateyoufeel, :
Почему в Rust смогли, а в C – нет?
В Rust свои UB есть:https://doc.rust-lang.org/reference/behavior-considered-undefined.html
В C и Rust разные трактовки термина «Undefined Behaviour». В Rust это означает «если ты обосрался с указателями, сам виноват, мы ничего не гарантируем». В C это означает «мы изнасилуем твой код и ты получишь чудовищный треш и адов холокост».