Index: pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.expect |
diff --git a/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.expect b/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.expect |
new file mode 100644 |
index 0000000000000000000000000000000000000000..b748ab8efe7ef50f576a2c629ad33e2b3e87090a |
--- /dev/null |
+++ b/pkg/front_end/testcases/inference/infer_from_complex_expressions_if_outer_most_value_is_precise.dart.strong.expect |
@@ -0,0 +1,53 @@ |
+library test; |
+import self as self; |
+import "dart:core" as core; |
+ |
+class A extends core::Object { |
+ field core::int x = null; |
+ constructor •() → void |
+ : super core::Object::•() |
+ ; |
+ operator +(dynamic other) → self::B |
+ return null; |
+} |
+class B extends self::A { |
+ constructor •(dynamic ignore) → void |
+ : super self::A::•() |
+ ; |
+} |
+static field self::A a = new self::A::•(); |
+static field self::B b = new self::B::•(throw new core::NoSuchMethodError::_withType(null, #x, 33, <dynamic>[].toList(growable: false), <dynamic, dynamic>{}, null)); |
+static field core::List<dynamic> c1 = <dynamic>[throw new core::NoSuchMethodError::_withType(null, #x, 33, <dynamic>[].toList(growable: false), <dynamic, dynamic>{}, null)]; |
+static field core::List<dynamic> c2 = const <dynamic>[]; |
+static field core::Map<dynamic, dynamic> d = <dynamic, dynamic>{"a": "b"}; |
+static field self::A e = let final self::A #t1 = new self::A::•() in let final dynamic #t2 = #t1.{self::A::x} = 3 in #t1; |
+static field core::int f = 2.{core::num::+}(3); |
+static field core::int g = 3.{core::int::unary-}(); |
+static field self::B h = new self::A::•().{self::A::+}(3); |
+static field dynamic i = new self::A::•().unary-(); |
+static field self::B j = null as self::B; |
+static method test1() → dynamic { |
+ self::a = "hi"; |
+ self::a = new self::B::•(3); |
+ self::b = "hi"; |
+ self::b = new self::B::•(3); |
+ self::c1 = <dynamic>[]; |
+ self::c1 = <dynamic, dynamic>{}; |
+ self::c2 = <dynamic>[]; |
+ self::c2 = <dynamic, dynamic>{}; |
+ self::d = <dynamic, dynamic>{}; |
+ self::d = 3; |
+ self::e = new self::A::•(); |
+ self::e = <dynamic, dynamic>{}; |
+ self::f = 3; |
+ self::f = false; |
+ self::g = 1; |
+ self::g = false; |
+ self::h = false; |
+ self::h = new self::B::•("b"); |
+ self::i = false; |
+ self::j = new self::B::•("b"); |
+ self::j = false; |
+ self::j = <dynamic>[]; |
+} |
+static method main() → dynamic {} |