Skip to content

protoparse: ParseFiles allows case insensitive duplicate enum values #439

@WillAbides

Description

@WillAbides

ParseFiles doesn't do the same check as protoc for case-insensitive duplicate enums.

syntax = "proto3";

package a;

enum Success {
  SUCCESS_UNSPECIFIED = 0;
  SUCCESS_unspecified = 1;
}

protoc result:

a.proto:7:3: Enum name SUCCESS_unspecified has the same name as SUCCESS_UNSPECIFIED if you ignore case and strip out the enum name prefix (if any). This is error-prone and can lead to undefined behavior. Please avoid doing this. If you are using allow_alias, please assign the same numeric value to both enums.

This is similar to #358

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions