История изменений
Исправление intelfx, (текущая версия) :
Наверное, какие-то приколы оптимизатора.
https://users.rust-lang.org/t/rust-arithmetic-overflow/85999/18
println раскрывается во взятие адреса, и видимо этого становится достаточно, чтобы перестать анализировать происходящее как compile-time constant expression.
Если нужно гарантировать compile-time вычисления, к твоим услугам const { ... }
. В противном случае «как пойдёт» — наличие или отсутствие каких-то оптимизаций языком не гарантируется, они best-effort.
Исправление intelfx, :
Наверное, какие-то приколы оптимизатора.
https://users.rust-lang.org/t/rust-arithmetic-overflow/85999/18
println раскрывается во взятие адреса, и видимо этого становится достаточно, чтобы перестать анализировать происходящее как compile-time constant expression.
Если нужно гарантировать compile-time вычисления, к твоим услугам const { ... }
. В противном случае «как пойдёт» — наличие или отсутствие каких-то оптимизаций языком не гарантируется.
Исходная версия intelfx, :
Наверное, какие-то приколы оптимизатора.
https://users.rust-lang.org/t/rust-arithmetic-overflow/85999/18
println раскрывается во взятие адреса, и видимо этого становится достаточно, чтобы перестать анализировать происходящее как compile-time constant expression. Если нужно гарантировать compile-time вычисления, к твоим услугам const { ... }
. В противном случае «как пойдёт».