Fix unused return value warnings in upb call sites and tests. Several functions in upb marked with UPB_NODISCARD had their return values ignored in test and wrapper call sites. Check and assert the return values of upb_Message_SetString, upb_Message_SetInt32, upb_ExtensionRegistry_AddArray, _upb_Message_AddUnknown, upb_Array_New, and _upb_Array_ResizeUninitialized across upb and protobuf tests and wrappers. PiperOrigin-RevId: 967461770
diff --git a/upb/message/internal/compare_unknown_test.cc b/upb/message/internal/compare_unknown_test.cc index 7346111..a8deb3b 100644 --- a/upb/message/internal/compare_unknown_test.cc +++ b/upb/message/internal/compare_unknown_test.cc
@@ -286,8 +286,8 @@ // 4. Create msg2 with raw unknown bytes representing A upb_test_ModelWithExtensions* msg2 = upb_test_ModelWithExtensions_new(arena.ptr()); - UPB_PRIVATE(_upb_Message_AddUnknown)(UPB_UPCAST(msg2), buf, size, arena.ptr(), - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)( + UPB_UPCAST(msg2), buf, size, arena.ptr(), kUpb_AddUnknown_Copy)); // 5. Verify they compare equal under IncludeUnknownFields bool is_equal = upb_Message_IsEqual(UPB_UPCAST(msg1), UPB_UPCAST(msg2), @@ -326,8 +326,8 @@ // 4. Create msg2 with raw unknown bytes representing A upb_test_TestMessageSet* msg2 = upb_test_TestMessageSet_new(arena.ptr()); - UPB_PRIVATE(_upb_Message_AddUnknown)(UPB_UPCAST(msg2), buf, size, arena.ptr(), - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)( + UPB_UPCAST(msg2), buf, size, arena.ptr(), kUpb_AddUnknown_Copy)); // 5. Verify they compare equal under IncludeUnknownFields bool is_equal = upb_Message_IsEqual(UPB_UPCAST(msg1), UPB_UPCAST(msg2),
diff --git a/upb/message/promote_test.cc b/upb/message/promote_test.cc index 85c10fc..f10d6d0 100644 --- a/upb/message/promote_test.cc +++ b/upb/message/promote_test.cc
@@ -535,7 +535,8 @@ val_str.str_val = upb_StringView_FromString("World"); const upb_MiniTableField* custom_f = upb_MiniTable_GetFieldByIndex(custom_sub_table, 0); - upb_Message_SetString(extension1, custom_f, val_str.str_val, arena.ptr()); + EXPECT_TRUE(upb_Message_SetString(extension1, custom_f, val_str.str_val, + arena.ptr())); // 4. Attach custom parsed submessage "World" to msg as a non-canonical // extension under the different custom mini-table layout. @@ -660,7 +661,7 @@ upb_Message* extension1 = _upb_Message_New(custom_sub_table_ext, arena.ptr()); const upb_MiniTableField* custom_f = upb_MiniTable_GetFieldByIndex(custom_sub_table_ext, 0); - upb_Message_SetInt32(extension1, custom_f, 42, arena.ptr()); + EXPECT_TRUE(upb_Message_SetInt32(extension1, custom_f, 42, arena.ptr())); // 7. Attach it as a non-canonical extension to msg using field 1547 UPB_PRIVATE(_upb_Message_SetNonCanonicalExtension)(
diff --git a/upb/message/test.cc b/upb/message/test.cc index 036944e..d951159 100644 --- a/upb/message/test.cc +++ b/upb/message/test.cc
@@ -968,9 +968,9 @@ // Add some standard raw unknown bytes char raw_unknown[] = "\x08\x96\x01"; // tag 1 = 150 - UPB_PRIVATE(_upb_Message_AddUnknown)(UPB_UPCAST(msg), raw_unknown, - sizeof(raw_unknown) - 1, arena.ptr(), - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)( + UPB_UPCAST(msg), raw_unknown, sizeof(raw_unknown) - 1, arena.ptr(), + kUpb_AddUnknown_Copy)); // Verify both are present initially {
diff --git a/upb/wire/encode_test.cc b/upb/wire/encode_test.cc index abc67cc..9dfc294 100644 --- a/upb/wire/encode_test.cc +++ b/upb/wire/encode_test.cc
@@ -233,7 +233,8 @@ // Verify that the encoded bytes can be decoded back using the registry! upb_ExtensionRegistry* ext_reg = upb_ExtensionRegistry_New(arena); const upb_MiniTableExtension* ext_array[1] = {upb_wire_test_ext_i32_ext}; - upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 1); + EXPECT_EQ(upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 1), + kUpb_ExtensionRegistryStatus_Ok); upb_wire_test_TestExtensions* decoded_msg = upb_wire_test_TestExtensions_parse_ex(buf, size, ext_reg, 0, arena); @@ -261,9 +262,9 @@ // 3. Also add some standard raw unknown bytes (tag 150) char raw_unknown[] = "\x08\x96\x01"; // tag 1 = 150 - UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, raw_unknown, - sizeof(raw_unknown) - 1, arena, - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)( + (upb_Message*)msg, raw_unknown, sizeof(raw_unknown) - 1, arena, + kUpb_AddUnknown_Copy)); // Encode the message WITH kUpb_EncodeOption_SkipUnknown option! char* buf; @@ -280,7 +281,8 @@ upb_ExtensionRegistry* ext_reg = upb_ExtensionRegistry_New(arena); const upb_MiniTableExtension* ext_array[2] = { upb_wire_test_ext_i32_ext, upb_wire_test_ext_recursive_ext}; - upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2); + EXPECT_EQ(upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2), + kUpb_ExtensionRegistryStatus_Ok); upb_wire_test_TestExtensions* decoded_msg = upb_wire_test_TestExtensions_parse_ex(buf, size, ext_reg, 0, arena); @@ -331,7 +333,8 @@ upb_ExtensionRegistry* ext_reg = upb_ExtensionRegistry_New(arena); const upb_MiniTableExtension* ext_array[2] = { upb_wire_test_ext_i32_ext, upb_wire_test_ext_recursive_ext}; - upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2); + EXPECT_EQ(upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2), + kUpb_ExtensionRegistryStatus_Ok); upb_wire_test_TestExtensions* decoded_msg = upb_wire_test_TestExtensions_parse_ex(buf, size, ext_reg, 0, arena); @@ -387,9 +390,9 @@ // 3. Also add some standard raw unknown bytes (tag 150) char raw_unknown[] = "\x08\x96\x01"; // tag 1 = 150 - UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, raw_unknown, - sizeof(raw_unknown) - 1, arena, - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)( + (upb_Message*)msg, raw_unknown, sizeof(raw_unknown) - 1, arena, + kUpb_AddUnknown_Copy)); // Encode the message WITH kUpb_EncodeOption_SkipUnknown | // kUpb_EncodeOption_Deterministic! @@ -408,7 +411,8 @@ upb_ExtensionRegistry* ext_reg = upb_ExtensionRegistry_New(arena); const upb_MiniTableExtension* ext_array[2] = { upb_wire_test_ext_i32_ext, upb_wire_test_ext_recursive_ext}; - upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2); + EXPECT_EQ(upb_ExtensionRegistry_AddArray(ext_reg, ext_array, 2), + kUpb_ExtensionRegistryStatus_Ok); upb_wire_test_TestExtensions* decoded_msg = upb_wire_test_TestExtensions_parse_ex(buf, size, ext_reg, 0, arena); @@ -437,9 +441,9 @@ // 1. Add Unknown 1 (Tag 10, Varint) char unknown1[] = "\x50\x64"; - UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, unknown1, - sizeof(unknown1) - 1, arena, - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, unknown1, + sizeof(unknown1) - 1, arena, + kUpb_AddUnknown_Copy)); // 2. Add Non-Canonical Extension 1 (Tag 100, ext_i32) int32_t val1 = 42; @@ -448,9 +452,9 @@ // 3. Add Unknown 2 (Tag 12, Varint) char unknown2[] = "\x60\x64"; - UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, unknown2, - sizeof(unknown2) - 1, arena, - kUpb_AddUnknown_Copy); + EXPECT_TRUE(UPB_PRIVATE(_upb_Message_AddUnknown)((upb_Message*)msg, unknown2, + sizeof(unknown2) - 1, arena, + kUpb_AddUnknown_Copy)); // 4. Add Canonical Extension 1 (Tag 101, ext_recursive) upb_wire_test_TestRecursive* sub_msg = upb_wire_test_TestRecursive_new(arena);