[wildcards] test wildcard params in overrides

See: https://github.com/dart-lang/sdk/issues/55680

Change-Id: I7893a5e9b2ff91d50eb1a997206f958705f81e14
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/375721
Commit-Queue: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
diff --git a/pkg/analyzer/doc/process/new_language_feature.md b/pkg/analyzer/doc/process/new_language_feature.md
index f07b0fa..0332c50 100644
--- a/pkg/analyzer/doc/process/new_language_feature.md
+++ b/pkg/analyzer/doc/process/new_language_feature.md
@@ -45,7 +45,7 @@
 - [ ] Constant evaluation
 - [ ] Index and search
 - [ ] Warnings (annotation-based, unused\*, strict-mode-based, a few others)
-  - [ ] `InheritanceOverrideVerifier` (report errors and warnings related to overrides)
+  - [ ] `OverrideVerifier` and `InheritanceOverrideVerifier` (report errors and warnings related to overrides)
   - [ ] `ErrorVerifier` (report other errors and warnings)
   - [ ] `FfiVerifier` (report errors and warnings related to FFI)
   - [ ] Unused elements warnings
diff --git a/pkg/analyzer/lib/src/error/inheritance_override.dart b/pkg/analyzer/lib/src/error/inheritance_override.dart
index c5ca938..251c348 100644
--- a/pkg/analyzer/lib/src/error/inheritance_override.dart
+++ b/pkg/analyzer/lib/src/error/inheritance_override.dart
@@ -850,8 +850,8 @@
     if (conflict is GetterMethodConflict) {
       // Members that participate in inheritance are always enclosed in named
       // elements so it is safe to assume that
-      // `conflict.getter.enclosingElement3.name` and
-      // `conflict.method.enclosingElement3.name` are both non-`null`.
+      // `conflict.getter.enclosingElement.name` and
+      // `conflict.method.enclosingElement.name` are both non-`null`.
       reporter.atToken(
         token,
         CompileTimeErrorCode.INCONSISTENT_INHERITANCE_GETTER_AND_METHOD,
diff --git a/pkg/analyzer/test/src/diagnostics/missing_override_of_must_be_overridden_test.dart b/pkg/analyzer/test/src/diagnostics/missing_override_of_must_be_overridden_test.dart
index de148c1..7fce416 100644
--- a/pkg/analyzer/test/src/diagnostics/missing_override_of_must_be_overridden_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/missing_override_of_must_be_overridden_test.dart
@@ -369,6 +369,41 @@
 ''');
   }
 
+  test_method_overriddenWithMethod_wildcardParams() async {
+    await assertNoErrorsInCode('''
+import 'package:meta/meta.dart';
+
+class C {
+  @mustBeOverridden
+  void m(int x) {}
+}
+
+class A extends C {
+  @override
+  void m(int _) {}
+}
+''');
+  }
+
+  test_method_overriddenWithMethod_wildcardParams_preWildcards() async {
+    await assertNoErrorsInCode('''
+// @dart = 3.4
+// (pre wildcard-variables)
+
+import 'package:meta/meta.dart';
+
+class C {
+  @mustBeOverridden
+  void m(int x) {}
+}
+
+class A extends C {
+  @override
+  void m(int _) {}
+}
+''');
+  }
+
   test_method_sealedClassIsImplicitlyAbstract() async {
     await assertNoErrorsInCode('''
 import 'package:meta/meta.dart';
diff --git a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
index 9b764a6..63f6cd9 100644
--- a/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/override_on_non_overriding_method_test.dart
@@ -52,6 +52,33 @@
 }''');
   }
 
+  test_class_extends_wildcardParams() async {
+    await assertNoErrorsInCode(r'''
+class A {
+  void foo(int x) {}
+}
+
+class B extends A {
+  @override
+  void foo(int _) {}
+}''');
+  }
+
+  test_class_extends_wildcardParams_preWildCards() async {
+    await assertNoErrorsInCode(r'''
+// @dart = 3.4
+// (pre wildcard-variables)
+
+class A {
+  void foo(int x) {}
+}
+
+class B extends A {
+  @override
+  void foo(int _) {}
+}''');
+  }
+
   test_class_implements() async {
     await assertNoErrorsInCode(r'''
 class A {