diff --git a/src/google/protobuf/compiler/java/lite/message.cc b/src/google/protobuf/compiler/java/lite/message.cc index a0dff953e273..7b8a1284c81c 100644 --- a/src/google/protobuf/compiler/java/lite/message.cc +++ b/src/google/protobuf/compiler/java/lite/message.cc @@ -383,8 +383,6 @@ void ImmutableMessageLiteGenerator::Generate(io::Printer* printer) { " return parser;\n", "classname", name_resolver_->GetImmutableClassName(descriptor_)); - printer->Outdent(); - if (HasRequiredFields(descriptor_)) { printer->Print( "}\n" @@ -408,11 +406,13 @@ void ImmutableMessageLiteGenerator::Generate(io::Printer* printer) { printer->Outdent(); printer->Print( - " }\n" - " throw new UnsupportedOperationException();\n" "}\n" - "\n", - "classname", name_resolver_->GetImmutableClassName(descriptor_)); + "// Should never happen. Generates tight code to throw an exception.\n" + "throw null;\n"); + printer->Outdent(); + printer->Print( + "}\n" + "\n"); printer->Print( "\n"