diff --git a/src/google/protobuf/compiler/rust/message.cc b/src/google/protobuf/compiler/rust/message.cc index 65466b0f08..3de5102ede 100644 --- a/src/google/protobuf/compiler/rust/message.cc +++ b/src/google/protobuf/compiler/rust/message.cc @@ -219,6 +219,10 @@ MessageGenerator::MessageGenerator(Context msg) { } void MessageGenerator::GenerateRs(Context msg) { + if (msg.desc().map_key() != nullptr) { + ABSL_LOG(WARNING) << "unsupported map field: " << msg.desc().full_name(); + return; + } msg.Emit( { {"Msg", msg.desc().name()}, @@ -338,6 +342,10 @@ void MessageGenerator::GenerateRs(Context msg) { // Generates code for a particular message in `.pb.thunk.cc`. void MessageGenerator::GenerateThunksCc(Context msg) { ABSL_CHECK(msg.is_cpp()); + if (msg.desc().map_key() != nullptr) { + ABSL_LOG(WARNING) << "unsupported map field: " << msg.desc().full_name(); + return; + } msg.Emit( {