diff --git a/src/google/protobuf/dynamic_message.cc b/src/google/protobuf/dynamic_message.cc index 865280c..8ad6f84 100644 --- a/src/google/protobuf/dynamic_message.cc +++ b/src/google/protobuf/dynamic_message.cc @@ -411,7 +411,11 @@ struct DynamicMessageFactory::TypeInfo { &DynamicMessage::MergeImpl, internal::MessageCreator(), // to be filled later &DynamicMessage::DestroyImpl, +#if defined(PROTOBUF_CUSTOM_VTABLE) static_cast(&DynamicMessage::ClearImpl), +#else + nullptr, +#endif // PROTOBUF_CUSTOM_VTABLE DynamicMessage::ByteSizeLongImpl, DynamicMessage::_InternalSerializeImpl, PROTOBUF_FIELD_OFFSET(DynamicMessage, cached_byte_size_), @@ -1059,7 +1063,11 @@ const Message* DynamicMessageFactory::GetPrototypeNoLock( internal::MessageCreator(DynamicMessage::NewImpl, size, kSafeAlignment), &DynamicMessage::DestroyImpl, +#if defined(PROTOBUF_CUSTOM_VTABLE) static_cast(&DynamicMessage::ClearImpl), +#else + nullptr, +#endif // PROTOBUF_CUSTOM_VTABLE DynamicMessage::ByteSizeLongImpl, DynamicMessage::_InternalSerializeImpl, PROTOBUF_FIELD_OFFSET(DynamicMessage, cached_byte_size_),