diff --git a/detail/Core/Object.hpp b/detail/Core/Object.hpp index ba9b312..6fef385 100644 --- a/detail/Core/Object.hpp +++ b/detail/Core/Object.hpp @@ -21,10 +21,15 @@ template <> struct Object }; template struct Object : private Object { + constexpr DerivedTerminal* Origin() noexcept + { + return static_cast(this); + } + using TDerivedTerminal = DerivedTerminal; constexpr DerivedTerminal* operator->() noexcept { - return static_cast(this); + return Origin(); } template