diff --git a/pkg/analyzer/lib/src/error/codes.dart b/pkg/analyzer/lib/src/error/codes.dart
index 96d81eb..af0f293 100644
--- a/pkg/analyzer/lib/src/error/codes.dart
+++ b/pkg/analyzer/lib/src/error/codes.dart
@@ -1581,14 +1581,15 @@
    * basename `n`.
    *
    * Parameters:
-   * 0: the name of the constructor
+   * 0: the name of the field
    */
   static const CompileTimeErrorCode CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD =
       CompileTimeErrorCode(
-          'CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD',
+          'CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER',
           "'{0}' can't be used to name both a constructor and a static field "
               "in this class.",
-          correction: "Try renaming either the constructor or the field.");
+          correction: "Try renaming either the constructor or the field.",
+          uniqueName: 'CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD');
 
   /**
    * 10.11 Class Member Conflicts: Let `C` be a class. It is a compile-time
@@ -1600,10 +1601,11 @@
    */
   static const CompileTimeErrorCode CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD =
       CompileTimeErrorCode(
-          'CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD',
+          'CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER',
           "'{0}' can't be used to name both a constructor and a static method "
               "in this class.",
-          correction: "Try renaming either the constructor or the method.");
+          correction: "Try renaming either the constructor or the method.",
+          uniqueName: 'CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD');
 
   /**
    * 10.11 Class Member Conflicts: Let `C` be a class. It is a compile-time
diff --git a/tests/language/regress/regress33235_01_test.dart b/tests/language/regress/regress33235_01_test.dart
index 2936782..1232105 100644
--- a/tests/language/regress/regress33235_01_test.dart
+++ b/tests/language/regress/regress33235_01_test.dart
@@ -11,7 +11,7 @@
 //^
 // [cfe] Conflicts with member 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static int get n {
   //             ^
diff --git a/tests/language/regress/regress33235_02_test.dart b/tests/language/regress/regress33235_02_test.dart
index 5d9156b..6e3c6b0 100644
--- a/tests/language/regress/regress33235_02_test.dart
+++ b/tests/language/regress/regress33235_02_test.dart
@@ -11,7 +11,7 @@
 //^
 // [cfe] Conflicts with member 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static int n() {
   //         ^
diff --git a/tests/language/regress/regress33235_03_test.dart b/tests/language/regress/regress33235_03_test.dart
index c47118d..bb06cbb 100644
--- a/tests/language/regress/regress33235_03_test.dart
+++ b/tests/language/regress/regress33235_03_test.dart
@@ -11,7 +11,7 @@
 //^
 // [cfe] Conflicts with setter 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static set n(int x) {}
   //         ^
diff --git a/tests/language_2/regress/regress33235_01_test.dart b/tests/language_2/regress/regress33235_01_test.dart
index 8671046..0e6676f 100644
--- a/tests/language_2/regress/regress33235_01_test.dart
+++ b/tests/language_2/regress/regress33235_01_test.dart
@@ -13,7 +13,7 @@
 //^
 // [cfe] Conflicts with member 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static int get n {
   //             ^
diff --git a/tests/language_2/regress/regress33235_02_test.dart b/tests/language_2/regress/regress33235_02_test.dart
index ea9d171..3584b3d 100644
--- a/tests/language_2/regress/regress33235_02_test.dart
+++ b/tests/language_2/regress/regress33235_02_test.dart
@@ -13,7 +13,7 @@
 //^
 // [cfe] Conflicts with member 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_METHOD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static int n() {
   //         ^
diff --git a/tests/language_2/regress/regress33235_03_test.dart b/tests/language_2/regress/regress33235_03_test.dart
index 47454b6..310ba46 100644
--- a/tests/language_2/regress/regress33235_03_test.dart
+++ b/tests/language_2/regress/regress33235_03_test.dart
@@ -13,7 +13,7 @@
 //^
 // [cfe] Conflicts with setter 'n'.
 //  ^
-// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_FIELD
+// [analyzer] COMPILE_TIME_ERROR.CONFLICTING_CONSTRUCTOR_AND_STATIC_MEMBER
 
   static set n(int x) {}
   //         ^
diff --git a/tools/VERSION b/tools/VERSION
index b7c0fa0..6849ddf 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
 MAJOR 2
 MINOR 14
 PATCH 0
-PRERELEASE 96
+PRERELEASE 97
 PRERELEASE_PATCH 0
\ No newline at end of file
