fdc765faad
TEST=existing Change-Id: I0a8fdf09f742b55357411f12dc6164d4050bb83c Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/196283 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Dmitry Stefantsov <dmitryas@google.com>
159 lines
9.1 KiB
Plaintext
159 lines
9.1 KiB
Plaintext
library /*isNonNullableByDefault*/;
|
|
//
|
|
// Problems in library:
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:16:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...nullableMap, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:23:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...nullableList, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:29:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...nullableList, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:37:19: Error: Unexpected type 'X' of a map spread entry. Expected 'dynamic' or a Map.
|
|
// if (i > 0) ...x, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:38:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...y, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:48:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...x, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:48:19: Error: Unexpected type 'X' of a spread. Expected 'dynamic' or an Iterable.
|
|
// if (i > 0) ...x, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:49:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...y, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:53:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...x, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:53:19: Error: Unexpected type 'X' of a spread. Expected 'dynamic' or an Iterable.
|
|
// if (i > 0) ...x, // error
|
|
// ^
|
|
//
|
|
// pkg/front_end/testcases/nnbd/issue43256.dart:54:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
// if (i > 0) ...y, // error
|
|
// ^
|
|
//
|
|
import self as self;
|
|
import "dart:core" as core;
|
|
import "dart:collection" as col;
|
|
|
|
static field core::int i = 1;
|
|
static field core::Map<core::int, core::String>? nullableMap = <core::int, core::String>{1: "Let", 2: "it", 3: "be"};
|
|
static field core::List<core::int>? nullableList = core::_GrowableList::_literal3<core::int>(1, 2, 3);
|
|
static field dynamic dynamicMap = <core::int, core::String>{1: "Let", 2: "it", 3: "be"};
|
|
static field dynamic dynamicList = core::_GrowableList::_literal3<core::int>(1, 2, 3);
|
|
static field core::Map<dynamic, dynamic> map1 = block {
|
|
final core::Map<dynamic, dynamic> #t1 = <dynamic, dynamic>{};
|
|
if(self::i.{core::num::>}(0))
|
|
#t1.{core::Map::[]=}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:16:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...nullableMap, // error
|
|
^", null);
|
|
if(self::i.{core::num::>}(0)) {
|
|
core::Iterator<core::MapEntry<dynamic, dynamic>> :sync-for-iterator = (self::dynamicMap as{TypeError,ForDynamic,ForNonNullableByDefault} core::Map<dynamic, dynamic>).{core::Map::entries}.{core::Iterable::iterator};
|
|
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
|
|
final core::MapEntry<dynamic, dynamic> #t2 = :sync-for-iterator.{core::Iterator::current};
|
|
#t1.{core::Map::[]=}{Invariant}(#t2.{core::MapEntry::key}, #t2.{core::MapEntry::value});
|
|
}
|
|
}
|
|
if(self::i.{core::num::>}(0)) {
|
|
core::Iterator<core::MapEntry<core::int, core::String>> :sync-for-iterator = self::nullableMap!.{core::Map::entries}.{core::Iterable::iterator};
|
|
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
|
|
final core::MapEntry<dynamic, dynamic> #t3 = :sync-for-iterator.{core::Iterator::current};
|
|
#t1.{core::Map::[]=}{Invariant}(#t3.{core::MapEntry::key}, #t3.{core::MapEntry::value});
|
|
}
|
|
}
|
|
} =>#t1;
|
|
static field core::Set<dynamic> set1 = block {
|
|
final core::Set<dynamic> #t4 = new col::_CompactLinkedHashSet::•<dynamic>();
|
|
#t4.{core::Set::add}{Invariant}(0);
|
|
if(self::i.{core::num::>}(0))
|
|
#t4.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:23:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...nullableList, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t4.{core::Set::addAll}{Invariant}(self::dynamicList as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>);
|
|
if(self::i.{core::num::>}(0))
|
|
#t4.{core::Set::addAll}{Invariant}(self::nullableList!);
|
|
} =>#t4;
|
|
static field core::List<dynamic> list1 = block {
|
|
final core::List<dynamic> #t5 = core::_GrowableList::•<dynamic>(0);
|
|
if(self::i.{core::num::>}(0))
|
|
#t5.{core::List::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:29:17: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...nullableList, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t5.{core::List::addAll}{Invariant}(self::dynamicList as{TypeError,ForDynamic,ForNonNullableByDefault} core::Iterable<dynamic>);
|
|
if(self::i.{core::num::>}(0))
|
|
#t5.{core::List::addAll}{Invariant}(self::nullableList!);
|
|
} =>#t5;
|
|
static method testMap<X extends dynamic, Y extends core::Map<core::int, core::String>?, Z extends core::Map<core::int, core::String>>(self::testMap::X% x, self::testMap::Y% y, self::testMap::Z z) → dynamic {
|
|
core::Map<dynamic, dynamic> map2 = block {
|
|
final core::Map<dynamic, dynamic> #t6 = <dynamic, dynamic>{};
|
|
if(self::i.{core::num::>}(0))
|
|
#t6.{core::Map::[]=}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:37:19: Error: Unexpected type 'X' of a map spread entry. Expected 'dynamic' or a Map.
|
|
if (i > 0) ...x, // error
|
|
^", null);
|
|
if(self::i.{core::num::>}(0))
|
|
#t6.{core::Map::[]=}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:38:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...y, // error
|
|
^", null);
|
|
if(self::i.{core::num::>}(0)) {
|
|
core::Iterator<core::MapEntry<core::int, core::String>> :sync-for-iterator = z.{core::Map::entries}.{core::Iterable::iterator};
|
|
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
|
|
final core::MapEntry<dynamic, dynamic> #t7 = :sync-for-iterator.{core::Iterator::current};
|
|
#t6.{core::Map::[]=}{Invariant}(#t7.{core::MapEntry::key}, #t7.{core::MapEntry::value});
|
|
}
|
|
}
|
|
if(self::i.{core::num::>}(0)) {
|
|
core::Iterator<core::MapEntry<core::int, core::String>> :sync-for-iterator = y!.{core::Map::entries}.{core::Iterable::iterator};
|
|
for (; :sync-for-iterator.{core::Iterator::moveNext}(); ) {
|
|
final core::MapEntry<dynamic, dynamic> #t8 = :sync-for-iterator.{core::Iterator::current};
|
|
#t6.{core::Map::[]=}{Invariant}(#t8.{core::MapEntry::key}, #t8.{core::MapEntry::value});
|
|
}
|
|
}
|
|
} =>#t6;
|
|
}
|
|
static method testIterables<X extends dynamic, Y extends core::List<core::int>?, Z extends core::List<core::int>>(self::testIterables::X% x, self::testIterables::Y% y, self::testIterables::Z z) → dynamic {
|
|
core::Set<dynamic> set2 = block {
|
|
final core::Set<dynamic> #t9 = new col::_CompactLinkedHashSet::•<dynamic>();
|
|
#t9.{core::Set::add}{Invariant}(0);
|
|
if(self::i.{core::num::>}(0))
|
|
#t9.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:48:19: Error: Unexpected type 'X' of a spread. Expected 'dynamic' or an Iterable.
|
|
if (i > 0) ...x, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t9.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:49:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...y, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t9.{core::Set::addAll}{Invariant}(z);
|
|
} =>#t9;
|
|
core::List<dynamic> list2 = block {
|
|
final core::List<dynamic> #t10 = core::_GrowableList::•<dynamic>(0);
|
|
if(self::i.{core::num::>}(0))
|
|
#t10.{core::List::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:53:19: Error: Unexpected type 'X' of a spread. Expected 'dynamic' or an Iterable.
|
|
if (i > 0) ...x, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t10.{core::List::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue43256.dart:54:19: Error: An expression whose value can be 'null' must be null-checked before it can be dereferenced.
|
|
if (i > 0) ...y, // error
|
|
^");
|
|
if(self::i.{core::num::>}(0))
|
|
#t10.{core::List::addAll}{Invariant}(z);
|
|
} =>#t10;
|
|
}
|
|
static method main() → dynamic {}
|