Automated rollback of commit f48dc324d1.

PiperOrigin-RevId: 555993996
pull/13458/head
Matt Kulukundis 2 years ago committed by Copybara-Service
parent ff259f71c5
commit 95440f7a90
  1. 29
      src/google/protobuf/compiler/parser.cc
  2. 1
      src/google/protobuf/compiler/parser.h
  3. 10
      src/google/protobuf/compiler/parser_unittest.cc

@ -571,26 +571,6 @@ void Parser::SkipRestOfBlock() {
// ===================================================================
bool Parser::ValidateMessage(const DescriptorProto* proto) {
for (int i = 0; i < proto->options().uninterpreted_option_size(); i++) {
const UninterpretedOption& option =
proto->options().uninterpreted_option(i);
if (option.name_size() > 0 && !option.name(0).is_extension() &&
option.name(0).name_part() == "map_entry") {
int line = -1, col = 0; // indicates line and column not known
if (source_location_table_ != nullptr) {
source_location_table_->Find(
&option, DescriptorPool::ErrorCollector::OPTION_NAME, &line, &col);
}
RecordError(line, col,
"map_entry should not be set explicitly. "
"Use map<KeyType, ValueType> instead.");
return false;
}
}
return true;
}
bool Parser::ValidateEnum(const EnumDescriptorProto* proto) {
bool has_allow_alias = false;
bool allow_alias = false;
@ -681,8 +661,9 @@ bool Parser::Parse(io::Tokenizer* input, FileDescriptorProto* file) {
root_location.RecordLegacyLocation(file,
DescriptorPool::ErrorCollector::OTHER);
if (require_syntax_identifier_ || LookingAt("syntax") ||
LookingAt("edition")) {
if (require_syntax_identifier_ || LookingAt("syntax")
|| LookingAt("edition")
) {
if (!ParseSyntaxIdentifier(file, root_location)) {
// Don't attempt to parse the file if we didn't recognize the syntax
// identifier.
@ -886,7 +867,6 @@ bool IsMessageSetWireFormatMessage(const DescriptorProto& message) {
for (int i = 0; i < options.uninterpreted_option_size(); ++i) {
const UninterpretedOption& uninterpreted = options.uninterpreted_option(i);
if (uninterpreted.name_size() == 1 &&
!uninterpreted.name(0).is_extension() &&
uninterpreted.name(0).name_part() == "message_set_wire_format" &&
uninterpreted.identifier_value() == "true") {
return true;
@ -951,9 +931,6 @@ bool Parser::ParseMessageBlock(DescriptorProto* message,
if (message->reserved_range_size() > 0) {
AdjustReservedRangesWithMaxEndNumber(message);
}
DO(ValidateMessage(message));
return true;
}

@ -540,7 +540,6 @@ class PROTOBUF_EXPORT Parser {
return syntax_identifier_ == "proto3";
}
bool ValidateMessage(const DescriptorProto* proto);
bool ValidateEnum(const EnumDescriptorProto* proto);
// =================================================================

@ -171,8 +171,6 @@ class ParserTest : public testing::Test {
// input.
void ExpectHasEarlyExitErrors(const char* text, const char* expected_errors) {
SetupParser(text);
SourceLocationTable source_locations;
parser_->RecordSourceLocationsTo(&source_locations);
FileDescriptorProto file;
EXPECT_FALSE(parser_->Parse(input_.get(), &file));
EXPECT_EQ(expected_errors, error_collector_.text_);
@ -2334,7 +2332,7 @@ TEST_F(ParserValidationErrorTest, EnumValueAliasError) {
}
TEST_F(ParserValidationErrorTest, ExplicitlyMapEntryError) {
ExpectHasErrors(
ExpectHasValidationErrors(
"message Foo {\n"
" message ValueEntry {\n"
" option map_entry = true;\n"
@ -2342,8 +2340,9 @@ TEST_F(ParserValidationErrorTest, ExplicitlyMapEntryError) {
" optional int32 value = 2;\n"
" extensions 99 to 999;\n"
" }\n"
" repeated ValueEntry value = 1;\n"
"}",
"2:11: map_entry should not be set explicitly. Use "
"7:11: map_entry should not be set explicitly. Use "
"map<KeyType, ValueType> instead.\n");
}
@ -3048,7 +3047,7 @@ class SourceInfoTest : public ParserTest {
}
}
return false;
return false;
}
private:
@ -4241,6 +4240,7 @@ TEST_F(ParseEditionsTest, FeaturesWithoutEditions) {
}
} // anonymous namespace
} // namespace compiler

Loading…
Cancel
Save