Except for member function definitions that appear outside
of a class definition, and except for explicit specializations of member
functions of class templates and member function
templates (
[temp.spec]) appearing outside of the class definition, a
member function shall not be redeclared
.