LINUX.ORG.RU

История изменений

Исправление 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 упадёт.