https://gcc.gnu.org/bugzilla/show_bug.cgi?id=96182
Jakub Jelinek <jakub at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jakub at gcc dot gnu.org --- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> --- The difference is that in C++11 the standard requires that the body of a constexpr function is return expression, that is not the case of C++14 anymore. And, you'd get an error if you tried constexpr int a = foo (); i.e. when it is evaluated in constant expression, but when it is only evaluated e.g. in int b = foo (); it is a problem only at runtime.