LINUX.ORG.RU

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

Исправление fsb4000, (текущая версия) :

А разве не для запуска кода на этапе компиляции?

http://eel.is/c++draft/expr.const

An expression E is a core constant expression unless the evaluation of E, following the rules of the abstract machine ([intro.execution]), would evaluate one of the following: 

* .. (какое-то условие чего нельзя в constexpr)
* an operation that would have undefined behavior
* .. (какое-то другое условие чего нельзя в constexpr)

то есть компилятор должен защищать нас от UB в constexpr.

Для меня именно это является самой важной фичей constexpr

Исходная версия fsb4000, :

А разве не для запуска кода на этапе компиляции?

http://eel.is/c++draft/expr.const

An expression E is a core constant expression unless the evaluation of E, following the rules of the abstract machine ([intro.execution]), would evaluate one of the following: 

* .. (какое-то условие чего нельзя в constexpr)
* an operation that would have undefined behavior
* .. (какое-то другое условие чего нельзя в constexpr)