struct C { constexpr C(int i) : i(i) {} int i; }; constexpr C plus2(const C& c) { return C{c.i + 2}; } int main() { const C i(0); constexpr C j = plus2(i); }
Standard input is empty
prog.cpp: In function 'int main()': prog.cpp:12:28: in constexpr expansion of 'plus2(i)' prog.cpp:12:28: error: the value of 'i' is not usable in a constant expression constexpr C j = plus2(i); ^ prog.cpp:11:13: note: 'i' was not declared 'constexpr' const C i(0); ^
Standard output is empty