Skip to content

Commit

Permalink
Merge pull request #10561 from xvrl/issue-9673
Browse files Browse the repository at this point in the history
fix serialization warnings in generated code when compiling with Java 18 and above
  • Loading branch information
fowles authored Sep 30, 2022
2 parents c5c5306 + c7729aa commit 6757a0b
Showing 6 changed files with 11 additions and 3 deletions.
1 change: 1 addition & 0 deletions src/google/protobuf/compiler/java/enum_field.cc
Original file line number Diff line number Diff line change
@@ -674,6 +674,7 @@ void RepeatedImmutableEnumFieldGenerator::GenerateMembers(
io::Printer* printer) const {
printer->Print(
variables_,
"@SuppressWarnings(\"serial\")\n"
"private java.util.List<java.lang.Integer> $name$_;\n"
"private static final "
"com.google.protobuf.Internal.ListAdapter.Converter<\n"
1 change: 1 addition & 0 deletions src/google/protobuf/compiler/java/map_field.cc
Original file line number Diff line number Diff line change
@@ -328,6 +328,7 @@ void ImmutableMapFieldGenerator::GenerateMembers(io::Printer* printer) const {
" $value_default_value$);\n"
"}\n");
printer->Print(variables_,
"@SuppressWarnings(\"serial\")\n"
"private com.google.protobuf.MapField<\n"
" $type_parameters$> $name$_;\n"
"private com.google.protobuf.MapField<$type_parameters$>\n"
2 changes: 2 additions & 0 deletions src/google/protobuf/compiler/java/message.cc
Original file line number Diff line number Diff line change
@@ -438,6 +438,7 @@ void ImmutableMessageGenerator::Generate(io::Printer* printer) {
// oneofCase_ and oneof_
printer->Print(vars,
"private int $oneof_name$Case_ = 0;\n"
"@SuppressWarnings(\"serial\")\n"
"private java.lang.Object $oneof_name$_;\n");
// OneofCase enum
printer->Print(
@@ -1587,6 +1588,7 @@ void ImmutableMessageGenerator::GenerateAnyMethods(io::Printer* printer) {
" defaultInstance.getDescriptorForType().getFullName());\n"
"}\n"
"\n"
"@SuppressWarnings(\"serial\")\n"
"private volatile com.google.protobuf.Message cachedUnpackValue;\n"
"\n"
"@java.lang.SuppressWarnings(\"unchecked\")\n"
3 changes: 2 additions & 1 deletion src/google/protobuf/compiler/java/message_field.cc
Original file line number Diff line number Diff line change
@@ -887,7 +887,8 @@ void RepeatedImmutableMessageFieldGenerator::GenerateInterfaceMembers(

void RepeatedImmutableMessageFieldGenerator::GenerateMembers(
io::Printer* printer) const {
printer->Print(variables_, "private java.util.List<$type$> $name$_;\n");
printer->Print(variables_, "@SuppressWarnings(\"serial\")\n"
"private java.util.List<$type$> $name$_;\n");
PrintExtraFieldInfo(variables_, printer);
WriteFieldDocComment(printer, descriptor_);
printer->Print(variables_,
3 changes: 2 additions & 1 deletion src/google/protobuf/compiler/java/primitive_field.cc
Original file line number Diff line number Diff line change
@@ -709,7 +709,8 @@ void RepeatedImmutablePrimitiveFieldGenerator::GenerateInterfaceMembers(

void RepeatedImmutablePrimitiveFieldGenerator::GenerateMembers(
io::Printer* printer) const {
printer->Print(variables_, "private $field_list_type$ $name$_;\n");
printer->Print(variables_, "@SuppressWarnings(\"serial\")\n"
"private $field_list_type$ $name$_;\n");
PrintExtraFieldInfo(variables_, printer);
WriteFieldAccessorDocComment(printer, descriptor_, LIST_GETTER);
printer->Print(variables_,
4 changes: 3 additions & 1 deletion src/google/protobuf/compiler/java/string_field.cc
Original file line number Diff line number Diff line change
@@ -211,7 +211,8 @@ void ImmutableStringFieldGenerator::GenerateInterfaceMembers(

void ImmutableStringFieldGenerator::GenerateMembers(
io::Printer* printer) const {
printer->Print(variables_, "private volatile java.lang.Object $name$_;\n");
printer->Print(variables_, "@SuppressWarnings(\"serial\")\n"
"private volatile java.lang.Object $name$_;\n");
PrintExtraFieldInfo(variables_, printer);

if (HasHazzer(descriptor_)) {
@@ -792,6 +793,7 @@ void RepeatedImmutableStringFieldGenerator::GenerateInterfaceMembers(
void RepeatedImmutableStringFieldGenerator::GenerateMembers(
io::Printer* printer) const {
printer->Print(variables_,
"@SuppressWarnings(\"serial\")\n"
"private com.google.protobuf.LazyStringList $name$_;\n");
PrintExtraFieldInfo(variables_, printer);
WriteFieldAccessorDocComment(printer, descriptor_, LIST_GETTER);

0 comments on commit 6757a0b

Please sign in to comment.