56f46b0659
This changes the CFE expectation test suites to use unsound null safety as default to avoid passing --enable-experiments=no-non-nullable to opt out old test folders. This change removes most test folders from the 'strong' tester, since this now only supports sound null safety, which requires all libraries to be opted in. Instead, the 'weak' tester now runs all test folders. Additionally the 'outline' tester is changed to use unsound null safety so that it call be used on all test folders. The 'fast_strong' tester is removed since it should just be run locally and it can be run by passing an option to the other testers. References to non-existing 'shaker' folder has been removed from testing.json. Change-Id: Ibcc306f7b27d06b9637c205238bc408194f1d062 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/184787 Commit-Queue: Johnni Winther <johnniwinther@google.com> Reviewed-by: Jens Johansen <jensj@google.com>
209 lines
8.0 KiB
Plaintext
209 lines
8.0 KiB
Plaintext
library;
|
|
import self as self;
|
|
import "dart:async" as asy;
|
|
import "dart:core" as core;
|
|
import "dart:_internal" as _in;
|
|
|
|
import "dart:async";
|
|
|
|
static field core::List<core::String*>* stringList = core::_GrowableList::_literal1<core::String*>("bar");
|
|
static method asyncString() → asy::Future<core::String*>* /* originally async */ {
|
|
final asy::_Future<core::String*>* :async_future = new asy::_Future::•<core::String*>();
|
|
core::bool* :is_sync = false;
|
|
FutureOr<core::String*>* :return_value;
|
|
(dynamic) →* dynamic :async_op_then;
|
|
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) → dynamic yielding
|
|
try {
|
|
#L1:
|
|
{
|
|
:return_value = "foo";
|
|
break #L1;
|
|
}
|
|
asy::_completeOnAsyncReturn(:async_future, :return_value, :is_sync);
|
|
return;
|
|
}
|
|
on dynamic catch(dynamic exception, core::StackTrace* stack_trace) {
|
|
asy::_completeOnAsyncError(:async_future, exception, stack_trace, :is_sync);
|
|
}
|
|
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
|
|
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
|
|
:async_op.call();
|
|
:is_sync = true;
|
|
return :async_future;
|
|
}
|
|
static method asyncString2() → asy::Future<core::String*>* /* originally async */ {
|
|
final asy::_Future<core::String*>* :async_future = new asy::_Future::•<core::String*>();
|
|
core::bool* :is_sync = false;
|
|
FutureOr<core::String*>* :return_value;
|
|
(dynamic) →* dynamic :async_op_then;
|
|
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) → dynamic yielding
|
|
try {
|
|
#L2:
|
|
{
|
|
:return_value = self::asyncString();
|
|
break #L2;
|
|
}
|
|
asy::_completeOnAsyncReturn(:async_future, :return_value, :is_sync);
|
|
return;
|
|
}
|
|
on dynamic catch(dynamic exception, core::StackTrace* stack_trace) {
|
|
asy::_completeOnAsyncError(:async_future, exception, stack_trace, :is_sync);
|
|
}
|
|
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
|
|
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
|
|
:async_op.call();
|
|
:is_sync = true;
|
|
return :async_future;
|
|
}
|
|
static method syncStarString() → core::Iterable<core::String*>* /* originally sync* */ {
|
|
function :sync_op_gen() → (core::_SyncIterator<dynamic>*, dynamic, dynamic) →* core::bool* {
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
function :sync_op(core::_SyncIterator<dynamic>* :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding {
|
|
{
|
|
{
|
|
:iterator.{core::_SyncIterator::_current} = "foo";
|
|
[yield] true;
|
|
}
|
|
{
|
|
:iterator.{core::_SyncIterator::_yieldEachIterable} = self::syncStarString2();
|
|
[yield] true;
|
|
}
|
|
{
|
|
:iterator.{core::_SyncIterator::_yieldEachIterable} = self::stringList;
|
|
[yield] true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
return :sync_op;
|
|
}
|
|
return new core::_SyncIterable::•<core::String*>(:sync_op_gen);
|
|
}
|
|
static method syncStarString2() → core::Iterable<core::String*>* /* originally sync* */ {
|
|
function :sync_op_gen() → (core::_SyncIterator<dynamic>*, dynamic, dynamic) →* core::bool* {
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
function :sync_op(core::_SyncIterator<dynamic>* :iterator, dynamic :exception, dynamic :stack_trace) → core::bool* yielding {
|
|
{
|
|
{
|
|
:iterator.{core::_SyncIterator::_current} = "foo";
|
|
[yield] true;
|
|
}
|
|
}
|
|
return false;
|
|
}
|
|
return :sync_op;
|
|
}
|
|
return new core::_SyncIterable::•<core::String*>(:sync_op_gen);
|
|
}
|
|
static method asyncStarString() → asy::Stream<core::String*>* /* originally async* */ {
|
|
asy::_AsyncStarStreamController<core::String*>* :controller;
|
|
dynamic :controller_stream;
|
|
(dynamic) →* dynamic :async_op_then;
|
|
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
dynamic :saved_try_context_var0;
|
|
dynamic :saved_try_context_var1;
|
|
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) → dynamic yielding
|
|
try
|
|
try {
|
|
#L3:
|
|
{
|
|
if(:controller.{asy::_AsyncStarStreamController::add}("foo"))
|
|
return null;
|
|
else
|
|
[yield] null;
|
|
if(:controller.{asy::_AsyncStarStreamController::addStream}(self::asyncStarString2()))
|
|
return null;
|
|
else
|
|
[yield] null;
|
|
[yield] let dynamic #t1 = asy::_awaitHelper(self::asyncString(), :async_op_then, :async_op_error, :async_op) in null;
|
|
if(:controller.{asy::_AsyncStarStreamController::add}(_in::unsafeCast<core::String*>(:result)))
|
|
return null;
|
|
else
|
|
[yield] null;
|
|
}
|
|
return;
|
|
}
|
|
on dynamic catch(dynamic exception, core::StackTrace* stack_trace) {
|
|
:controller.{asy::_AsyncStarStreamController::addError}(exception, stack_trace);
|
|
}
|
|
finally {
|
|
:controller.{asy::_AsyncStarStreamController::close}();
|
|
}
|
|
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
|
|
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
|
|
:controller = new asy::_AsyncStarStreamController::•<core::String*>(:async_op);
|
|
:controller_stream = :controller.{asy::_AsyncStarStreamController::stream};
|
|
return :controller_stream;
|
|
}
|
|
static method asyncStarString2() → asy::Stream<core::String*>* /* originally async* */ {
|
|
asy::_AsyncStarStreamController<core::String*>* :controller;
|
|
dynamic :controller_stream;
|
|
(dynamic) →* dynamic :async_op_then;
|
|
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
dynamic :saved_try_context_var0;
|
|
dynamic :saved_try_context_var1;
|
|
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) → dynamic yielding
|
|
try
|
|
try {
|
|
#L4:
|
|
{
|
|
if(:controller.{asy::_AsyncStarStreamController::add}("bar"))
|
|
return null;
|
|
else
|
|
[yield] null;
|
|
}
|
|
return;
|
|
}
|
|
on dynamic catch(dynamic exception, core::StackTrace* stack_trace) {
|
|
:controller.{asy::_AsyncStarStreamController::addError}(exception, stack_trace);
|
|
}
|
|
finally {
|
|
:controller.{asy::_AsyncStarStreamController::close}();
|
|
}
|
|
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
|
|
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
|
|
:controller = new asy::_AsyncStarStreamController::•<core::String*>(:async_op);
|
|
:controller_stream = :controller.{asy::_AsyncStarStreamController::stream};
|
|
return :controller_stream;
|
|
}
|
|
static method main() → dynamic /* originally async */ {
|
|
final asy::_Future<dynamic>* :async_future = new asy::_Future::•<dynamic>();
|
|
core::bool* :is_sync = false;
|
|
FutureOr<dynamic>* :return_value;
|
|
(dynamic) →* dynamic :async_op_then;
|
|
(core::Object*, core::StackTrace*) →* dynamic :async_op_error;
|
|
core::int* :await_jump_var = 0;
|
|
dynamic :await_ctx_var;
|
|
dynamic :saved_try_context_var0;
|
|
function :async_op([dynamic :result, dynamic :exception, dynamic :stack_trace]) → dynamic yielding
|
|
try {
|
|
#L5:
|
|
{
|
|
[yield] let dynamic #t2 = asy::_awaitHelper(self::asyncString(), :async_op_then, :async_op_error, :async_op) in null;
|
|
core::String* str = _in::unsafeCast<core::String*>(:result);
|
|
}
|
|
asy::_completeOnAsyncReturn(:async_future, :return_value, :is_sync);
|
|
return;
|
|
}
|
|
on dynamic catch(dynamic exception, core::StackTrace* stack_trace) {
|
|
asy::_completeOnAsyncError(:async_future, exception, stack_trace, :is_sync);
|
|
}
|
|
:async_op_then = asy::_asyncThenWrapperHelper(:async_op);
|
|
:async_op_error = asy::_asyncErrorWrapperHelper(:async_op);
|
|
:async_op.call();
|
|
:is_sync = true;
|
|
return :async_future;
|
|
}
|