Version 2.14.0-43.0.dev

Merge commit '50de84a3fb7664c7f23e48c8be85ef5d6914f4e9' into 'dev'
diff --git a/pkg/analyzer/lib/src/dart/resolver/lexical_lookup.dart b/pkg/analyzer/lib/src/dart/resolver/lexical_lookup.dart
index 63bc1cf..542fd5e 100644
--- a/pkg/analyzer/lib/src/dart/resolver/lexical_lookup.dart
+++ b/pkg/analyzer/lib/src/dart/resolver/lexical_lookup.dart
@@ -30,7 +30,7 @@
             requested: _resolver.toLegacyElement(scopeSetter),
           );
         }
-        if (!scopeGetter!.isInstanceMember) {
+        if (scopeGetter != null && !scopeGetter.isInstanceMember) {
           return LexicalLookupResult(
             recovery: _resolver.toLegacyElement(scopeGetter),
           );
@@ -41,6 +41,11 @@
             requested: _resolver.toLegacyElement(scopeGetter),
           );
         }
+        if (scopeSetter != null && !scopeSetter.isInstanceMember) {
+          return LexicalLookupResult(
+            recovery: _resolver.toLegacyElement(scopeSetter),
+          );
+        }
       }
     }
 
diff --git a/pkg/analyzer/test/src/diagnostics/assignment_to_final_test.dart b/pkg/analyzer/test/src/diagnostics/assignment_to_final_test.dart
index 0e78785..d45f72d 100644
--- a/pkg/analyzer/test/src/diagnostics/assignment_to_final_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/assignment_to_final_test.dart
@@ -52,6 +52,24 @@
     ]);
   }
 
+  test_simpleIdentifier_inheritedSetter_shadowedBy_topLevelGetter() async {
+    await assertErrorsInCode('''
+class A {
+  void set foo(int _) {}
+}
+
+int get foo => 0;
+
+class B extends A {
+  void bar() {
+    foo = 0;
+  }
+}
+''', [
+      error(CompileTimeErrorCode.ASSIGNMENT_TO_FINAL, 96, 3),
+    ]);
+  }
+
   test_simpleIdentifier_topLevelGetter() async {
     await assertErrorsInCode('''
 int get x => 0;
diff --git a/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart b/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
index 1c584a0..69cb215 100644
--- a/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
+++ b/pkg/analyzer/test/src/diagnostics/undefined_identifier_test.dart
@@ -133,6 +133,24 @@
     ]);
   }
 
+  test_inheritedGetter_shadowedBy_topLevelSetter() async {
+    await assertErrorsInCode('''
+class A {
+  int get foo => 0;
+}
+
+void set foo(int _) {}
+
+class B extends A {
+  void bar() {
+    foo;
+  }
+}
+''', [
+      error(CompileTimeErrorCode.UNDEFINED_IDENTIFIER, 96, 3),
+    ]);
+  }
+
   test_initializer() async {
     await assertErrorsInCode('''
 var a = b;
diff --git a/tools/VERSION b/tools/VERSION
index 46d1cb5..dd4adca 100644
--- a/tools/VERSION
+++ b/tools/VERSION
@@ -27,5 +27,5 @@
 MAJOR 2
 MINOR 14
 PATCH 0
-PRERELEASE 42
+PRERELEASE 43
 PRERELEASE_PATCH 0
\ No newline at end of file