Affected subclause: [dcl.constexpr]
Change: constexpr non-static member functions are not implicitly
const member functions
. Rationale: Necessary to allow
constexpr member functions to mutate
the object
. Effect on original feature: Valid C++ 2011 code may fail to compile in this revision of C++
. For example:
struct S {
constexpr const int &f();
int &f();
};
This code is valid in C++ 2011
but invalid in this revision of C++ because it declares the same member
function twice with different return types
.