DLLで公開されてる関数として

__declspec(dllexport) tr1::shared_ptr<iface> CreateObject(param p)
{
    return tr1::shared_ptr<iface>(new iface(p));
}

というのがあったとして
これを受け取るEXE側で使うライブラリの実装がDLL側と異なる場合ってヤバイですか?