diff --git a/csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEdition2023.pb.cs b/csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEdition2023.pb.cs index 75724b446e..890ae67117 100644 --- a/csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEdition2023.pb.cs +++ b/csharp/src/Google.Protobuf.Test.TestProtos/TestMessagesEdition2023.pb.cs @@ -26,7 +26,7 @@ namespace ProtobufTestMessages.Editions { string.Concat( "Cjdjb25mb3JtYW5jZS90ZXN0X3Byb3Rvcy90ZXN0X21lc3NhZ2VzX2VkaXRp", "b24yMDIzLnByb3RvEh9wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25z", - "IhsKDkNvbXBsZXhNZXNzYWdlEgkKAWQYASABKAUi3DYKF1Rlc3RBbGxUeXBl", + "IhsKDkNvbXBsZXhNZXNzYWdlEgkKAWQYASABKAUi/zYKF1Rlc3RBbGxUeXBl", "c0VkaXRpb24yMDIzEhYKDm9wdGlvbmFsX2ludDMyGAEgASgFEhYKDm9wdGlv", "bmFsX2ludDY0GAIgASgDEhcKD29wdGlvbmFsX3VpbnQzMhgDIAEoDRIXCg9v", "cHRpb25hbF91aW50NjQYBCABKAQSFwoPb3B0aW9uYWxfc2ludDMyGAUgASgR", @@ -35,167 +35,167 @@ namespace ProtobufTestMessages.Editions { "c2ZpeGVkMzIYCSABKA8SGQoRb3B0aW9uYWxfc2ZpeGVkNjQYCiABKBASFgoO", "b3B0aW9uYWxfZmxvYXQYCyABKAISFwoPb3B0aW9uYWxfZG91YmxlGAwgASgB", "EhUKDW9wdGlvbmFsX2Jvb2wYDSABKAgSFwoPb3B0aW9uYWxfc3RyaW5nGA4g", - "ASgJEhYKDm9wdGlvbmFsX2J5dGVzGA8gASgMEmcKF29wdGlvbmFsX25lc3Rl", + "ASgJEhYKDm9wdGlvbmFsX2J5dGVzGA8gASgMEm4KF29wdGlvbmFsX25lc3Rl", "ZF9tZXNzYWdlGBIgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0", - "aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRNZXNzYWdlElwK", - "GG9wdGlvbmFsX2ZvcmVpZ25fbWVzc2FnZRgTIAEoCzI6LnByb3RvYnVmX3Rl", - "c3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAy", - "MxJhChRvcHRpb25hbF9uZXN0ZWRfZW51bRgVIAEoDjJDLnByb3RvYnVmX3Rl", + "aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRNZXNzYWdlQgWq", + "AQIoARJjChhvcHRpb25hbF9mb3JlaWduX21lc3NhZ2UYEyABKAsyOi5wcm90", + "b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25NZXNzYWdlRWRp", + "dGlvbjIwMjNCBaoBAigBEmEKFG9wdGlvbmFsX25lc3RlZF9lbnVtGBUgASgO", + "MkMucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlw", + "ZXNFZGl0aW9uMjAyMy5OZXN0ZWRFbnVtElYKFW9wdGlvbmFsX2ZvcmVpZ25f", + "ZW51bRgWIAEoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMu", + "Rm9yZWlnbkVudW1FZGl0aW9uMjAyMxIhChVvcHRpb25hbF9zdHJpbmdfcGll", + "Y2UYGCABKAlCAggCEhkKDW9wdGlvbmFsX2NvcmQYGSABKAlCAggBEloKEXJl", + "Y3Vyc2l2ZV9tZXNzYWdlGBsgASgLMjgucHJvdG9idWZfdGVzdF9tZXNzYWdl", + "cy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyM0IFqgECKAESFgoO", + "cmVwZWF0ZWRfaW50MzIYHyADKAUSFgoOcmVwZWF0ZWRfaW50NjQYICADKAMS", + "FwoPcmVwZWF0ZWRfdWludDMyGCEgAygNEhcKD3JlcGVhdGVkX3VpbnQ2NBgi", + "IAMoBBIXCg9yZXBlYXRlZF9zaW50MzIYIyADKBESFwoPcmVwZWF0ZWRfc2lu", + "dDY0GCQgAygSEhgKEHJlcGVhdGVkX2ZpeGVkMzIYJSADKAcSGAoQcmVwZWF0", + "ZWRfZml4ZWQ2NBgmIAMoBhIZChFyZXBlYXRlZF9zZml4ZWQzMhgnIAMoDxIZ", + "ChFyZXBlYXRlZF9zZml4ZWQ2NBgoIAMoEBIWCg5yZXBlYXRlZF9mbG9hdBgp", + "IAMoAhIXCg9yZXBlYXRlZF9kb3VibGUYKiADKAESFQoNcmVwZWF0ZWRfYm9v", + "bBgrIAMoCBIXCg9yZXBlYXRlZF9zdHJpbmcYLCADKAkSFgoOcmVwZWF0ZWRf", + "Ynl0ZXMYLSADKAwSbgoXcmVwZWF0ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsy", + "Ri5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBl", + "c0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigBEmMKGHJlcGVhdGVk", + "X2ZvcmVpZ25fbWVzc2FnZRgxIAMoCzI6LnByb3RvYnVmX3Rlc3RfbWVzc2Fn", + "ZXMuZWRpdGlvbnMuRm9yZWlnbk1lc3NhZ2VFZGl0aW9uMjAyM0IFqgECKAES", + "YQoUcmVwZWF0ZWRfbmVzdGVkX2VudW0YMyADKA4yQy5wcm90b2J1Zl90ZXN0", + "X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5l", + "c3RlZEVudW0SVgoVcmVwZWF0ZWRfZm9yZWlnbl9lbnVtGDQgAygOMjcucHJv", + "dG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduRW51bUVkaXRp", + "b24yMDIzEiEKFXJlcGVhdGVkX3N0cmluZ19waWVjZRg2IAMoCUICCAISGQoN", + "cmVwZWF0ZWRfY29yZBg3IAMoCUICCAESGwoMcGFja2VkX2ludDMyGEsgAygF", + "QgWqAQIYARIbCgxwYWNrZWRfaW50NjQYTCADKANCBaoBAhgBEhwKDXBhY2tl", + "ZF91aW50MzIYTSADKA1CBaoBAhgBEhwKDXBhY2tlZF91aW50NjQYTiADKARC", + "BaoBAhgBEhwKDXBhY2tlZF9zaW50MzIYTyADKBFCBaoBAhgBEhwKDXBhY2tl", + "ZF9zaW50NjQYUCADKBJCBaoBAhgBEh0KDnBhY2tlZF9maXhlZDMyGFEgAygH", + "QgWqAQIYARIdCg5wYWNrZWRfZml4ZWQ2NBhSIAMoBkIFqgECGAESHgoPcGFj", + "a2VkX3NmaXhlZDMyGFMgAygPQgWqAQIYARIeCg9wYWNrZWRfc2ZpeGVkNjQY", + "VCADKBBCBaoBAhgBEhsKDHBhY2tlZF9mbG9hdBhVIAMoAkIFqgECGAESHAoN", + "cGFja2VkX2RvdWJsZRhWIAMoAUIFqgECGAESGgoLcGFja2VkX2Jvb2wYVyAD", + "KAhCBaoBAhgBEmYKEnBhY2tlZF9uZXN0ZWRfZW51bRhYIAMoDjJDLnByb3Rv", + "YnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlv", + "bjIwMjMuTmVzdGVkRW51bUIFqgECGAESHQoOdW5wYWNrZWRfaW50MzIYWSAD", + "KAVCBaoBAhgCEh0KDnVucGFja2VkX2ludDY0GFogAygDQgWqAQIYAhIeCg91", + "bnBhY2tlZF91aW50MzIYWyADKA1CBaoBAhgCEh4KD3VucGFja2VkX3VpbnQ2", + "NBhcIAMoBEIFqgECGAISHgoPdW5wYWNrZWRfc2ludDMyGF0gAygRQgWqAQIY", + "AhIeCg91bnBhY2tlZF9zaW50NjQYXiADKBJCBaoBAhgCEh8KEHVucGFja2Vk", + "X2ZpeGVkMzIYXyADKAdCBaoBAhgCEh8KEHVucGFja2VkX2ZpeGVkNjQYYCAD", + "KAZCBaoBAhgCEiAKEXVucGFja2VkX3NmaXhlZDMyGGEgAygPQgWqAQIYAhIg", + "ChF1bnBhY2tlZF9zZml4ZWQ2NBhiIAMoEEIFqgECGAISHQoOdW5wYWNrZWRf", + "ZmxvYXQYYyADKAJCBaoBAhgCEh4KD3VucGFja2VkX2RvdWJsZRhkIAMoAUIF", + "qgECGAISHAoNdW5wYWNrZWRfYm9vbBhlIAMoCEIFqgECGAISaAoUdW5wYWNr", + "ZWRfbmVzdGVkX2VudW0YZiADKA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2Vz", + "LmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1C", + "BaoBAhgCEmQKD21hcF9pbnQzMl9pbnQzMhg4IAMoCzJLLnByb3RvYnVmX3Rl", "c3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMu", - "TmVzdGVkRW51bRJWChVvcHRpb25hbF9mb3JlaWduX2VudW0YFiABKA4yNy5w", - "cm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25FbnVtRWRp", - "dGlvbjIwMjMSIQoVb3B0aW9uYWxfc3RyaW5nX3BpZWNlGBggASgJQgIIAhIZ", - "Cg1vcHRpb25hbF9jb3JkGBkgASgJQgIIARJTChFyZWN1cnNpdmVfbWVzc2Fn", - "ZRgbIAEoCzI4LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVz", - "dEFsbFR5cGVzRWRpdGlvbjIwMjMSFgoOcmVwZWF0ZWRfaW50MzIYHyADKAUS", - "FgoOcmVwZWF0ZWRfaW50NjQYICADKAMSFwoPcmVwZWF0ZWRfdWludDMyGCEg", - "AygNEhcKD3JlcGVhdGVkX3VpbnQ2NBgiIAMoBBIXCg9yZXBlYXRlZF9zaW50", - "MzIYIyADKBESFwoPcmVwZWF0ZWRfc2ludDY0GCQgAygSEhgKEHJlcGVhdGVk", - "X2ZpeGVkMzIYJSADKAcSGAoQcmVwZWF0ZWRfZml4ZWQ2NBgmIAMoBhIZChFy", - "ZXBlYXRlZF9zZml4ZWQzMhgnIAMoDxIZChFyZXBlYXRlZF9zZml4ZWQ2NBgo", - "IAMoEBIWCg5yZXBlYXRlZF9mbG9hdBgpIAMoAhIXCg9yZXBlYXRlZF9kb3Vi", - "bGUYKiADKAESFQoNcmVwZWF0ZWRfYm9vbBgrIAMoCBIXCg9yZXBlYXRlZF9z", - "dHJpbmcYLCADKAkSFgoOcmVwZWF0ZWRfYnl0ZXMYLSADKAwSZwoXcmVwZWF0", - "ZWRfbmVzdGVkX21lc3NhZ2UYMCADKAsyRi5wcm90b2J1Zl90ZXN0X21lc3Nh", - "Z2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1l", - "c3NhZ2USXAoYcmVwZWF0ZWRfZm9yZWlnbl9tZXNzYWdlGDEgAygLMjoucHJv", - "dG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduTWVzc2FnZUVk", - "aXRpb24yMDIzEmEKFHJlcGVhdGVkX25lc3RlZF9lbnVtGDMgAygOMkMucHJv", - "dG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0", - "aW9uMjAyMy5OZXN0ZWRFbnVtElYKFXJlcGVhdGVkX2ZvcmVpZ25fZW51bRg0", - "IAMoDjI3LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWln", - "bkVudW1FZGl0aW9uMjAyMxIhChVyZXBlYXRlZF9zdHJpbmdfcGllY2UYNiAD", - "KAlCAggCEhkKDXJlcGVhdGVkX2NvcmQYNyADKAlCAggBEhsKDHBhY2tlZF9p", - "bnQzMhhLIAMoBUIFqgECGAESGwoMcGFja2VkX2ludDY0GEwgAygDQgWqAQIY", - "ARIcCg1wYWNrZWRfdWludDMyGE0gAygNQgWqAQIYARIcCg1wYWNrZWRfdWlu", - "dDY0GE4gAygEQgWqAQIYARIcCg1wYWNrZWRfc2ludDMyGE8gAygRQgWqAQIY", - "ARIcCg1wYWNrZWRfc2ludDY0GFAgAygSQgWqAQIYARIdCg5wYWNrZWRfZml4", - "ZWQzMhhRIAMoB0IFqgECGAESHQoOcGFja2VkX2ZpeGVkNjQYUiADKAZCBaoB", - "AhgBEh4KD3BhY2tlZF9zZml4ZWQzMhhTIAMoD0IFqgECGAESHgoPcGFja2Vk", - "X3NmaXhlZDY0GFQgAygQQgWqAQIYARIbCgxwYWNrZWRfZmxvYXQYVSADKAJC", - "BaoBAhgBEhwKDXBhY2tlZF9kb3VibGUYViADKAFCBaoBAhgBEhoKC3BhY2tl", - "ZF9ib29sGFcgAygIQgWqAQIYARJmChJwYWNrZWRfbmVzdGVkX2VudW0YWCAD", - "KA4yQy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxU", - "eXBlc0VkaXRpb24yMDIzLk5lc3RlZEVudW1CBaoBAhgBEh0KDnVucGFja2Vk", - "X2ludDMyGFkgAygFQgWqAQIYAhIdCg51bnBhY2tlZF9pbnQ2NBhaIAMoA0IF", - "qgECGAISHgoPdW5wYWNrZWRfdWludDMyGFsgAygNQgWqAQIYAhIeCg91bnBh", - "Y2tlZF91aW50NjQYXCADKARCBaoBAhgCEh4KD3VucGFja2VkX3NpbnQzMhhd", - "IAMoEUIFqgECGAISHgoPdW5wYWNrZWRfc2ludDY0GF4gAygSQgWqAQIYAhIf", - "ChB1bnBhY2tlZF9maXhlZDMyGF8gAygHQgWqAQIYAhIfChB1bnBhY2tlZF9m", - "aXhlZDY0GGAgAygGQgWqAQIYAhIgChF1bnBhY2tlZF9zZml4ZWQzMhhhIAMo", - "D0IFqgECGAISIAoRdW5wYWNrZWRfc2ZpeGVkNjQYYiADKBBCBaoBAhgCEh0K", - "DnVucGFja2VkX2Zsb2F0GGMgAygCQgWqAQIYAhIeCg91bnBhY2tlZF9kb3Vi", - "bGUYZCADKAFCBaoBAhgCEhwKDXVucGFja2VkX2Jvb2wYZSADKAhCBaoBAhgC", - "EmgKFHVucGFja2VkX25lc3RlZF9lbnVtGGYgAygOMkMucHJvdG9idWZfdGVz", - "dF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5O", - "ZXN0ZWRFbnVtQgWqAQIYAhJkCg9tYXBfaW50MzJfaW50MzIYOCADKAsySy5w", - "cm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0Vk", - "aXRpb24yMDIzLk1hcEludDMySW50MzJFbnRyeRJkCg9tYXBfaW50NjRfaW50", - "NjQYOSADKAsySy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRl", - "c3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDY0SW50NjRFbnRyeRJoChFt", - "YXBfdWludDMyX3VpbnQzMhg6IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVzc2Fn", - "ZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwVWludDMy", - "VWludDMyRW50cnkSaAoRbWFwX3VpbnQ2NF91aW50NjQYOyADKAsyTS5wcm90", - "b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRp", - "b24yMDIzLk1hcFVpbnQ2NFVpbnQ2NEVudHJ5EmgKEW1hcF9zaW50MzJfc2lu", - "dDMyGDwgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5U", - "ZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTaW50MzJTaW50MzJFbnRyeRJo", - "ChFtYXBfc2ludDY0X3NpbnQ2NBg9IAMoCzJNLnByb3RvYnVmX3Rlc3RfbWVz", - "c2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2lu", - "dDY0U2ludDY0RW50cnkSbAoTbWFwX2ZpeGVkMzJfZml4ZWQzMhg+IAMoCzJP", + "TWFwSW50MzJJbnQzMkVudHJ5EmQKD21hcF9pbnQ2NF9pbnQ2NBg5IAMoCzJL", "LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVz", - "RWRpdGlvbjIwMjMuTWFwRml4ZWQzMkZpeGVkMzJFbnRyeRJsChNtYXBfZml4", - "ZWQ2NF9maXhlZDY0GD8gAygLMk8ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5l", - "ZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBGaXhlZDY0Rml4", - "ZWQ2NEVudHJ5EnAKFW1hcF9zZml4ZWQzMl9zZml4ZWQzMhhAIAMoCzJRLnBy", - "b3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRp", - "dGlvbjIwMjMuTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EnAKFW1hcF9zZml4", - "ZWQ2NF9zZml4ZWQ2NBhBIAMoCzJRLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMu", - "ZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwU2ZpeGVkNjRT", - "Zml4ZWQ2NEVudHJ5EmQKD21hcF9pbnQzMl9mbG9hdBhCIAMoCzJLLnByb3Rv", - "YnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlv", - "bjIwMjMuTWFwSW50MzJGbG9hdEVudHJ5EmYKEG1hcF9pbnQzMl9kb3VibGUY", - "QyADKAsyTC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RB", - "bGxUeXBlc0VkaXRpb24yMDIzLk1hcEludDMyRG91YmxlRW50cnkSYAoNbWFw", - "X2Jvb2xfYm9vbBhEIAMoCzJJLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRp", - "dGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFwQm9vbEJvb2xFbnRy", - "eRJoChFtYXBfc3RyaW5nX3N0cmluZxhFIAMoCzJNLnByb3RvYnVmX3Rlc3Rf", + "RWRpdGlvbjIwMjMuTWFwSW50NjRJbnQ2NEVudHJ5EmgKEW1hcF91aW50MzJf", + "dWludDMyGDogAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9u", + "cy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBVaW50MzJVaW50MzJFbnRy", + "eRJoChFtYXBfdWludDY0X3VpbnQ2NBg7IAMoCzJNLnByb3RvYnVmX3Rlc3Rf", "bWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlvbjIwMjMuTWFw", - "U3RyaW5nU3RyaW5nRW50cnkSZgoQbWFwX3N0cmluZ19ieXRlcxhGIAMoCzJM", + "VWludDY0VWludDY0RW50cnkSaAoRbWFwX3NpbnQzMl9zaW50MzIYPCADKAsy", + "TS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBl", + "c0VkaXRpb24yMDIzLk1hcFNpbnQzMlNpbnQzMkVudHJ5EmgKEW1hcF9zaW50", + "NjRfc2ludDY0GD0gAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0", + "aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTaW50NjRTaW50NjRF", + "bnRyeRJsChNtYXBfZml4ZWQzMl9maXhlZDMyGD4gAygLMk8ucHJvdG9idWZf", + "dGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAy", + "My5NYXBGaXhlZDMyRml4ZWQzMkVudHJ5EmwKE21hcF9maXhlZDY0X2ZpeGVk", + "NjQYPyADKAsyTy5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRl", + "c3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcEZpeGVkNjRGaXhlZDY0RW50cnkS", + "cAoVbWFwX3NmaXhlZDMyX3NmaXhlZDMyGEAgAygLMlEucHJvdG9idWZfdGVz", + "dF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5N", + "YXBTZml4ZWQzMlNmaXhlZDMyRW50cnkScAoVbWFwX3NmaXhlZDY0X3NmaXhl", + "ZDY0GEEgAygLMlEucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5U", + "ZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTZml4ZWQ2NFNmaXhlZDY0RW50", + "cnkSZAoPbWFwX2ludDMyX2Zsb2F0GEIgAygLMksucHJvdG9idWZfdGVzdF9t", + "ZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBJ", + "bnQzMkZsb2F0RW50cnkSZgoQbWFwX2ludDMyX2RvdWJsZRhDIAMoCzJMLnBy", + "b3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRp", + "dGlvbjIwMjMuTWFwSW50MzJEb3VibGVFbnRyeRJgCg1tYXBfYm9vbF9ib29s", + "GEQgAygLMkkucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0", + "QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBCb29sQm9vbEVudHJ5EmgKEW1hcF9z", + "dHJpbmdfc3RyaW5nGEUgAygLMk0ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5l", + "ZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdTdHJp", + "bmdFbnRyeRJmChBtYXBfc3RyaW5nX2J5dGVzGEYgAygLMkwucHJvdG9idWZf", + "dGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAy", + "My5NYXBTdHJpbmdCeXRlc0VudHJ5EncKGW1hcF9zdHJpbmdfbmVzdGVkX21l", + "c3NhZ2UYRyADKAsyVC5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25z", + "LlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ05lc3RlZE1lc3Nh", + "Z2VFbnRyeRJ5ChptYXBfc3RyaW5nX2ZvcmVpZ25fbWVzc2FnZRhIIAMoCzJV", "LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVz", - "RWRpdGlvbjIwMjMuTWFwU3RyaW5nQnl0ZXNFbnRyeRJ3ChltYXBfc3RyaW5n", - "X25lc3RlZF9tZXNzYWdlGEcgAygLMlQucHJvdG9idWZfdGVzdF9tZXNzYWdl", - "cy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdO", - "ZXN0ZWRNZXNzYWdlRW50cnkSeQoabWFwX3N0cmluZ19mb3JlaWduX21lc3Nh", - "Z2UYSCADKAsyVS5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRl", - "c3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdl", - "RW50cnkScQoWbWFwX3N0cmluZ19uZXN0ZWRfZW51bRhJIAMoCzJRLnByb3Rv", - "YnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlv", - "bjIwMjMuTWFwU3RyaW5nTmVzdGVkRW51bUVudHJ5EnMKF21hcF9zdHJpbmdf", - "Zm9yZWlnbl9lbnVtGEogAygLMlIucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5l", - "ZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBTdHJpbmdGb3Jl", - "aWduRW51bUVudHJ5EhYKDG9uZW9mX3VpbnQzMhhvIAEoDUgAEmYKFG9uZW9m", - "X25lc3RlZF9tZXNzYWdlGHAgASgLMkYucHJvdG9idWZfdGVzdF9tZXNzYWdl", - "cy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0ZWRNZXNz", - "YWdlSAASFgoMb25lb2Zfc3RyaW5nGHEgASgJSAASFQoLb25lb2ZfYnl0ZXMY", - "ciABKAxIABIUCgpvbmVvZl9ib29sGHMgASgISAASFgoMb25lb2ZfdWludDY0", - "GHQgASgESAASFQoLb25lb2ZfZmxvYXQYdSABKAJIABIWCgxvbmVvZl9kb3Vi", - "bGUYdiABKAFIABJZCgpvbmVvZl9lbnVtGHcgASgOMkMucHJvdG9idWZfdGVz", - "dF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5O", - "ZXN0ZWRFbnVtSAASZQoNZ3JvdXBsaWtldHlwZRjJASABKAsyRi5wcm90b2J1", + "RWRpdGlvbjIwMjMuTWFwU3RyaW5nRm9yZWlnbk1lc3NhZ2VFbnRyeRJxChZt", + "YXBfc3RyaW5nX25lc3RlZF9lbnVtGEkgAygLMlEucHJvdG9idWZfdGVzdF9t", + "ZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5NYXBT", + "dHJpbmdOZXN0ZWRFbnVtRW50cnkScwoXbWFwX3N0cmluZ19mb3JlaWduX2Vu", + "dW0YSiADKAsyUi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRl", + "c3RBbGxUeXBlc0VkaXRpb24yMDIzLk1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50", + "cnkSFgoMb25lb2ZfdWludDMyGG8gASgNSAASbQoUb25lb2ZfbmVzdGVkX21l", + "c3NhZ2UYcCABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25z", + "LlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2VCBaoBAigB", + "SAASFgoMb25lb2Zfc3RyaW5nGHEgASgJSAASFQoLb25lb2ZfYnl0ZXMYciAB", + "KAxIABIUCgpvbmVvZl9ib29sGHMgASgISAASFgoMb25lb2ZfdWludDY0GHQg", + "ASgESAASFQoLb25lb2ZfZmxvYXQYdSABKAJIABIWCgxvbmVvZl9kb3VibGUY", + "diABKAFIABJZCgpvbmVvZl9lbnVtGHcgASgOMkMucHJvdG9idWZfdGVzdF9t", + "ZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0aW9uMjAyMy5OZXN0", + "ZWRFbnVtSAASXgoNZ3JvdXBsaWtldHlwZRjJASABKAsyRi5wcm90b2J1Zl90", + "ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIz", + "Lkdyb3VwTGlrZVR5cGUSYAoPZGVsaW1pdGVkX2ZpZWxkGMoBIAEoCzJGLnBy", + "b3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRp", + "dGlvbjIwMjMuR3JvdXBMaWtlVHlwZRpwCg1OZXN0ZWRNZXNzYWdlEgkKAWEY", + "ASABKAUSVAoLY29yZWN1cnNpdmUYAiABKAsyOC5wcm90b2J1Zl90ZXN0X21l", + "c3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzQgWqAQIo", + "ARo0ChJNYXBJbnQzMkludDMyRW50cnkSCwoDa2V5GAEgASgFEg0KBXZhbHVl", + "GAIgASgFOgI4ARo0ChJNYXBJbnQ2NEludDY0RW50cnkSCwoDa2V5GAEgASgD", + "Eg0KBXZhbHVlGAIgASgDOgI4ARo2ChRNYXBVaW50MzJVaW50MzJFbnRyeRIL", + "CgNrZXkYASABKA0SDQoFdmFsdWUYAiABKA06AjgBGjYKFE1hcFVpbnQ2NFVp", + "bnQ2NEVudHJ5EgsKA2tleRgBIAEoBBINCgV2YWx1ZRgCIAEoBDoCOAEaNgoU", + "TWFwU2ludDMyU2ludDMyRW50cnkSCwoDa2V5GAEgASgREg0KBXZhbHVlGAIg", + "ASgROgI4ARo2ChRNYXBTaW50NjRTaW50NjRFbnRyeRILCgNrZXkYASABKBIS", + "DQoFdmFsdWUYAiABKBI6AjgBGjgKFk1hcEZpeGVkMzJGaXhlZDMyRW50cnkS", + "CwoDa2V5GAEgASgHEg0KBXZhbHVlGAIgASgHOgI4ARo4ChZNYXBGaXhlZDY0", + "Rml4ZWQ2NEVudHJ5EgsKA2tleRgBIAEoBhINCgV2YWx1ZRgCIAEoBjoCOAEa", + "OgoYTWFwU2ZpeGVkMzJTZml4ZWQzMkVudHJ5EgsKA2tleRgBIAEoDxINCgV2", + "YWx1ZRgCIAEoDzoCOAEaOgoYTWFwU2ZpeGVkNjRTZml4ZWQ2NEVudHJ5EgsK", + "A2tleRgBIAEoEBINCgV2YWx1ZRgCIAEoEDoCOAEaNAoSTWFwSW50MzJGbG9h", + "dEVudHJ5EgsKA2tleRgBIAEoBRINCgV2YWx1ZRgCIAEoAjoCOAEaNQoTTWFw", + "SW50MzJEb3VibGVFbnRyeRILCgNrZXkYASABKAUSDQoFdmFsdWUYAiABKAE6", + "AjgBGjIKEE1hcEJvb2xCb29sRW50cnkSCwoDa2V5GAEgASgIEg0KBXZhbHVl", + "GAIgASgIOgI4ARo2ChRNYXBTdHJpbmdTdHJpbmdFbnRyeRILCgNrZXkYASAB", + "KAkSDQoFdmFsdWUYAiABKAk6AjgBGjUKE01hcFN0cmluZ0J5dGVzRW50cnkS", + "CwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgMOgI4ARqFAQobTWFwU3RyaW5n", + "TmVzdGVkTWVzc2FnZUVudHJ5EgsKA2tleRgBIAEoCRJVCgV2YWx1ZRgCIAEo", + "CzJGLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5", + "cGVzRWRpdGlvbjIwMjMuTmVzdGVkTWVzc2FnZToCOAEaegocTWFwU3RyaW5n", + "Rm9yZWlnbk1lc3NhZ2VFbnRyeRILCgNrZXkYASABKAkSSQoFdmFsdWUYAiAB", + "KAsyOi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLkZvcmVpZ25N", + "ZXNzYWdlRWRpdGlvbjIwMjM6AjgBGn8KGE1hcFN0cmluZ05lc3RlZEVudW1F", + "bnRyeRILCgNrZXkYASABKAkSUgoFdmFsdWUYAiABKA4yQy5wcm90b2J1Zl90", + "ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIz", + "Lk5lc3RlZEVudW06AjgBGnQKGU1hcFN0cmluZ0ZvcmVpZ25FbnVtRW50cnkS", + "CwoDa2V5GAEgASgJEkYKBXZhbHVlGAIgASgOMjcucHJvdG9idWZfdGVzdF9t", + "ZXNzYWdlcy5lZGl0aW9ucy5Gb3JlaWduRW51bUVkaXRpb24yMDIzOgI4ARo8", + "Cg1Hcm91cExpa2VUeXBlEhQKC2dyb3VwX2ludDMyGMoBIAEoBRIVCgxncm91", + "cF91aW50MzIYywEgASgNIjkKCk5lc3RlZEVudW0SBwoDRk9PEAASBwoDQkFS", + "EAESBwoDQkFaEAISEAoDTkVHEP///////////wEqBQh4EMkBQg0KC29uZW9m", + "X2ZpZWxkIiYKGUZvcmVpZ25NZXNzYWdlRWRpdGlvbjIwMjMSCQoBYxgBIAEo", + "BSIaCg1Hcm91cExpa2VUeXBlEgkKAWMYASABKAUqSwoWRm9yZWlnbkVudW1F", + "ZGl0aW9uMjAyMxIPCgtGT1JFSUdOX0ZPTxAAEg8KC0ZPUkVJR05fQkFSEAES", + "DwoLRk9SRUlHTl9CQVoQAjpRCg9leHRlbnNpb25faW50MzISOC5wcm90b2J1", "Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24y", - "MDIzLkdyb3VwTGlrZVR5cGVCBaoBAigCEmcKD2RlbGltaXRlZF9maWVsZBjK", - "ASABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25zLlRlc3RB", - "bGxUeXBlc0VkaXRpb24yMDIzLkdyb3VwTGlrZVR5cGVCBaoBAigCGmkKDU5l", - "c3RlZE1lc3NhZ2USCQoBYRgBIAEoBRJNCgtjb3JlY3Vyc2l2ZRgCIAEoCzI4", - "LnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVz", - "RWRpdGlvbjIwMjMaNAoSTWFwSW50MzJJbnQzMkVudHJ5EgsKA2tleRgBIAEo", - "BRINCgV2YWx1ZRgCIAEoBToCOAEaNAoSTWFwSW50NjRJbnQ2NEVudHJ5EgsK", - "A2tleRgBIAEoAxINCgV2YWx1ZRgCIAEoAzoCOAEaNgoUTWFwVWludDMyVWlu", - "dDMyRW50cnkSCwoDa2V5GAEgASgNEg0KBXZhbHVlGAIgASgNOgI4ARo2ChRN", - "YXBVaW50NjRVaW50NjRFbnRyeRILCgNrZXkYASABKAQSDQoFdmFsdWUYAiAB", - "KAQ6AjgBGjYKFE1hcFNpbnQzMlNpbnQzMkVudHJ5EgsKA2tleRgBIAEoERIN", - "CgV2YWx1ZRgCIAEoEToCOAEaNgoUTWFwU2ludDY0U2ludDY0RW50cnkSCwoD", - "a2V5GAEgASgSEg0KBXZhbHVlGAIgASgSOgI4ARo4ChZNYXBGaXhlZDMyRml4", - "ZWQzMkVudHJ5EgsKA2tleRgBIAEoBxINCgV2YWx1ZRgCIAEoBzoCOAEaOAoW", - "TWFwRml4ZWQ2NEZpeGVkNjRFbnRyeRILCgNrZXkYASABKAYSDQoFdmFsdWUY", - "AiABKAY6AjgBGjoKGE1hcFNmaXhlZDMyU2ZpeGVkMzJFbnRyeRILCgNrZXkY", - "ASABKA8SDQoFdmFsdWUYAiABKA86AjgBGjoKGE1hcFNmaXhlZDY0U2ZpeGVk", - "NjRFbnRyeRILCgNrZXkYASABKBASDQoFdmFsdWUYAiABKBA6AjgBGjQKEk1h", - "cEludDMyRmxvYXRFbnRyeRILCgNrZXkYASABKAUSDQoFdmFsdWUYAiABKAI6", - "AjgBGjUKE01hcEludDMyRG91YmxlRW50cnkSCwoDa2V5GAEgASgFEg0KBXZh", - "bHVlGAIgASgBOgI4ARoyChBNYXBCb29sQm9vbEVudHJ5EgsKA2tleRgBIAEo", - "CBINCgV2YWx1ZRgCIAEoCDoCOAEaNgoUTWFwU3RyaW5nU3RyaW5nRW50cnkS", - "CwoDa2V5GAEgASgJEg0KBXZhbHVlGAIgASgJOgI4ARo1ChNNYXBTdHJpbmdC", - "eXRlc0VudHJ5EgsKA2tleRgBIAEoCRINCgV2YWx1ZRgCIAEoDDoCOAEahQEK", - "G01hcFN0cmluZ05lc3RlZE1lc3NhZ2VFbnRyeRILCgNrZXkYASABKAkSVQoF", - "dmFsdWUYAiABKAsyRi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25z", - "LlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzLk5lc3RlZE1lc3NhZ2U6AjgBGnoK", - "HE1hcFN0cmluZ0ZvcmVpZ25NZXNzYWdlRW50cnkSCwoDa2V5GAEgASgJEkkK", - "BXZhbHVlGAIgASgLMjoucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9u", - "cy5Gb3JlaWduTWVzc2FnZUVkaXRpb24yMDIzOgI4ARp/ChhNYXBTdHJpbmdO", - "ZXN0ZWRFbnVtRW50cnkSCwoDa2V5GAEgASgJElIKBXZhbHVlGAIgASgOMkMu", - "cHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNF", - "ZGl0aW9uMjAyMy5OZXN0ZWRFbnVtOgI4ARp0ChlNYXBTdHJpbmdGb3JlaWdu", - "RW51bUVudHJ5EgsKA2tleRgBIAEoCRJGCgV2YWx1ZRgCIAEoDjI3LnByb3Rv", - "YnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuRm9yZWlnbkVudW1FZGl0aW9u", - "MjAyMzoCOAEaPAoNR3JvdXBMaWtlVHlwZRIUCgtncm91cF9pbnQzMhjKASAB", - "KAUSFQoMZ3JvdXBfdWludDMyGMsBIAEoDSI5CgpOZXN0ZWRFbnVtEgcKA0ZP", - "TxAAEgcKA0JBUhABEgcKA0JBWhACEhAKA05FRxD///////////8BKgUIeBDJ", - "AUINCgtvbmVvZl9maWVsZCImChlGb3JlaWduTWVzc2FnZUVkaXRpb24yMDIz", - "EgkKAWMYASABKAUiGgoNR3JvdXBMaWtlVHlwZRIJCgFjGAEgASgFKksKFkZv", - "cmVpZ25FbnVtRWRpdGlvbjIwMjMSDwoLRk9SRUlHTl9GT08QABIPCgtGT1JF", - "SUdOX0JBUhABEg8KC0ZPUkVJR05fQkFaEAI6UQoPZXh0ZW5zaW9uX2ludDMy", - "EjgucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlw", - "ZXNFZGl0aW9uMjAyMxh4IAEoBTqGAQoNZ3JvdXBsaWtldHlwZRI4LnByb3Rv", - "YnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlvbnMuVGVzdEFsbFR5cGVzRWRpdGlv", - "bjIwMjMYeSABKAsyLi5wcm90b2J1Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb25z", - "Lkdyb3VwTGlrZVR5cGVCBaoBAigCOoYBCg1kZWxpbWl0ZWRfZXh0EjgucHJv", - "dG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5UZXN0QWxsVHlwZXNFZGl0", - "aW9uMjAyMxh6IAEoCzIuLnByb3RvYnVmX3Rlc3RfbWVzc2FnZXMuZWRpdGlv", - "bnMuR3JvdXBMaWtlVHlwZUIFqgECKAJCPAotY29tLmdvb2dsZS5wcm90b2J1", - "Zl90ZXN0X21lc3NhZ2VzLmVkaXRpb24yMDIzUAGiAghFZGl0aW9uc2IIZWRp", - "dGlvbnNw6Ac=")); + "MDIzGHggASgFOn8KDWdyb3VwbGlrZXR5cGUSOC5wcm90b2J1Zl90ZXN0X21l", + "c3NhZ2VzLmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHkgASgL", + "Mi4ucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Hcm91cExpa2VU", + "eXBlOn8KDWRlbGltaXRlZF9leHQSOC5wcm90b2J1Zl90ZXN0X21lc3NhZ2Vz", + "LmVkaXRpb25zLlRlc3RBbGxUeXBlc0VkaXRpb24yMDIzGHogASgLMi4ucHJv", + "dG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9ucy5Hcm91cExpa2VUeXBlQkEK", + "LWNvbS5nb29nbGUucHJvdG9idWZfdGVzdF9tZXNzYWdlcy5lZGl0aW9uMjAy", + "M1ABogIIRWRpdGlvbnOSAwIoAmIIZWRpdGlvbnNw6Ac=")); descriptor = pbr::FileDescriptor.FromGeneratedCode(descriptorData, new pbr::FileDescriptor[] { }, new pbr::GeneratedClrTypeInfo(new[] {typeof(global::ProtobufTestMessages.Editions.ForeignEnumEdition2023), }, new pb::Extension[] { TestMessagesEdition2023Extensions.ExtensionInt32, TestMessagesEdition2023Extensions.GroupLikeType, TestMessagesEdition2023Extensions.DelimitedExt }, new pbr::GeneratedClrTypeInfo[] { diff --git a/csharp/src/Google.Protobuf.Test/testprotos.pb b/csharp/src/Google.Protobuf.Test/testprotos.pb index 0d2bc150bb..fa71270040 100644 Binary files a/csharp/src/Google.Protobuf.Test/testprotos.pb and b/csharp/src/Google.Protobuf.Test/testprotos.pb differ diff --git a/php/ext/google/protobuf/php-upb.c b/php/ext/google/protobuf/php-upb.c index 9dc773d6ff..022fab0104 100644 --- a/php/ext/google/protobuf/php-upb.c +++ b/php/ext/google/protobuf/php-upb.c @@ -13945,8 +13945,7 @@ bool _upb_FieldDef_ValidateUtf8(const upb_FieldDef* f) { bool _upb_FieldDef_IsGroupLike(const upb_FieldDef* f) { // Groups are always tag-delimited. - if (UPB_DESC(FeatureSet_message_encoding)(upb_FieldDef_ResolvedFeatures(f)) != - UPB_DESC(FeatureSet_DELIMITED)) { + if (f->type_ != kUpb_FieldType_Group) { return false; } @@ -14383,12 +14382,6 @@ static void _upb_FieldDef_Create(upb_DefBuilder* ctx, const char* prefix, UPB_DESC(FieldDescriptorProto_has_type_name)(field_proto); f->type_ = (int)UPB_DESC(FieldDescriptorProto_type)(field_proto); - if (f->type_ == kUpb_FieldType_Message && - // TODO: remove once we can deprecate kUpb_FieldType_Group. - UPB_DESC(FeatureSet_message_encoding)(f->resolved_features) == - UPB_DESC(FeatureSet_DELIMITED)) { - f->type_ = kUpb_FieldType_Group; - } if (has_type) { switch (f->type_) { @@ -14409,7 +14402,7 @@ static void _upb_FieldDef_Create(upb_DefBuilder* ctx, const char* prefix, } } - if (!has_type && has_type_name) { + if ((!has_type && has_type_name) || f->type_ == kUpb_FieldType_Message) { f->type_ = UPB_FIELD_TYPE_UNSPECIFIED; // We'll assign this in resolve_subdef() } else { @@ -14559,8 +14552,15 @@ static void resolve_subdef(upb_DefBuilder* ctx, const char* prefix, break; case UPB_DEFTYPE_MSG: f->sub.msgdef = def; - f->type_ = kUpb_FieldType_Message; // It appears there is no way of - // this being a group. + f->type_ = kUpb_FieldType_Message; + // TODO: remove once we can deprecate + // kUpb_FieldType_Group. + if (UPB_DESC(FeatureSet_message_encoding)(f->resolved_features) == + UPB_DESC(FeatureSet_DELIMITED) && + !upb_MessageDef_IsMapEntry(def) && + !(f->msgdef && upb_MessageDef_IsMapEntry(f->msgdef))) { + f->type_ = kUpb_FieldType_Group; + } f->has_presence = !upb_FieldDef_IsRepeated(f); break; default: diff --git a/ruby/ext/google/protobuf_c/ruby-upb.c b/ruby/ext/google/protobuf_c/ruby-upb.c index f8527816cb..2ffd880477 100644 --- a/ruby/ext/google/protobuf_c/ruby-upb.c +++ b/ruby/ext/google/protobuf_c/ruby-upb.c @@ -13433,8 +13433,7 @@ bool _upb_FieldDef_ValidateUtf8(const upb_FieldDef* f) { bool _upb_FieldDef_IsGroupLike(const upb_FieldDef* f) { // Groups are always tag-delimited. - if (UPB_DESC(FeatureSet_message_encoding)(upb_FieldDef_ResolvedFeatures(f)) != - UPB_DESC(FeatureSet_DELIMITED)) { + if (f->type_ != kUpb_FieldType_Group) { return false; } @@ -13871,12 +13870,6 @@ static void _upb_FieldDef_Create(upb_DefBuilder* ctx, const char* prefix, UPB_DESC(FieldDescriptorProto_has_type_name)(field_proto); f->type_ = (int)UPB_DESC(FieldDescriptorProto_type)(field_proto); - if (f->type_ == kUpb_FieldType_Message && - // TODO: remove once we can deprecate kUpb_FieldType_Group. - UPB_DESC(FeatureSet_message_encoding)(f->resolved_features) == - UPB_DESC(FeatureSet_DELIMITED)) { - f->type_ = kUpb_FieldType_Group; - } if (has_type) { switch (f->type_) { @@ -13897,7 +13890,7 @@ static void _upb_FieldDef_Create(upb_DefBuilder* ctx, const char* prefix, } } - if (!has_type && has_type_name) { + if ((!has_type && has_type_name) || f->type_ == kUpb_FieldType_Message) { f->type_ = UPB_FIELD_TYPE_UNSPECIFIED; // We'll assign this in resolve_subdef() } else { @@ -14047,8 +14040,15 @@ static void resolve_subdef(upb_DefBuilder* ctx, const char* prefix, break; case UPB_DEFTYPE_MSG: f->sub.msgdef = def; - f->type_ = kUpb_FieldType_Message; // It appears there is no way of - // this being a group. + f->type_ = kUpb_FieldType_Message; + // TODO: remove once we can deprecate + // kUpb_FieldType_Group. + if (UPB_DESC(FeatureSet_message_encoding)(f->resolved_features) == + UPB_DESC(FeatureSet_DELIMITED) && + !upb_MessageDef_IsMapEntry(def) && + !(f->msgdef && upb_MessageDef_IsMapEntry(f->msgdef))) { + f->type_ = kUpb_FieldType_Group; + } f->has_presence = !upb_FieldDef_IsRepeated(f); break; default: