diff --git a/AK/TypeCasts.h b/AK/TypeCasts.h index 4a2c2de6218..0ee0cb5fb82 100644 --- a/AK/TypeCasts.h +++ b/AK/TypeCasts.h @@ -56,7 +56,11 @@ ALWAYS_INLINE CopyConst* as_if(InputType& input) { if (!is(input)) return nullptr; - return static_cast*>(&input); + if constexpr (IsBaseOf) { + return static_cast*>(&input); + } else { + return dynamic_cast*>(&input); + } } template