When a function is defaulted (= default), the move implementation to source file / class declaration (both direction) isn't working.
Defaulted functions should behave exactly as if it was definition.
In the example above, I expect the defaulted constructor and destructor to be listed and as result of the move the functions are moved to the source file like this:
MyClass::MyClass() = default;
MyClass::~MyClass() = default;