diff --git a/rust/test/shared/simple_nested_test.rs b/rust/test/shared/simple_nested_test.rs index d0f218a829..4a26e58c33 100644 --- a/rust/test/shared/simple_nested_test.rs +++ b/rust/test/shared/simple_nested_test.rs @@ -73,7 +73,7 @@ fn test_nested_muts() { } let mut outer_msg = Outer::new(); - let inner_msg: InnerMut<'_> = outer_msg.inner_mut(); + let mut inner_msg: InnerMut<'_> = outer_msg.inner_mut(); assert_that!( inner_msg, matches_pattern!(InnerMut{ diff --git a/src/google/protobuf/compiler/rust/message.cc b/src/google/protobuf/compiler/rust/message.cc index 2e9e217483..4affd948cd 100644 --- a/src/google/protobuf/compiler/rust/message.cc +++ b/src/google/protobuf/compiler/rust/message.cc @@ -304,7 +304,7 @@ void GetterForViewOrMut(Context& ctx, const FieldDescriptor& field, // TODO: check mutational pathway genn'd correctly if (is_mut) { ctx.Emit({}, R"rs( - pub fn r#$field$_mut(&self) -> $pb$::Mut<'_, $RsType$> { + pub fn r#$field$_mut(&mut self) -> $pb$::Mut<'_, $RsType$> { static VTABLE: $pbi$::$vtable$$optional_type_args$ = $pbi$::$vtable$::new( $pbi$::Private,