Fix for #434. Add another test for lexical resolution with conflicting extensions in a library
diff --git a/LanguageFeatures/Extension-methods/semantics_of_extension_members_lib.dart b/LanguageFeatures/Extension-methods/semantics_of_extension_members_lib.dart
new file mode 100644
index 0000000..9b6d6f3
--- /dev/null
+++ b/LanguageFeatures/Extension-methods/semantics_of_extension_members_lib.dart
@@ -0,0 +1,19 @@
+/*
+ * Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+ * for details. All rights reserved. Use of this source code is governed by a
+ * BSD-style license that can be found in the LICENSE file.
+ */
+/**
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=extension-methods
+library my_unary_number;
+
+extension MyUnaryNumber on List<Object> {
+  bool get isEven => length.isEven;
+  bool get isOdd => !isEven;
+}
+
+extension on List<Object> {
+  bool get isEven => true;
+}
diff --git a/LanguageFeatures/Extension-methods/semantics_of_extension_members_t06.dart b/LanguageFeatures/Extension-methods/semantics_of_extension_members_t06.dart
new file mode 100644
index 0000000..976e447
--- /dev/null
+++ b/LanguageFeatures/Extension-methods/semantics_of_extension_members_t06.dart
@@ -0,0 +1,28 @@
+/*
+ * Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+ * for details. All rights reserved. Use of this source code is governed by a
+ * BSD-style license that can be found in the LICENSE file.
+ */
+/**
+ * @assertion If an unqualified identifier lexically resolves to an extension
+ * method of the surrounding extension, then that identifier is not equivalent
+ * to this.id, rather the invocation is equivalent to an explicit invocation of
+ * that extension method on this (which we already know has a compatible type
+ * for the extension): Ext<T1,…,Tn>(this).id, where Ext is the surrounding
+ * extension and T1 through Tn are its type parameters, if any. The invocation
+ * works whether or not the names of the extension or parameters are actually
+ * accessible, it is not a syntactic rewrite.
+ *
+ * @description Check that extension member resolves to an extension method of
+ * the surrounding extension
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=extension-methods
+import "../../Utils/expect.dart";
+import "semantics_of_extension_members_lib.dart";
+
+main() {
+  List<int> list = [3, 1, 4];
+  Expect.isFalse(list.isEven);
+  Expect.isTrue(list.isOdd);
+}