Muss enable_shared_from_this die erste Basisklasse sein?

Meine Klasse erbt von mehreren Basen, von denen eine ist std::enable_shared_from_this. Muss es die erste Basis sein? Angenommen, der folgende Beispielcode: struct A { ~A(); }; struct B { ~B(); }; struct C : A, B, std::enable_shared_from_this<C> {}; std::make_shared<C>(); Wenn...