Эх сурвалжийг харах

Generated code changes for previous commit.

Jon Skeet 10 жил өмнө
parent
commit
fe355b26ec

+ 3 - 0
csharp/src/AddressBook/Addressbook.cs

@@ -194,6 +194,7 @@ namespace Google.Protobuf.Examples.AddressBook {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -341,6 +342,7 @@ namespace Google.Protobuf.Examples.AddressBook {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 10: {
               case 10: {
                 Number = input.ReadString();
                 Number = input.ReadString();
@@ -448,6 +450,7 @@ namespace Google.Protobuf.Examples.AddressBook {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             people_.AddEntriesFrom(input, _repeated_people_codec);
             people_.AddEntriesFrom(input, _repeated_people_codec);

+ 5 - 0
csharp/src/Google.Protobuf.Conformance/Conformance.cs

@@ -326,6 +326,7 @@ namespace Conformance {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             ProtobufPayload = input.ReadBytes();
             ProtobufPayload = input.ReadBytes();
@@ -563,6 +564,7 @@ namespace Conformance {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             ParseError = input.ReadString();
             ParseError = input.ReadString();
@@ -1836,6 +1838,7 @@ namespace Conformance {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             OptionalInt32 = input.ReadInt32();
             OptionalInt32 = input.ReadInt32();
@@ -2264,6 +2267,7 @@ namespace Conformance {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 8: {
               case 8: {
                 A = input.ReadInt32();
                 A = input.ReadInt32();
@@ -2382,6 +2386,7 @@ namespace Conformance {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             C = input.ReadInt32();
             C = input.ReadInt32();

+ 7 - 0
csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs

@@ -481,6 +481,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
             mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
@@ -654,6 +655,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (testMap_ == null) {
             if (testMap_ == null) {
@@ -755,6 +757,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             mapInt32Message_.AddEntriesFrom(input, _map_mapInt32Message_codec);
             mapInt32Message_.AddEntriesFrom(input, _map_mapInt32Message_codec);
@@ -867,6 +870,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             map1_.AddEntriesFrom(input, _map_map1_codec);
             map1_.AddEntriesFrom(input, _map_map1_codec);
@@ -1165,6 +1169,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
             mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
@@ -1319,6 +1324,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             type_.AddEntriesFrom(input, _map_type_codec);
             type_.AddEntriesFrom(input, _map_type_codec);
@@ -1427,6 +1433,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             entry_.AddEntriesFrom(input, _map_entry_codec);
             entry_.AddEntriesFrom(input, _map_entry_codec);

+ 1 - 0
csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs

@@ -144,6 +144,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             D = input.ReadInt32();
             D = input.ReadInt32();

+ 1 - 0
csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs

@@ -130,6 +130,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             E = input.ReadInt32();
             E = input.ReadInt32();

+ 10 - 0
csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs

@@ -147,6 +147,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -228,6 +229,7 @@ namespace UnitTest.Issues.TestProtos {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
             }
             }
           }
           }
@@ -309,6 +311,7 @@ namespace UnitTest.Issues.TestProtos {
                     if (pb::WireFormat.IsEndGroupTag(tag)) {
                     if (pb::WireFormat.IsEndGroupTag(tag)) {
                       return;
                       return;
                     }
                     }
+                    input.ConsumeLastField();
                     break;
                     break;
                 }
                 }
               }
               }
@@ -449,6 +452,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             value_ = (global::UnitTest.Issues.TestProtos.NegativeEnum) input.ReadEnum();
             value_ = (global::UnitTest.Issues.TestProtos.NegativeEnum) input.ReadEnum();
@@ -543,6 +547,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -740,6 +745,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             PrimitiveValue = input.ReadInt32();
             PrimitiveValue = input.ReadInt32();
@@ -871,6 +877,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Item = input.ReadInt32();
             Item = input.ReadInt32();
@@ -999,6 +1006,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Types_ = input.ReadInt32();
             Types_ = input.ReadInt32();
@@ -1088,6 +1096,7 @@ namespace UnitTest.Issues.TestProtos {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
             }
             }
           }
           }
@@ -1357,6 +1366,7 @@ namespace UnitTest.Issues.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             PlainString = input.ReadString();
             PlainString = input.ReadString();

+ 35 - 0
csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs

@@ -1216,6 +1216,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             SingleInt32 = input.ReadInt32();
             SingleInt32 = input.ReadInt32();
@@ -1552,6 +1553,7 @@ namespace Google.Protobuf.TestProtos {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 8: {
               case 8: {
                 Bb = input.ReadInt32();
                 Bb = input.ReadInt32();
@@ -1705,6 +1707,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (child_ == null) {
             if (child_ == null) {
@@ -1826,6 +1829,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             DeprecatedInt32 = input.ReadInt32();
             DeprecatedInt32 = input.ReadInt32();
@@ -1932,6 +1936,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             C = input.ReadInt32();
             C = input.ReadInt32();
@@ -2016,6 +2021,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -2121,6 +2127,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (foreignNested_ == null) {
             if (foreignNested_ == null) {
@@ -2252,6 +2259,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             A = input.ReadInt32();
             A = input.ReadInt32();
@@ -2387,6 +2395,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (a_ == null) {
             if (a_ == null) {
@@ -2503,6 +2512,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (bb_ == null) {
             if (bb_ == null) {
@@ -2637,6 +2647,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (a_ == null) {
             if (a_ == null) {
@@ -2875,6 +2886,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             PrimitiveField = input.ReadInt32();
             PrimitiveField = input.ReadInt32();
@@ -3083,6 +3095,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             MyInt = input.ReadInt64();
             MyInt = input.ReadInt64();
@@ -3227,6 +3240,7 @@ namespace Google.Protobuf.TestProtos {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 8: {
               case 8: {
                 Bb = input.ReadInt32();
                 Bb = input.ReadInt32();
@@ -3342,6 +3356,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             sparseEnum_ = (global::Google.Protobuf.TestProtos.TestSparseEnum) input.ReadEnum();
             sparseEnum_ = (global::Google.Protobuf.TestProtos.TestSparseEnum) input.ReadEnum();
@@ -3448,6 +3463,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Data = input.ReadString();
             Data = input.ReadString();
@@ -3546,6 +3562,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             data_.AddEntriesFrom(input, _repeated_data_codec);
             data_.AddEntriesFrom(input, _repeated_data_codec);
@@ -3652,6 +3669,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Data = input.ReadBytes();
             Data = input.ReadBytes();
@@ -3758,6 +3776,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Data = input.ReadBytes();
             Data = input.ReadBytes();
@@ -3864,6 +3883,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Data = input.ReadInt32();
             Data = input.ReadInt32();
@@ -3970,6 +3990,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Data = input.ReadUInt32();
             Data = input.ReadUInt32();
@@ -4076,6 +4097,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Data = input.ReadInt64();
             Data = input.ReadInt64();
@@ -4182,6 +4204,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Data = input.ReadUInt64();
             Data = input.ReadUInt64();
@@ -4288,6 +4311,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Data = input.ReadBool();
             Data = input.ReadBool();
@@ -4467,6 +4491,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             FooInt = input.ReadInt32();
             FooInt = input.ReadInt32();
@@ -4760,6 +4785,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 722:
           case 722:
           case 720: {
           case 720: {
@@ -5106,6 +5132,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 722:
           case 722:
           case 720: {
           case 720: {
@@ -5340,6 +5367,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 98:
           case 98:
           case 101: {
           case 101: {
@@ -5472,6 +5500,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             A = input.ReadString();
             A = input.ReadString();
@@ -5556,6 +5585,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -5636,6 +5666,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -5716,6 +5747,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -5796,6 +5828,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -5876,6 +5909,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }
@@ -5956,6 +5990,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }

+ 4 - 0
csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs

@@ -684,6 +684,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             if (anyField_ == null) {
             if (anyField_ == null) {
@@ -1142,6 +1143,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             anyField_.AddEntriesFrom(input, _repeated_anyField_codec);
             anyField_.AddEntriesFrom(input, _repeated_anyField_codec);
@@ -1764,6 +1766,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             global::Google.Protobuf.WellKnownTypes.Any subBuilder = new global::Google.Protobuf.WellKnownTypes.Any();
             global::Google.Protobuf.WellKnownTypes.Any subBuilder = new global::Google.Protobuf.WellKnownTypes.Any();
@@ -2213,6 +2216,7 @@ namespace Google.Protobuf.TestProtos {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             anyField_.AddEntriesFrom(input, _map_anyField_codec);
             anyField_.AddEntriesFrom(input, _map_anyField_codec);

+ 22 - 0
csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs

@@ -247,6 +247,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             file_.AddEntriesFrom(input, _repeated_file_codec);
             file_.AddEntriesFrom(input, _repeated_file_codec);
@@ -545,6 +546,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -840,6 +842,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -1008,6 +1011,7 @@ namespace Google.Protobuf.Reflection {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 8: {
               case 8: {
                 Start = input.ReadInt32();
                 Start = input.ReadInt32();
@@ -1140,6 +1144,7 @@ namespace Google.Protobuf.Reflection {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 8: {
               case 8: {
                 Start = input.ReadInt32();
                 Start = input.ReadInt32();
@@ -1434,6 +1439,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -1608,6 +1614,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -1753,6 +1760,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -1917,6 +1925,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -2073,6 +2082,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -2303,6 +2313,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -2732,6 +2743,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             JavaPackage = input.ReadString();
             JavaPackage = input.ReadString();
@@ -2986,6 +2998,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             MessageSetWireFormat = input.ReadBool();
             MessageSetWireFormat = input.ReadBool();
@@ -3232,6 +3245,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             ctype_ = (global::Google.Protobuf.Reflection.FieldOptions.Types.CType) input.ReadEnum();
             ctype_ = (global::Google.Protobuf.Reflection.FieldOptions.Types.CType) input.ReadEnum();
@@ -3416,6 +3430,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 16: {
           case 16: {
             AllowAlias = input.ReadBool();
             AllowAlias = input.ReadBool();
@@ -3544,6 +3559,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Deprecated = input.ReadBool();
             Deprecated = input.ReadBool();
@@ -3668,6 +3684,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 264: {
           case 264: {
             Deprecated = input.ReadBool();
             Deprecated = input.ReadBool();
@@ -3792,6 +3809,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 264: {
           case 264: {
             Deprecated = input.ReadBool();
             Deprecated = input.ReadBool();
@@ -4026,6 +4044,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 18: {
           case 18: {
             name_.AddEntriesFrom(input, _repeated_name_codec);
             name_.AddEntriesFrom(input, _repeated_name_codec);
@@ -4179,6 +4198,7 @@ namespace Google.Protobuf.Reflection {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 10: {
               case 10: {
                 NamePart_ = input.ReadString();
                 NamePart_ = input.ReadString();
@@ -4286,6 +4306,7 @@ namespace Google.Protobuf.Reflection {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             location_.AddEntriesFrom(input, _repeated_location_codec);
             location_.AddEntriesFrom(input, _repeated_location_codec);
@@ -4457,6 +4478,7 @@ namespace Google.Protobuf.Reflection {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                 if (pb::WireFormat.IsEndGroupTag(tag)) {
                   return;
                   return;
                 }
                 }
+                input.ConsumeLastField();
                 break;
                 break;
               case 10:
               case 10:
               case 8: {
               case 8: {

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Any.cs

@@ -155,6 +155,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             TypeUrl = input.ReadString();
             TypeUrl = input.ReadString();

+ 2 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Api.cs

@@ -218,6 +218,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -445,6 +446,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs

@@ -156,6 +156,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Seconds = input.ReadInt64();
             Seconds = input.ReadInt64();

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs

@@ -111,6 +111,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
         }
         }
       }
       }

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs

@@ -125,6 +125,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             paths_.AddEntriesFrom(input, _repeated_paths_codec);
             paths_.AddEntriesFrom(input, _repeated_paths_codec);

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs

@@ -134,6 +134,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             FileName = input.ReadString();
             FileName = input.ReadString();

+ 3 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs

@@ -144,6 +144,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             fields_.AddEntriesFrom(input, _map_fields_codec);
             fields_.AddEntriesFrom(input, _map_fields_codec);
@@ -398,6 +399,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             kind_ = input.ReadEnum();
             kind_ = input.ReadEnum();
@@ -527,6 +529,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             values_.AddEntriesFrom(input, _repeated_values_codec);
             values_.AddEntriesFrom(input, _repeated_values_codec);

+ 1 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs

@@ -156,6 +156,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Seconds = input.ReadInt64();
             Seconds = input.ReadInt64();

+ 5 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Type.cs

@@ -231,6 +231,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -502,6 +503,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             kind_ = (global::Google.Protobuf.WellKnownTypes.Field.Types.Kind) input.ReadEnum();
             kind_ = (global::Google.Protobuf.WellKnownTypes.Field.Types.Kind) input.ReadEnum();
@@ -723,6 +725,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -880,6 +883,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();
@@ -1019,6 +1023,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Name = input.ReadString();
             Name = input.ReadString();

+ 9 - 0
csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs

@@ -143,6 +143,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 9: {
           case 9: {
             Value = input.ReadDouble();
             Value = input.ReadDouble();
@@ -249,6 +250,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 13: {
           case 13: {
             Value = input.ReadFloat();
             Value = input.ReadFloat();
@@ -355,6 +357,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Value = input.ReadInt64();
             Value = input.ReadInt64();
@@ -461,6 +464,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Value = input.ReadUInt64();
             Value = input.ReadUInt64();
@@ -567,6 +571,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Value = input.ReadInt32();
             Value = input.ReadInt32();
@@ -673,6 +678,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Value = input.ReadUInt32();
             Value = input.ReadUInt32();
@@ -779,6 +785,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 8: {
           case 8: {
             Value = input.ReadBool();
             Value = input.ReadBool();
@@ -885,6 +892,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Value = input.ReadString();
             Value = input.ReadString();
@@ -991,6 +999,7 @@ namespace Google.Protobuf.WellKnownTypes {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
             if (pb::WireFormat.IsEndGroupTag(tag)) {
               return;
               return;
             }
             }
+            input.ConsumeLastField();
             break;
             break;
           case 10: {
           case 10: {
             Value = input.ReadBytes();
             Value = input.ReadBytes();