blob: ec83945daadae889061b52e1edb5d3a262f5f597 [file] [log] [blame]
library test /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
abstract class Test1a extends core::Object {
synthetic constructor •() self::Test1a
: super core::Object::•()
;
abstract operator [](core::String s) core::int;
abstract operator []=(core::String s, core::int v) void;
method test() void {
core::int v1 = let final core::String #t1 = "x" in let final core::int #t2 = self::getInt() in let final void #t3 = this.{self::Test1a::[]=}(#t1, #t2){(core::String, core::int) → void} in #t2;
core::int v7 = let final core::String #t4 = "x" in let final core::int #t5 = this.{self::Test1a::[]}(#t4){(core::String) → core::int}.{core::num::+}(self::getInt()){(core::num) → core::int} in let final void #t6 = this.{self::Test1a::[]=}(#t4, #t5){(core::String, core::int) → void} in #t5;
core::int v10 = let final core::String #t7 = "x" in let final core::int #t8 = this.{self::Test1a::[]}(#t7){(core::String) → core::int}.{core::num::+}(1){(core::num) → core::int} in let final void #t9 = this.{self::Test1a::[]=}(#t7, #t8){(core::String, core::int) → void} in #t8;
core::int v11 = let final core::String #t10 = "x" in let final core::int #t11 = this.{self::Test1a::[]}(#t10){(core::String) → core::int} in let final void #t12 = this.{self::Test1a::[]=}(#t10, #t11.{core::num::+}(1){(core::num) → core::int}){(core::String, core::int) → void} in #t11;
}
}
abstract class Test1b extends core::Object {
synthetic constructor •() self::Test1b
: super core::Object::•()
;
abstract operator [](core::String s) core::int?;
abstract operator []=(core::String s, core::int? v) void;
method test() void {
core::int v4 = let final core::String #t13 = "x" in let final core::int? #t14 = this.{self::Test1b::[]}(#t13){(core::String) → core::int?} in #t14 == null ?{core::int} let final core::int #t15 = self::getInt() in let final void #t16 = this.{self::Test1b::[]=}(#t13, #t15){(core::String, core::int?) → void} in #t15 : #t14{core::int};
}
}
abstract class Test2a extends core::Object {
synthetic constructor •() self::Test2a
: super core::Object::•()
;
abstract operator [](core::String s) core::int;
abstract operator []=(core::String s, core::num v) void;
method test() void {
core::int v1 = let final core::String #t17 = "x" in let final core::int #t18 = self::getInt() in let final void #t19 = this.{self::Test2a::[]=}(#t17, #t18){(core::String, core::num) → void} in #t18;
core::num v2 = let final core::String #t20 = "x" in let final core::num #t21 = self::getNum() in let final void #t22 = this.{self::Test2a::[]=}(#t20, #t21){(core::String, core::num) → void} in #t21;
core::double v3 = let final core::String #t23 = "x" in let final core::double #t24 = self::getDouble() in let final void #t25 = this.{self::Test2a::[]=}(#t23, #t24){(core::String, core::num) → void} in #t24;
core::int v7 = let final core::String #t26 = "x" in let final core::int #t27 = this.{self::Test2a::[]}(#t26){(core::String) → core::int}.{core::num::+}(self::getInt()){(core::num) → core::int} in let final void #t28 = this.{self::Test2a::[]=}(#t26, #t27){(core::String, core::num) → void} in #t27;
core::num v8 = let final core::String #t29 = "x" in let final core::num #t30 = this.{self::Test2a::[]}(#t29){(core::String) → core::int}.{core::num::+}(self::getNum()){(core::num) → core::num} in let final void #t31 = this.{self::Test2a::[]=}(#t29, #t30){(core::String, core::num) → void} in #t30;
core::double v9 = let final core::String #t32 = "x" in let final core::double #t33 = this.{self::Test2a::[]}(#t32){(core::String) → core::int}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t34 = this.{self::Test2a::[]=}(#t32, #t33){(core::String, core::num) → void} in #t33;
core::int v10 = let final core::String #t35 = "x" in let final core::int #t36 = this.{self::Test2a::[]}(#t35){(core::String) → core::int}.{core::num::+}(1){(core::num) → core::int} in let final void #t37 = this.{self::Test2a::[]=}(#t35, #t36){(core::String, core::num) → void} in #t36;
core::int v11 = let final core::String #t38 = "x" in let final core::int #t39 = this.{self::Test2a::[]}(#t38){(core::String) → core::int} in let final void #t40 = this.{self::Test2a::[]=}(#t38, #t39.{core::num::+}(1){(core::num) → core::int}){(core::String, core::num) → void} in #t39;
}
}
abstract class Test2b extends core::Object {
synthetic constructor •() self::Test2b
: super core::Object::•()
;
abstract operator [](core::String s) core::int?;
abstract operator []=(core::String s, core::num? v) void;
method test() void {
core::int v4 = let final core::String #t41 = "x" in let final core::int? #t42 = this.{self::Test2b::[]}(#t41){(core::String) → core::int?} in #t42 == null ?{core::int} let final core::int #t43 = self::getInt() in let final void #t44 = this.{self::Test2b::[]=}(#t41, #t43){(core::String, core::num?) → void} in #t43 : #t42{core::int};
core::num v5 = let final core::String #t45 = "x" in let final core::int? #t46 = this.{self::Test2b::[]}(#t45){(core::String) → core::int?} in #t46 == null ?{core::num} let final core::num #t47 = self::getNum() in let final void #t48 = this.{self::Test2b::[]=}(#t45, #t47){(core::String, core::num?) → void} in #t47 : #t46{core::int};
core::num v6 = let final core::String #t49 = "x" in let final core::int? #t50 = this.{self::Test2b::[]}(#t49){(core::String) → core::int?} in #t50 == null ?{core::num} let final core::double #t51 = self::getDouble() in let final void #t52 = this.{self::Test2b::[]=}(#t49, #t51){(core::String, core::num?) → void} in #t51 : #t50{core::int};
}
}
abstract class Test3a extends core::Object {
synthetic constructor •() self::Test3a
: super core::Object::•()
;
abstract operator [](core::String s) core::int;
abstract operator []=(core::String s, core::double v) void;
method test() void {
core::double v3 = let final core::String #t53 = "x" in let final core::double #t54 = self::getDouble() in let final void #t55 = this.{self::Test3a::[]=}(#t53, #t54){(core::String, core::double) → void} in #t54;
core::double v9 = let final core::String #t56 = "x" in let final core::double #t57 = this.{self::Test3a::[]}(#t56){(core::String) → core::int}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t58 = this.{self::Test3a::[]=}(#t56, #t57){(core::String, core::double) → void} in #t57;
core::double v10 = let final core::String #t59 = "x" in let final core::double #t60 = this.{self::Test3a::[]}(#t59){(core::String) → core::int}.{core::num::+}(1.0){(core::num) → core::double} in let final void #t61 = this.{self::Test3a::[]=}(#t59, #t60){(core::String, core::double) → void} in #t60;
core::int v11 = let final core::String #t62 = "x" in let final core::int #t63 = this.{self::Test3a::[]}(#t62){(core::String) → core::int} in let final void #t64 = this.{self::Test3a::[]=}(#t62, #t63.{core::num::+}(1.0){(core::num) → core::double}){(core::String, core::double) → void} in #t63;
}
}
abstract class Test3b extends core::Object {
synthetic constructor •() self::Test3b
: super core::Object::•()
;
abstract operator [](core::String s) core::int?;
abstract operator []=(core::String s, core::double? v) void;
method test() void {
core::num v6 = let final core::String #t65 = "x" in let final core::int? #t66 = this.{self::Test3b::[]}(#t65){(core::String) → core::int?} in #t66 == null ?{core::num} let final core::double #t67 = self::getDouble() in let final void #t68 = this.{self::Test3b::[]=}(#t65, #t67){(core::String, core::double?) → void} in #t67 : #t66{core::int};
}
}
abstract class Test4a extends core::Object {
synthetic constructor •() self::Test4a
: super core::Object::•()
;
abstract operator [](core::String s) core::num;
abstract operator []=(core::String s, core::int v) void;
method test() void {
core::int v1 = let final core::String #t69 = "x" in let final core::int #t70 = self::getInt() in let final void #t71 = this.{self::Test4a::[]=}(#t69, #t70){(core::String, core::int) → void} in #t70;
}
}
abstract class Test4b extends core::Object {
synthetic constructor •() self::Test4b
: super core::Object::•()
;
abstract operator [](core::String s) core::num?;
abstract operator []=(core::String s, core::int? v) void;
method test() void {
core::num v4 = let final core::String #t72 = "x" in let final core::num? #t73 = this.{self::Test4b::[]}(#t72){(core::String) → core::num?} in #t73 == null ?{core::num} let final core::int #t74 = self::getInt() in let final void #t75 = this.{self::Test4b::[]=}(#t72, #t74){(core::String, core::int?) → void} in #t74 : #t73{core::num};
}
}
abstract class Test5a extends core::Object {
synthetic constructor •() self::Test5a
: super core::Object::•()
;
abstract operator [](core::String s) core::num;
abstract operator []=(core::String s, core::num v) void;
method test() void {
core::int v1 = let final core::String #t76 = "x" in let final core::int #t77 = self::getInt() in let final void #t78 = this.{self::Test5a::[]=}(#t76, #t77){(core::String, core::num) → void} in #t77;
core::num v2 = let final core::String #t79 = "x" in let final core::num #t80 = self::getNum() in let final void #t81 = this.{self::Test5a::[]=}(#t79, #t80){(core::String, core::num) → void} in #t80;
core::double v3 = let final core::String #t82 = "x" in let final core::double #t83 = self::getDouble() in let final void #t84 = this.{self::Test5a::[]=}(#t82, #t83){(core::String, core::num) → void} in #t83;
core::num v7 = let final core::String #t85 = "x" in let final core::num #t86 = this.{self::Test5a::[]}(#t85){(core::String) → core::num}.{core::num::+}(self::getInt()){(core::num) → core::num} in let final void #t87 = this.{self::Test5a::[]=}(#t85, #t86){(core::String, core::num) → void} in #t86;
core::num v8 = let final core::String #t88 = "x" in let final core::num #t89 = this.{self::Test5a::[]}(#t88){(core::String) → core::num}.{core::num::+}(self::getNum()){(core::num) → core::num} in let final void #t90 = this.{self::Test5a::[]=}(#t88, #t89){(core::String, core::num) → void} in #t89;
core::double v9 = let final core::String #t91 = "x" in let final core::double #t92 = this.{self::Test5a::[]}(#t91){(core::String) → core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t93 = this.{self::Test5a::[]=}(#t91, #t92){(core::String, core::num) → void} in #t92;
core::num v10 = let final core::String #t94 = "x" in let final core::num #t95 = this.{self::Test5a::[]}(#t94){(core::String) → core::num}.{core::num::+}(1){(core::num) → core::num} in let final void #t96 = this.{self::Test5a::[]=}(#t94, #t95){(core::String, core::num) → void} in #t95;
core::num v11 = let final core::String #t97 = "x" in let final core::num #t98 = this.{self::Test5a::[]}(#t97){(core::String) → core::num} in let final void #t99 = this.{self::Test5a::[]=}(#t97, #t98.{core::num::+}(1){(core::num) → core::num}){(core::String, core::num) → void} in #t98;
}
}
abstract class Test5b extends core::Object {
synthetic constructor •() self::Test5b
: super core::Object::•()
;
abstract operator [](core::String s) core::num?;
abstract operator []=(core::String s, core::num? v) void;
method test() void {
core::num v4 = let final core::String #t100 = "x" in let final core::num? #t101 = this.{self::Test5b::[]}(#t100){(core::String) → core::num?} in #t101 == null ?{core::num} let final core::int #t102 = self::getInt() in let final void #t103 = this.{self::Test5b::[]=}(#t100, #t102){(core::String, core::num?) → void} in #t102 : #t101{core::num};
core::num v5 = let final core::String #t104 = "x" in let final core::num? #t105 = this.{self::Test5b::[]}(#t104){(core::String) → core::num?} in #t105 == null ?{core::num} let final core::num #t106 = self::getNum() in let final void #t107 = this.{self::Test5b::[]=}(#t104, #t106){(core::String, core::num?) → void} in #t106 : #t105{core::num};
core::num v6 = let final core::String #t108 = "x" in let final core::num? #t109 = this.{self::Test5b::[]}(#t108){(core::String) → core::num?} in #t109 == null ?{core::num} let final core::double #t110 = self::getDouble() in let final void #t111 = this.{self::Test5b::[]=}(#t108, #t110){(core::String, core::num?) → void} in #t110 : #t109{core::num};
}
}
abstract class Test6a extends core::Object {
synthetic constructor •() self::Test6a
: super core::Object::•()
;
abstract operator [](core::String s) core::num;
abstract operator []=(core::String s, core::double v) void;
method test() void {
core::double v3 = let final core::String #t112 = "x" in let final core::double #t113 = self::getDouble() in let final void #t114 = this.{self::Test6a::[]=}(#t112, #t113){(core::String, core::double) → void} in #t113;
core::double v9 = let final core::String #t115 = "x" in let final core::double #t116 = this.{self::Test6a::[]}(#t115){(core::String) → core::num}.{core::num::+}(self::getDouble()){(core::num) → core::double} in let final void #t117 = this.{self::Test6a::[]=}(#t115, #t116){(core::String, core::double) → void} in #t116;
core::double v10 = let final core::String #t118 = "x" in let final core::double #t119 = this.{self::Test6a::[]}(#t118){(core::String) → core::num}.{core::num::+}(1.0){(core::num) → core::double} in let final void #t120 = this.{self::Test6a::[]=}(#t118, #t119){(core::String, core::double) → void} in #t119;
core::num v11 = let final core::String #t121 = "x" in let final core::num #t122 = this.{self::Test6a::[]}(#t121){(core::String) → core::num} in let final void #t123 = this.{self::Test6a::[]=}(#t121, #t122.{core::num::+}(1.0){(core::num) → core::double}){(core::String, core::double) → void} in #t122;
}
}
abstract class Test6b extends core::Object {
synthetic constructor •() self::Test6b
: super core::Object::•()
;
abstract operator [](core::String s) core::num?;
abstract operator []=(core::String s, core::double? v) void;
method test() void {
core::num v6 = let final core::String #t124 = "x" in let final core::num? #t125 = this.{self::Test6b::[]}(#t124){(core::String) → core::num?} in #t125 == null ?{core::num} let final core::double #t126 = self::getDouble() in let final void #t127 = this.{self::Test6b::[]=}(#t124, #t126){(core::String, core::double?) → void} in #t126 : #t125{core::num};
}
}
abstract class Test7a extends core::Object {
synthetic constructor •() self::Test7a
: super core::Object::•()
;
abstract operator [](core::String s) core::double;
abstract operator []=(core::String s, core::int v) void;
method test() void {
core::int v1 = let final core::String #t128 = "x" in let final core::int #t129 = self::getInt() in let final void #t130 = this.{self::Test7a::[]=}(#t128, #t129){(core::String, core::int) → void} in #t129;
}
}
abstract class Test7b extends core::Object {
synthetic constructor •() self::Test7b
: super core::Object::•()
;
abstract operator [](core::String s) core::double?;
abstract operator []=(core::String s, core::int? v) void;
method test() void {
core::num v4 = let final core::String #t131 = "x" in let final core::double? #t132 = this.{self::Test7b::[]}(#t131){(core::String) → core::double?} in #t132 == null ?{core::num} let final core::int #t133 = self::getInt() in let final void #t134 = this.{self::Test7b::[]=}(#t131, #t133){(core::String, core::int?) → void} in #t133 : #t132{core::double};
}
}
abstract class Test8a extends core::Object {
synthetic constructor •() self::Test8a
: super core::Object::•()
;
abstract operator [](core::String s) core::double;
abstract operator []=(core::String s, core::num v) void;
method test() void {
core::int v1 = let final core::String #t135 = "x" in let final core::int #t136 = self::getInt() in let final void #t137 = this.{self::Test8a::[]=}(#t135, #t136){(core::String, core::num) → void} in #t136;
core::num v2 = let final core::String #t138 = "x" in let final core::num #t139 = self::getNum() in let final void #t140 = this.{self::Test8a::[]=}(#t138, #t139){(core::String, core::num) → void} in #t139;
core::double v3 = let final core::String #t141 = "x" in let final core::double #t142 = self::getDouble() in let final void #t143 = this.{self::Test8a::[]=}(#t141, #t142){(core::String, core::num) → void} in #t142;
core::double v7 = let final core::String #t144 = "x" in let final core::double #t145 = this.{self::Test8a::[]}(#t144){(core::String) → core::double}.{core::double::+}(self::getInt()){(core::num) → core::double} in let final void #t146 = this.{self::Test8a::[]=}(#t144, #t145){(core::String, core::num) → void} in #t145;
core::double v8 = let final core::String #t147 = "x" in let final core::double #t148 = this.{self::Test8a::[]}(#t147){(core::String) → core::double}.{core::double::+}(self::getNum()){(core::num) → core::double} in let final void #t149 = this.{self::Test8a::[]=}(#t147, #t148){(core::String, core::num) → void} in #t148;
core::double v9 = let final core::String #t150 = "x" in let final core::double #t151 = this.{self::Test8a::[]}(#t150){(core::String) → core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double} in let final void #t152 = this.{self::Test8a::[]=}(#t150, #t151){(core::String, core::num) → void} in #t151;
core::double v10 = let final core::String #t153 = "x" in let final core::double #t154 = this.{self::Test8a::[]}(#t153){(core::String) → core::double}.{core::double::+}(1){(core::num) → core::double} in let final void #t155 = this.{self::Test8a::[]=}(#t153, #t154){(core::String, core::num) → void} in #t154;
core::double v11 = let final core::String #t156 = "x" in let final core::double #t157 = this.{self::Test8a::[]}(#t156){(core::String) → core::double} in let final void #t158 = this.{self::Test8a::[]=}(#t156, #t157.{core::double::+}(1){(core::num) → core::double}){(core::String, core::num) → void} in #t157;
}
}
abstract class Test8b extends core::Object {
synthetic constructor •() self::Test8b
: super core::Object::•()
;
abstract operator [](core::String s) core::double?;
abstract operator []=(core::String s, core::num? v) void;
method test() void {
core::num v4 = let final core::String #t159 = "x" in let final core::double? #t160 = this.{self::Test8b::[]}(#t159){(core::String) → core::double?} in #t160 == null ?{core::num} let final core::int #t161 = self::getInt() in let final void #t162 = this.{self::Test8b::[]=}(#t159, #t161){(core::String, core::num?) → void} in #t161 : #t160{core::double};
core::num v5 = let final core::String #t163 = "x" in let final core::double? #t164 = this.{self::Test8b::[]}(#t163){(core::String) → core::double?} in #t164 == null ?{core::num} let final core::num #t165 = self::getNum() in let final void #t166 = this.{self::Test8b::[]=}(#t163, #t165){(core::String, core::num?) → void} in #t165 : #t164{core::double};
core::double v6 = let final core::String #t167 = "x" in let final core::double? #t168 = this.{self::Test8b::[]}(#t167){(core::String) → core::double?} in #t168 == null ?{core::double} let final core::double #t169 = self::getDouble() in let final void #t170 = this.{self::Test8b::[]=}(#t167, #t169){(core::String, core::num?) → void} in #t169 : #t168{core::double};
}
}
abstract class Test9a extends core::Object {
synthetic constructor •() self::Test9a
: super core::Object::•()
;
abstract operator [](core::String s) core::double;
abstract operator []=(core::String s, core::double v) void;
method test() void {
core::double v3 = let final core::String #t171 = "x" in let final core::double #t172 = self::getDouble() in let final void #t173 = this.{self::Test9a::[]=}(#t171, #t172){(core::String, core::double) → void} in #t172;
core::double v7 = let final core::String #t174 = "x" in let final core::double #t175 = this.{self::Test9a::[]}(#t174){(core::String) → core::double}.{core::double::+}(self::getInt()){(core::num) → core::double} in let final void #t176 = this.{self::Test9a::[]=}(#t174, #t175){(core::String, core::double) → void} in #t175;
core::double v8 = let final core::String #t177 = "x" in let final core::double #t178 = this.{self::Test9a::[]}(#t177){(core::String) → core::double}.{core::double::+}(self::getNum()){(core::num) → core::double} in let final void #t179 = this.{self::Test9a::[]=}(#t177, #t178){(core::String, core::double) → void} in #t178;
core::double v9 = let final core::String #t180 = "x" in let final core::double #t181 = this.{self::Test9a::[]}(#t180){(core::String) → core::double}.{core::double::+}(self::getDouble()){(core::num) → core::double} in let final void #t182 = this.{self::Test9a::[]=}(#t180, #t181){(core::String, core::double) → void} in #t181;
core::double v10 = let final core::String #t183 = "x" in let final core::double #t184 = this.{self::Test9a::[]}(#t183){(core::String) → core::double}.{core::double::+}(1){(core::num) → core::double} in let final void #t185 = this.{self::Test9a::[]=}(#t183, #t184){(core::String, core::double) → void} in #t184;
core::double v11 = let final core::String #t186 = "x" in let final core::double #t187 = this.{self::Test9a::[]}(#t186){(core::String) → core::double} in let final void #t188 = this.{self::Test9a::[]=}(#t186, #t187.{core::double::+}(1){(core::num) → core::double}){(core::String, core::double) → void} in #t187;
}
}
abstract class Test9b extends core::Object {
synthetic constructor •() self::Test9b
: super core::Object::•()
;
abstract operator [](core::String s) core::double?;
abstract operator []=(core::String s, core::double? v) void;
method test() void {
core::double v6 = let final core::String #t189 = "x" in let final core::double? #t190 = this.{self::Test9b::[]}(#t189){(core::String) → core::double?} in #t190 == null ?{core::double} let final core::double #t191 = self::getDouble() in let final void #t192 = this.{self::Test9b::[]=}(#t189, #t191){(core::String, core::double?) → void} in #t191 : #t190{core::double};
}
}
static method getInt() core::int
return 0;
static method getNum() core::num
return 0;
static method getDouble() core::double
return 0.0;
static method main() dynamic {}
Extra constant evaluation status:
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:17:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:20:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:20:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:23:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:23:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:26:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:26:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:36:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:36:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:45:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:47:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:49:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:52:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:52:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:55:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:55:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:59:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:59:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:62:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:62:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:65:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:65:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:75:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:75:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:78:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:78:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:81:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:81:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:90:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:94:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:94:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:97:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:97:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:100:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:100:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:110:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:110:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:119:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:129:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:129:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:138:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:140:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:142:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:145:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:145:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:148:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:148:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:152:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:152:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:155:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:155:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:158:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:158:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:168:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:168:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:171:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:171:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:174:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:174:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:183:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:187:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:187:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:190:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:190:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:193:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:193:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:203:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:203:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:212:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:222:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:222:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:231:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:233:57 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:235:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:239:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:239:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:243:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:243:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:247:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:247:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:250:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:250:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:254:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:254:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:264:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:264:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:267:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:267:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:270:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:270:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:279:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:283:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:283:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:287:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:287:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:291:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:291:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:294:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:294:9 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:298:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:298:13 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:308:60 -> StringConstant("x")
Evaluated: VariableGet @ org-dartlang-testcase:///infer_assign_to_index_this_upwards2.dart:308:60 -> StringConstant("x")
Extra constant evaluation: evaluated: 753, effectively constant: 103