diff --git a/src/entt/core/any.hpp b/src/entt/core/any.hpp index 4f5e2629e..787494917 100644 --- a/src/entt/core/any.hpp +++ b/src/entt/core/any.hpp @@ -465,7 +465,7 @@ public: * @return False if the two objects differ in their content, true otherwise. */ [[nodiscard]] bool operator==(const basic_any &other) const noexcept { - if(vtable && info() == other.info()) { + if(vtable && ((descriptor == other.descriptor) || has_value(other.info()))) { return (vtable(request::compare, *this, other.data()) != nullptr); }