virtual_shared_ptr: fix static/dynamic cast detection

This commit is contained in:
Jean-Louis Leroy
2025-03-10 14:36:36 -04:00
parent 5e0fa8ee4b
commit 87f67efc60

View File

@@ -103,7 +103,8 @@ struct virtual_traits<std::shared_ptr<Class>, Policy> {
check_cast<Other>();
if constexpr (detail::requires_dynamic_cast<Class*, Other>) {
if constexpr (detail::requires_dynamic_cast<
Class*, typename Other::element_type*>) {
return std::dynamic_pointer_cast<
typename shared_ptr_traits<Other>::virtual_type>(obj);
} else {