#389. More NNBD static errors tests added
diff --git a/LanguageFeatures/nnbd/static_errors_A19_t01.dart b/LanguageFeatures/nnbd/static_errors_A19_t01.dart
new file mode 100644
index 0000000..b447dc2
--- /dev/null
+++ b/LanguageFeatures/nnbd/static_errors_A19_t01.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 It is an error if the object being iterated over by a for-in loop
+ * has a static type which is not dynamic, and is not a subtype of
+ * Iterable<dynamic>
+ *
+ * @description Check that it is an error if the object being iterated over by a
+ * for-in loop has a static type which is not dynamic, and is not a subtype of
+ * Iterable<dynamic>
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=non-nullable
+
+class C {
+}
+
+main() {
+  C? c = C();
+  List<C?> list = [C(), null, C()];
+  for (var o in new Object()) {}                //# 01: compile-time error
+  for (C? cc in list) {}                        //# 02: compile-time error
+  for (var o in [Object(), Object(), null]) {}  //# 03: compile-time error
+  for (var o in [Object(), C(), c]) {}          //# 04: compile-time error
+}
diff --git a/LanguageFeatures/nnbd/static_errors_A19_t02.dart b/LanguageFeatures/nnbd/static_errors_A19_t02.dart
new file mode 100644
index 0000000..4de2aac
--- /dev/null
+++ b/LanguageFeatures/nnbd/static_errors_A19_t02.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 It is an error if the object being iterated over by a for-in loop
+ * has a static type which is not dynamic, and is not a subtype of
+ * Iterable<dynamic>
+ *
+ * @description Check that it is no error if the object being iterated over by a
+ * for-in loop has a static type which is dynamic, or a subtype of
+ * Iterable<dynamic>
+ * @author sgrekhov@unipro.ru
+ */
+// SharedOptions=--enable-experiment=non-nullable
+
+class C {
+}
+
+main() {
+  C c = C();
+  dynamic d = [c, Object()];
+  List<C> list = [C(), C(), C()];
+  for (C cc in list) {}
+  for (var o in [Object(), Object()]) {}
+  for (var o in [Object(), C(), c]) {}
+}