Files
sdk/pkg/front_end/testcases/nnbd/nullable_null.dart.strong.expect
T
Dmitry Stefantsov d54e2bb568 [cfe,ddc,dart2js,vm] Add NullType
This CL is the sum of the following 5 CLs:
* https://dart-review.googlesource.com/c/sdk/+/170342/
* https://dart-review.googlesource.com/c/sdk/+/170344/
* https://dart-review.googlesource.com/c/sdk/+/170345/
* https://dart-review.googlesource.com/c/sdk/+/170346/
* https://dart-review.googlesource.com/c/sdk/+/170347/

The reason for landing the 5 CLs as one CL is to prevent potential
troubles with bisecting over the branch because the change is fully
functional only with all 5 CLs.

Closes #40122.

TEST=Verified by changes in .expect files in pkg/vm/.
Bug: https://github.com/dart-lang/sdk/issues/40122
Change-Id: Ib8197802fdc69694387ae47ac990c58b3aaab7a5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/170689
Commit-Queue: Dmitry Stefantsov <dmitryas@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2020-11-06 12:43:52 +00:00

34 lines
815 B
Plaintext

library /*isNonNullableByDefault*/;
import self as self;
import "dart:core" as core;
class A<X extends core::Object? = dynamic> extends core::Object {
synthetic constructor •() → self::A<self::A::X%>
: super core::Object::•()
;
}
class B extends self::A<Null> {
synthetic constructor •() → self::B
: super self::A::•()
;
}
class C extends core::Object {
synthetic constructor •() → self::C
: super core::Object::•()
;
method foo(Null n, self::A<Null> an) → Null
return n;
}
static method foo() → dynamic {
return <core::List<self::A<Null>?>>[<Null>[], <self::A<Null>>[]];
}
static method bar() → dynamic {
return <core::List<self::A<Null>?>>[#C1, #C2];
}
static method main() → dynamic {}
constants {
#C1 = <Null>[]
#C2 = <self::A<Null>>[]
}