diff --git a/prost-derive/src/lib.rs b/prost-derive/src/lib.rs index d06b079a2..3f8ceb474 100644 --- a/prost-derive/src/lib.rs +++ b/prost-derive/src/lib.rs @@ -351,7 +351,7 @@ fn try_enumeration(input: TokenStream) -> Result { impl #impl_generics ::core::convert::TryFrom:: for #ident #ty_generics #where_clause { type Error = ::prost::UnknownEnumValue; - fn try_from(value: i32) -> ::core::result::Result<#ident, Self::Error> { + fn try_from(value: i32) -> ::core::result::Result<#ident, ::prost::UnknownEnumValue> { match value { #(#try_from,)* _ => ::core::result::Result::Err(::prost::UnknownEnumValue(value)), diff --git a/tests/src/enum_keyword_variant.proto b/tests/src/enum_keyword_variant.proto index 595387084..b5a52a973 100644 --- a/tests/src/enum_keyword_variant.proto +++ b/tests/src/enum_keyword_variant.proto @@ -8,6 +8,7 @@ enum Feeding { // Careful: code generation resulted in "Self". Now it is "Self_". FEEDING_SELF = 2; FEEDING_ELSE = 3; + FEEDING_ERROR = 4; } enum Grooming {