diff --git a/prost-derive/src/lib.rs b/prost-derive/src/lib.rs index 710f3cab1..bf2cf3b87 100644 --- a/prost-derive/src/lib.rs +++ b/prost-derive/src/lib.rs @@ -102,11 +102,9 @@ fn try_message(input: TokenStream) -> Result { let merge = fields.iter().map(|&(ref field_ident, ref field)| { let merge = field.merge(quote!(value)); - let tags = field - .tags() - .into_iter() - .map(|tag| quote!(#tag)) - .intersperse(quote!(|)); + let tags = field.tags().into_iter().map(|tag| quote!(#tag)); + let tags = Itertools::intersperse(tags, quote!(|)); + quote! { #(#tags)* => { let mut value = &mut self.#field_ident;