d54e2bb568
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>
29 lines
661 B
Plaintext
29 lines
661 B
Plaintext
library;
|
|
import self as self;
|
|
import "issue41435_lib.dart" as iss;
|
|
|
|
import "org-dartlang-testcase:///issue41435_lib.dart";
|
|
|
|
static method main() → void {
|
|
Null nil;
|
|
iss::x = null;
|
|
iss::x = nil;
|
|
iss::takesNever(null);
|
|
iss::takesNever(nil);
|
|
iss::takesTakesNull(#C1);
|
|
iss::f = (Null x) → Null {};
|
|
}
|
|
|
|
library /*isNonNullableByDefault*/;
|
|
import self as iss;
|
|
import "dart:core" as core;
|
|
|
|
static field Never x = throw "Unreachable";
|
|
static field (Null) → void f = (core::Object? n) → void {};
|
|
static method takesNever(Never x) → void {}
|
|
static method takesTakesNull((Null) → void f) → void {}
|
|
|
|
constants {
|
|
#C1 = tearoff iss::takesNever
|
|
}
|