diff --git a/src/Val.h b/src/Val.h index 02fa4e61a1..ecdb5bb8ee 100644 --- a/src/Val.h +++ b/src/Val.h @@ -216,7 +216,7 @@ UNDERLYING_ACCESSOR_DECL(TypeVal, zeek::Type*, AsType) // Since we're converting from "this", make sure the type requested is a pointer. static_assert(std::is_pointer()); - auto v = dynamic_cast(this); + auto v = static_cast(this); if ( ! v ) reporter->InternalError("Failed dynamic_cast between Val types"); @@ -1263,7 +1263,7 @@ public: auto GetFieldAs(int field) const -> std::invoke_result_t { auto& field_ptr = GetField(field); - auto field_val_ptr = dynamic_cast(field_ptr.get()); + auto field_val_ptr = static_cast(field_ptr.get()); if ( ! field_val_ptr ) reporter->InternalError("Typecast failed in TableVal::GetFieldAs"); @@ -1274,7 +1274,7 @@ public: auto GetFieldAs(const char* field) const -> std::invoke_result_t { auto& field_ptr = GetField(field); - auto field_val_ptr = dynamic_cast(field_ptr.get()); + auto field_val_ptr = static_cast(field_ptr.get()); if ( ! field_val_ptr ) reporter->InternalError("Typecast failed in TableVal::GetFieldAs"); @@ -1520,7 +1520,7 @@ private: #define UNDERLYING_ACCESSOR_DEF(ztype, ctype, name) \ inline ctype Val::name() const \ - { return dynamic_cast(this)->Get(); } + { return static_cast(this)->Get(); } UNDERLYING_ACCESSOR_DEF(detail::IntValImplementation, bro_int_t, AsInt) UNDERLYING_ACCESSOR_DEF(BoolVal, bool, AsBool)