From e67204752fda66d0db3ffc24723eb69291bf282f Mon Sep 17 00:00:00 2001
From: Jon Skeet <jonskeet@google.com>
Date: Wed, 27 Jul 2016 09:12:48 +0100
Subject: [PATCH] Remove legacy_enum_values flag for GA.

---
 src/google/protobuf/compiler/csharp/csharp_enum.cc      | 4 +---
 src/google/protobuf/compiler/csharp/csharp_generator.cc | 3 ---
 src/google/protobuf/compiler/csharp/csharp_options.h    | 9 +--------
 3 files changed, 2 insertions(+), 14 deletions(-)

diff --git a/src/google/protobuf/compiler/csharp/csharp_enum.cc b/src/google/protobuf/compiler/csharp/csharp_enum.cc
index 64381d0faa..9e4da1edca 100644
--- a/src/google/protobuf/compiler/csharp/csharp_enum.cc
+++ b/src/google/protobuf/compiler/csharp/csharp_enum.cc
@@ -68,9 +68,7 @@ void EnumGenerator::Generate(io::Printer* printer) {
   for (int i = 0; i < descriptor_->value_count(); i++) {
       WriteEnumValueDocComment(printer, descriptor_->value(i));
       string original_name = descriptor_->value(i)->name();
-      string name = options()->legacy_enum_values
-          ? descriptor_->value(i)->name()
-          : GetEnumValueName(descriptor_->name(), descriptor_->value(i)->name());
+      string name = GetEnumValueName(descriptor_->name(), descriptor_->value(i)->name());
       // Make sure we don't get any duplicate names due to prefix removal.
       while (!used_names.insert(name).second) {
         // It's possible we'll end up giving this warning multiple times, but that's better than not at all.
diff --git a/src/google/protobuf/compiler/csharp/csharp_generator.cc b/src/google/protobuf/compiler/csharp/csharp_generator.cc
index d74e8c8847..c13ed65bec 100644
--- a/src/google/protobuf/compiler/csharp/csharp_generator.cc
+++ b/src/google/protobuf/compiler/csharp/csharp_generator.cc
@@ -83,9 +83,6 @@ bool Generator::Generate(
       cli_options.base_namespace_specified = true;
     } else if (options[i].first == "internal_access") {
       cli_options.internal_access = true;
-    } else if (options[i].first == "legacy_enum_values") {
-      // TODO: Remove this before final release
-      cli_options.legacy_enum_values = true;
     } else {
       *error = "Unknown generator option: " + options[i].first;
       return false;
diff --git a/src/google/protobuf/compiler/csharp/csharp_options.h b/src/google/protobuf/compiler/csharp/csharp_options.h
index 4079bf7f32..426fb3b50f 100644
--- a/src/google/protobuf/compiler/csharp/csharp_options.h
+++ b/src/google/protobuf/compiler/csharp/csharp_options.h
@@ -45,8 +45,7 @@ struct Options {
       file_extension(".cs"),
       base_namespace(""),
       base_namespace_specified(false),
-      internal_access(false),
-      legacy_enum_values(false) {
+      internal_access(false) {
   }
   // Extension of the generated file. Defaults to ".cs"
   string file_extension;
@@ -69,12 +68,6 @@ struct Options {
   // Whether the generated classes should have accessibility level of "internal".
   // Defaults to false that generates "public" classes.
   bool internal_access;
-  // By default, C# codegen now uses PascalCased enum values names, after
-  // removing the enum type name as a prefix (if it *is* a prefix of the value).
-  // Setting this option reverts to the previous behavior of just copying the
-  // value name specified in the .proto file, allowing gradual migration.
-  // This option will be removed before final release.
-  bool legacy_enum_values;
 };
 
 }  // namespace csharp