История изменений
Исправление shdown, (текущая версия) :
В C++ тоже auto сейчас обозначает совсем не то, что в первой версии. Языки развиваются.
Только вот если я пишу под какой-то определёныый стандарт, то он уже не поменяется. А у Rust есть какие-нибудь версии языка, для которых этот RFC уже точно не «отменят»?
Хорошо. Вот без UB:
Зависит от реализации (сколько бит в unsigned int). Тоже не является strictly conforming. В чём проблема и что ты хочешь сказать? Поведение
fn main() { println!("{}", std::usize::MAX > 4294967296); }
Выведет значение константы.
Которое зависит от реализации.
fn main() { println!(«{}», 1u32 << 32u32); }
Вызовет панику.
Ха-ха, нет. Ты сам не читал это своё RFC? Поведение зависит от того, компилируешь ли ты с release или debug. В release оно выведет 1, а в debug упадёт.
Исправление shdown, :
Хорошо. Вот без UB:
Зависит от реализации (сколько бит в unsigned int). Тоже не является strictly conforming. В чём проблема и что ты хочешь сказать? Поведение
fn main() { println!("{}", std::usize::MAX > 4294967296); }
Выведет значение константы.
Которое зависит от реализации.
fn main() { println!(«{}», 1u32 << 32u32); }
Вызовет панику.
Ха-ха, нет. Ты сам не читал это своё RFC? Поведение зависит от того, компилируешь ли ты с release или debug. В release оно выведет 1, а в debug упадёт.
Исходная версия shdown, :
Хорошо. Вот без UB:
Зависит от реализации (сколько бит в unsigned int). Тоже не является strictly conforming. В чём проблема и что ты хочешь сказать? Поведение
fn main() { println!("{}", std::usize::MAX); }
Выведет значение константы.
Которое зависит от реализации.
fn main() { println!(«{}», 1u32 << 32u32); }
Вызовет панику.
Ха-ха, нет. Ты сам не читал это своё RFC? Поведение зависит от того, компилируешь ли ты с release или debug. В release оно выведет 1, а в debug упадёт.