blob: 6b2946291614c717c7124ede8535f4d46a8de140 [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 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t3 = n1;
if(!(#t3 == null))
#t2.{core::List::addAll}{Invariant}(#t3{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t2;
core::List<dynamic> l3 = core::_GrowableList::_literal1<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 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t5 = n2;
if(!(#t5 == null))
#t4.{core::List::addAll}{Invariant}(#t5{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t4;
core::List<dynamic> l5 = core::_GrowableList::_literal1<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 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t7 = n3;
if(!(#t7 == null))
#t6.{core::List::addAll}{Invariant}(#t7{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t6;
core::Set<Never> s1 = block {
final core::Set<Never> #t8 = col::LinkedHashSet::of<Never>(n1);
#t8.{core::Set::add}{Invariant}(n1){(Never) → core::bool};
} =>#t8;
core::Set<Never> s2 = block {
final core::Set<Never> #t9 = new col::_CompactLinkedHashSet::•<Never>();
final core::Iterable<Never>? #t10 = n1;
if(!(#t10 == null))
#t9.{core::Set::addAll}{Invariant}(#t10{core::Iterable<Never>}){(core::Iterable<Never>) → void};
#t9.{core::Set::add}{Invariant}(n1){(Never) → core::bool};
} =>#t9;
core::Set<dynamic> s3 = block {
final core::Set<dynamic> #t11 = new col::_CompactLinkedHashSet::•<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};
^"){(dynamic) → core::bool};
#t11.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool};
} =>#t11;
core::Set<Never> s4 = block {
final core::Set<Never> #t12 = new col::_CompactLinkedHashSet::•<Never>();
final core::Iterable<Never>? #t13 = n2;
if(!(#t13 == null))
#t12.{core::Set::addAll}{Invariant}(#t13{core::Iterable<Never>}){(core::Iterable<Never>) → void};
#t12.{core::Set::add}{Invariant}(n1){(Never) → core::bool};
} =>#t12;
core::Set<dynamic> s5 = block {
final core::Set<dynamic> #t14 = new col::_CompactLinkedHashSet::•<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};
^"){(dynamic) → core::bool};
#t14.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool};
} =>#t14;
core::Set<Never> s6 = block {
final core::Set<Never> #t15 = new col::_CompactLinkedHashSet::•<Never>();
final core::Iterable<Never>? #t16 = n3;
if(!(#t16 == null))
#t15.{core::Set::addAll}{Invariant}(#t16{core::Iterable<Never>}){(core::Iterable<Never>) → void};
#t15.{core::Set::add}{Invariant}(n1){(Never) → core::bool};
} =>#t15;
core::Map<Never, Never> m1 = block {
final core::Map<Never, Never> #t17 = col::LinkedHashMap::of<Never, Never>(n1);
#t17.{core::Map::[]=}{Invariant}(n1, n1){(Never, Never) → void};
} =>#t17;
core::Map<Never, Never> m2 = block {
final core::Map<Never, Never> #t18 = <Never, Never>{};
final core::Map<Never, Never>? #t19 = n1;
if(!(#t19 == null))
#t18.{core::Map::addAll}{Invariant}(#t19{core::Map<Never, Never>}){(core::Map<Never, Never>) → void};
#t18.{core::Map::[]=}{Invariant}(n1, n1){(Never, Never) → void};
} =>#t18;
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> #t20 = <Never, Never>{};
final core::Map<Never, Never>? #t21 = n2;
if(!(#t21 == null))
#t20.{core::Map::addAll}{Invariant}(#t21{core::Map<Never, Never>}){(core::Map<Never, Never>) → void};
#t20.{core::Map::[]=}{Invariant}(n1, n1){(Never, Never) → void};
} =>#t20;
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> #t22 = <Never, Never>{};
final core::Map<Never, Never>? #t23 = n3;
if(!(#t23 == null))
#t22.{core::Map::addAll}{Invariant}(#t23{core::Map<Never, Never>}){(core::Map<Never, Never>) → void};
#t22.{core::Map::[]=}{Invariant}(n1, n1){(Never, Never) → void};
} =>#t22;
}
static method test2<N1 extends Never, N2 extends Never?, N3 extends Null>(self::test2::N1 n1, self::test2::N2% n2, self::test2::N3% n3) → dynamic {
core::List<Never> l1 = block {
final core::List<Never> #t24 = core::List::of<Never>(n1);
} =>#t24;
core::List<Never> l2 = block {
final core::List<Never> #t25 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t26 = n1;
if(!(#t26 == null))
#t25.{core::List::addAll}{Invariant}(#t26{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t25;
core::List<dynamic> l3 = core::_GrowableList::_literal1<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> #t27 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t28 = n2;
if(!(#t28 == null))
#t27.{core::List::addAll}{Invariant}(#t28{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t27;
core::List<dynamic> l5 = core::_GrowableList::_literal1<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> #t29 = core::_GrowableList::•<Never>(0);
final core::Iterable<Never>? #t30 = n3;
if(!(#t30 == null))
#t29.{core::List::addAll}{Invariant}(#t30{core::Iterable<Never>}){(core::Iterable<Never>) → void};
} =>#t29;
core::Set<self::test2::N1> s1 = block {
final core::Set<self::test2::N1> #t31 = col::LinkedHashSet::of<self::test2::N1>(n1);
#t31.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool};
} =>#t31;
core::Set<self::test2::N1> s2 = block {
final core::Set<self::test2::N1> #t32 = new col::_CompactLinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t33 = n1;
if(!(#t33 == null))
#t32.{core::Set::addAll}{Invariant}(#t33{core::Iterable<self::test2::N1>}){(core::Iterable<self::test2::N1>) → void};
#t32.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool};
} =>#t32;
core::Set<dynamic> s3 = block {
final core::Set<dynamic> #t34 = new col::_CompactLinkedHashSet::•<dynamic>();
#t34.{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};
^"){(dynamic) → core::bool};
#t34.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool};
} =>#t34;
core::Set<self::test2::N1> s4 = block {
final core::Set<self::test2::N1> #t35 = new col::_CompactLinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t36 = n2;
if(!(#t36 == null))
#t35.{core::Set::addAll}{Invariant}(#t36{core::Iterable<self::test2::N1>}){(core::Iterable<self::test2::N1>) → void};
#t35.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool};
} =>#t35;
core::Set<dynamic> s5 = block {
final core::Set<dynamic> #t37 = new col::_CompactLinkedHashSet::•<dynamic>();
#t37.{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};
^"){(dynamic) → core::bool};
#t37.{core::Set::add}{Invariant}(n1){(dynamic) → core::bool};
} =>#t37;
core::Set<self::test2::N1> s6 = block {
final core::Set<self::test2::N1> #t38 = new col::_CompactLinkedHashSet::•<self::test2::N1>();
final core::Iterable<self::test2::N1>? #t39 = n3;
if(!(#t39 == null))
#t38.{core::Set::addAll}{Invariant}(#t39{core::Iterable<self::test2::N1>}){(core::Iterable<self::test2::N1>) → void};
#t38.{core::Set::add}{Invariant}(n1){(self::test2::N1) → core::bool};
} =>#t38;
core::Map<self::test2::N1, self::test2::N1> m1 = block {
final core::Map<self::test2::N1, self::test2::N1> #t40 = col::LinkedHashMap::of<self::test2::N1, self::test2::N1>(n1);
#t40.{core::Map::[]=}{Invariant}(n1, n1){(self::test2::N1, self::test2::N1) → void};
} =>#t40;
core::Map<self::test2::N1, self::test2::N1> m2 = block {
final core::Map<self::test2::N1, self::test2::N1> #t41 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t42 = n1;
if(!(#t42 == null))
#t41.{core::Map::addAll}{Invariant}(#t42{core::Map<self::test2::N1, self::test2::N1>}){(core::Map<self::test2::N1, self::test2::N1>) → void};
#t41.{core::Map::[]=}{Invariant}(n1, n1){(self::test2::N1, self::test2::N1) → void};
} =>#t41;
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> #t43 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t44 = n2;
if(!(#t44 == null))
#t43.{core::Map::addAll}{Invariant}(#t44{core::Map<self::test2::N1, self::test2::N1>}){(core::Map<self::test2::N1, self::test2::N1>) → void};
#t43.{core::Map::[]=}{Invariant}(n1, n1){(self::test2::N1, self::test2::N1) → void};
} =>#t43;
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> #t45 = <self::test2::N1, self::test2::N1>{};
final core::Map<self::test2::N1, self::test2::N1>? #t46 = n3;
if(!(#t46 == null))
#t45.{core::Map::addAll}{Invariant}(#t46{core::Map<self::test2::N1, self::test2::N1>}){(core::Map<self::test2::N1, self::test2::N1>) → void};
#t45.{core::Map::[]=}{Invariant}(n1, n1){(self::test2::N1, self::test2::N1) → void};
} =>#t45;
}
static method main() → dynamic {}