I have a class where VS 2015 was not generating a move ctor and now VS 2015 Update 1 it is generating one, this is causing a binary compatibility issue, not sure which version is doing the right thing.
// MyLib
struct Shared
{
virtual ~Shared(){}
}
struct Callback : public Shared
{
virtual void response() = 0;
}
// App
struct CallbackI : public Callback
{
virtual void response(){}
}
When I build MyLib with VS 2015 and App with VS 2015 update 1 linking App fails because a missing symbol referencing the move assignment operator for Callback base class.
Seems to me that VS 2015 is not generating this operators and VS 2015 Update 1 it is, but which compiler version is right here?