https://gcc.gnu.org/bugzilla/show_bug.cgi?id=66026
Bug ID: 66026 Summary: C++14] throw-expression is not a valid constant-expression Product: gcc Version: 5.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: rhalbersma at gmail dot com Target Milestone: --- g++ 5.1.0 and current trunk 20150505 won't compile the following code with -std=c++1y: constexpr auto fun(int n) { switch(n) { case 0: return 0; default: return throw 42, 42; } } int main() { static_assert(fun(0) == 0, ""); } yielding the error: expression '<throw-expression>' is not a constant-expression The same code compiles with -std=c++14 with all recent Clang versions (3.4.0 through SVN trunk).