blob: 5370148f7701afd8bfb9b39e59cc314b6751019e [file] [log] [blame]
library /*isNonNullableByDefault*/;
//
// Problems in library:
//
// pkg/front_end/testcases/nnbd/issue42758.dart:7:17: Warning: Operand of null-aware operation '...?' has type 'Never' which excludes null.
// var l2 = [...?n1];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:8:16: Error: Can't spread a value with static type 'Never?'.
// var l3 = [...n2];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:10:16: Error: Can't spread a value with static type 'Null'.
// var l5 = [...n3];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:13:17: Warning: Operand of null-aware operation '...?' has type 'Never' which excludes null.
// var s2 = {...?n1, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:14:16: Error: Can't spread a value with static type 'Never?'.
// var s3 = {...n2, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:16:16: Error: Can't spread a value with static type 'Null'.
// var s5 = {...n3, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:19:17: Warning: Operand of null-aware operation '...?' has type 'Never' which excludes null.
// var m2 = {...?n1, n1: n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:20:16: Error: Can't spread a value with static type 'Never?'.
// var m3 = {...n2, n1: n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:22:16: Error: Can't spread a value with static type 'Null'.
// var m5 = {...n3, n1: n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:29:17: Warning: Operand of null-aware operation '...?' has type 'N1' which excludes null.
// var l2 = [...?n1];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:30:16: Error: Can't spread a value with static type 'N2'.
// var l3 = [...n2];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:32:16: Error: Can't spread a value with static type 'N3'.
// var l5 = [...n3];
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:35:17: Warning: Operand of null-aware operation '...?' has type 'N1' which excludes null.
// var s2 = {...?n1, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:36:16: Error: Can't spread a value with static type 'N2'.
// var s3 = {...n2, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:38:16: Error: Can't spread a value with static type 'N3'.
// var s5 = {...n3, n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:41:17: Warning: Operand of null-aware operation '...?' has type 'N1' which excludes null.
// var m2 = {...?n1, n1: n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:42:16: Error: Can't spread a value with static type 'N2'.
// var m3 = {...n2, n1: n1};
// ^
//
// pkg/front_end/testcases/nnbd/issue42758.dart:44:16: Error: Can't spread a value with static type 'N3'.
// var m5 = {...n3, n1: n1};
// ^
//
import self as self;
import "dart:core" as core;
import "dart:collection" as col;
static method test1(Never n1, Never? n2, Null n3) dynamic {
core::List<Never> l1 = block {
final core::List<Never> #t1 = core::List::of<Never>(n1);
} =>#t1;
core::List<Never> l2 = block {
final core::List<Never> #t2 = <Never>[];
final core::Iterable<Never>? #t3 = n1;
if(!#t3.{core::Object::==}(null))
#t2.{core::List::addAll}{Invariant}(#t3{core::Iterable<Never>});
} =>#t2;
core::List<dynamic> l3 = <dynamic>[invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:8:16: Error: Can't spread a value with static type 'Never?'.
var l3 = [...n2];
^"];
core::List<Never> l4 = block {
final core::List<Never> #t4 = <Never>[];
final core::Iterable<Never>? #t5 = n2;
if(!#t5.{core::Object::==}(null))
#t4.{core::List::addAll}{Invariant}(#t5{core::Iterable<Never>});
} =>#t4;
core::List<dynamic> l5 = <dynamic>[invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:10:16: Error: Can't spread a value with static type 'Null'.
var l5 = [...n3];
^"];
core::List<Never> l6 = block {
final core::List<Never> #t6 = <Never>[];
final core::Iterable<Never>? #t7 = n3;
if(!#t7.{core::Object::==}(null))
#t6.{core::List::addAll}{Invariant}(#t7{core::Iterable<Never>});
} =>#t6;
core::Set<Never> s1 = block {
final core::Set<Never> #t8 = col::LinkedHashSet::of<Never>(n1);
#t8.{core::Set::add}{Invariant}(n1);
} =>#t8;
core::Set<Never> s2 = block {
final core::Set<Never> #t9 = col::LinkedHashSet::•<Never>();
final core::Iterable<Never>? #t10 = n1;
if(!#t10.{core::Object::==}(null))
#t9.{core::Set::addAll}{Invariant}(#t10{core::Iterable<Never>});
#t9.{core::Set::add}{Invariant}(n1);
} =>#t9;
core::Set<dynamic> s3 = block {
final core::Set<dynamic> #t11 = col::LinkedHashSet::•<dynamic>();
#t11.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:14:16: Error: Can't spread a value with static type 'Never?'.
var s3 = {...n2, n1};
^");
#t11.{core::Set::add}{Invariant}(n1);
} =>#t11;
core::Set<Never> s4 = block {
final core::Set<Never> #t12 = col::LinkedHashSet::•<Never>();
final core::Iterable<Never>? #t13 = n2;
if(!#t13.{core::Object::==}(null))
#t12.{core::Set::addAll}{Invariant}(#t13{core::Iterable<Never>});
#t12.{core::Set::add}{Invariant}(n1);
} =>#t12;
core::Set<dynamic> s5 = block {
final core::Set<dynamic> #t14 = col::LinkedHashSet::•<dynamic>();
#t14.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:16:16: Error: Can't spread a value with static type 'Null'.
var s5 = {...n3, n1};
^");
#t14.{core::Set::add}{Invariant}(n1);
} =>#t14;
core::Set<Never> s6 = block {
final core::Set<Never> #t15 = col::LinkedHashSet::•<Never>();
final core::Iterable<Never>? #t16 = n3;
if(!#t16.{core::Object::==}(null))
#t15.{core::Set::addAll}{Invariant}(#t16{core::Iterable<Never>});
#t15.{core::Set::add}{Invariant}(n1);
} =>#t15;
core::Map<Never, Never> m1 = block {
final core::Map<Never, Never> #t17 = <Never, Never>{};
for (final core::MapEntry<Never, Never> #t18 in n1.{core::Map::entries})
#t17.{core::Map::[]=}{Invariant}(#t18.{core::MapEntry::key}, #t18.{core::MapEntry::value});
#t17.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t17;
core::Map<Never, Never> m2 = block {
final core::Map<Never, Never> #t19 = <Never, Never>{};
final core::Map<Never, Never>? #t20 = n1;
if(!#t20.{core::Object::==}(null))
for (final core::MapEntry<Never, Never> #t21 in #t20{core::Map<Never, Never>}.{core::Map::entries})
#t19.{core::Map::[]=}{Invariant}(#t21.{core::MapEntry::key}, #t21.{core::MapEntry::value});
#t19.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t19;
core::Map<dynamic, dynamic> m3 = <dynamic, dynamic>{invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:20:16: Error: Can't spread a value with static type 'Never?'.
var m3 = {...n2, n1: n1};
^": null, n1: n1};
core::Map<Never, Never> m4 = block {
final core::Map<Never, Never> #t22 = <Never, Never>{};
final core::Map<Never, Never>? #t23 = n2;
if(!#t23.{core::Object::==}(null))
for (final core::MapEntry<Never, Never> #t24 in #t23{core::Map<Never, Never>}.{core::Map::entries})
#t22.{core::Map::[]=}{Invariant}(#t24.{core::MapEntry::key}, #t24.{core::MapEntry::value});
#t22.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t22;
core::Map<dynamic, dynamic> m5 = <dynamic, dynamic>{invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:22:16: Error: Can't spread a value with static type 'Null'.
var m5 = {...n3, n1: n1};
^": null, n1: n1};
core::Map<Never, Never> m6 = block {
final core::Map<Never, Never> #t25 = <Never, Never>{};
final core::Map<Never, Never>? #t26 = n3;
if(!#t26.{core::Object::==}(null))
for (final core::MapEntry<Never, Never> #t27 in #t26{core::Map<Never, Never>}.{core::Map::entries})
#t25.{core::Map::[]=}{Invariant}(#t27.{core::MapEntry::key}, #t27.{core::MapEntry::value});
#t25.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t25;
}
static method test2<N1 extends Never = Never, N2 extends Never? = Never?, N3 extends Null = Null>(self::test2::N1 n1, self::test2::N2% n2, self::test2::N3% n3) → dynamic {
core::List<Never> l1 = block {
final core::List<Never> #t28 = core::List::of<Never>(n1);
} =>#t28;
core::List<Never> l2 = block {
final core::List<Never> #t29 = <Never>[];
final core::Iterable<Never>? #t30 = n1;
if(!#t30.{core::Object::==}(null))
#t29.{core::List::addAll}{Invariant}(#t30{core::Iterable<Never>});
} =>#t29;
core::List<dynamic> l3 = <dynamic>[invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:30:16: Error: Can't spread a value with static type 'N2'.
var l3 = [...n2];
^"];
core::List<Never> l4 = block {
final core::List<Never> #t31 = <Never>[];
final core::Iterable<Never>? #t32 = n2;
if(!#t32.{core::Object::==}(null))
#t31.{core::List::addAll}{Invariant}(#t32{core::Iterable<Never>});
} =>#t31;
core::List<dynamic> l5 = <dynamic>[invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:32:16: Error: Can't spread a value with static type 'N3'.
var l5 = [...n3];
^"];
core::List<Never> l6 = block {
final core::List<Never> #t33 = <Never>[];
final core::Iterable<Never>? #t34 = n3;
if(!#t34.{core::Object::==}(null))
#t33.{core::List::addAll}{Invariant}(#t34{core::Iterable<Never>});
} =>#t33;
core::Set<self::test2::N1> s1 = block {
final core::Set<self::test2::N1> #t35 = col::LinkedHashSet::of<self::test2::N1>(n1);
#t35.{core::Set::add}{Invariant}(n1);
} =>#t35;
core::Set<self::test2::N1> s2 = block {
final core::Set<self::test2::N1> #t36 = col::LinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t37 = n1;
if(!#t37.{core::Object::==}(null))
#t36.{core::Set::addAll}{Invariant}(#t37{core::Iterable<self::test2::N1>});
#t36.{core::Set::add}{Invariant}(n1);
} =>#t36;
core::Set<dynamic> s3 = block {
final core::Set<dynamic> #t38 = col::LinkedHashSet::•<dynamic>();
#t38.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:36:16: Error: Can't spread a value with static type 'N2'.
var s3 = {...n2, n1};
^");
#t38.{core::Set::add}{Invariant}(n1);
} =>#t38;
core::Set<self::test2::N1> s4 = block {
final core::Set<self::test2::N1> #t39 = col::LinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t40 = n2;
if(!#t40.{core::Object::==}(null))
#t39.{core::Set::addAll}{Invariant}(#t40{core::Iterable<self::test2::N1>});
#t39.{core::Set::add}{Invariant}(n1);
} =>#t39;
core::Set<dynamic> s5 = block {
final core::Set<dynamic> #t41 = col::LinkedHashSet::•<dynamic>();
#t41.{core::Set::add}{Invariant}(invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:38:16: Error: Can't spread a value with static type 'N3'.
var s5 = {...n3, n1};
^");
#t41.{core::Set::add}{Invariant}(n1);
} =>#t41;
core::Set<self::test2::N1> s6 = block {
final core::Set<self::test2::N1> #t42 = col::LinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t43 = n3;
if(!#t43.{core::Object::==}(null))
#t42.{core::Set::addAll}{Invariant}(#t43{core::Iterable<self::test2::N1>});
#t42.{core::Set::add}{Invariant}(n1);
} =>#t42;
core::Map<self::test2::N1, self::test2::N1> m1 = block {
final core::Map<self::test2::N1, self::test2::N1> #t44 = <self::test2::N1, self::test2::N1>{};
for (final core::MapEntry<self::test2::N1, self::test2::N1> #t45 in n1.{core::Map::entries})
#t44.{core::Map::[]=}{Invariant}(#t45.{core::MapEntry::key}, #t45.{core::MapEntry::value});
#t44.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t44;
core::Map<self::test2::N1, self::test2::N1> m2 = block {
final core::Map<self::test2::N1, self::test2::N1> #t46 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t47 = n1;
if(!#t47.{core::Object::==}(null))
for (final core::MapEntry<self::test2::N1, self::test2::N1> #t48 in #t47{core::Map<self::test2::N1, self::test2::N1>}.{core::Map::entries})
#t46.{core::Map::[]=}{Invariant}(#t48.{core::MapEntry::key}, #t48.{core::MapEntry::value});
#t46.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t46;
core::Map<dynamic, dynamic> m3 = <dynamic, dynamic>{invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:42:16: Error: Can't spread a value with static type 'N2'.
var m3 = {...n2, n1: n1};
^": null, n1: n1};
core::Map<self::test2::N1, self::test2::N1> m4 = block {
final core::Map<self::test2::N1, self::test2::N1> #t49 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t50 = n2;
if(!#t50.{core::Object::==}(null))
for (final core::MapEntry<self::test2::N1, self::test2::N1> #t51 in #t50{core::Map<self::test2::N1, self::test2::N1>}.{core::Map::entries})
#t49.{core::Map::[]=}{Invariant}(#t51.{core::MapEntry::key}, #t51.{core::MapEntry::value});
#t49.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t49;
core::Map<dynamic, dynamic> m5 = <dynamic, dynamic>{invalid-expression "pkg/front_end/testcases/nnbd/issue42758.dart:44:16: Error: Can't spread a value with static type 'N3'.
var m5 = {...n3, n1: n1};
^": null, n1: n1};
core::Map<self::test2::N1, self::test2::N1> m6 = block {
final core::Map<self::test2::N1, self::test2::N1> #t52 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t53 = n3;
if(!#t53.{core::Object::==}(null))
for (final core::MapEntry<self::test2::N1, self::test2::N1> #t54 in #t53{core::Map<self::test2::N1, self::test2::N1>}.{core::Map::entries})
#t52.{core::Map::[]=}{Invariant}(#t54.{core::MapEntry::key}, #t54.{core::MapEntry::value});
#t52.{core::Map::[]=}{Invariant}(n1, n1);
} =>#t52;
}
static method main() → dynamic {}