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>
61 lines
1.8 KiB
Dart
61 lines
1.8 KiB
Dart
/*
|
|
* Copyright (c) 2011, the Dart project authors. Please see the AUTHORS file
|
|
* for details. All rights reserved. Use of this source code is governed by a
|
|
* BSD-style license that can be found in the LICENSE file.
|
|
*/
|
|
// @dart=2.9
|
|
// Slightly modified copy of
|
|
// `co19/src/Language/Statements/Switch/execution_case_t02.dart`.
|
|
|
|
/**
|
|
* @assertion Execution of a case clause case ek: sk of a switch statement
|
|
* switch (e) {label11 ..label1j1 case e1: s1 … labeln1 ..labelnjn case en: sn default: sn+1}
|
|
* proceeds as follows:
|
|
* The expression ek == id is evaluated to an object o which is then
|
|
* subjected to boolean conversion yielding a value v.
|
|
* If v is not true, the following case, case ek+1: sk+1 is executed if it exists.
|
|
* If case ek+1: sk+1 does not exist, then the default clause is executed by executing sn+1.
|
|
* If v is true, let h be the smallest integer such that h >= k and sh is non-empty.
|
|
* If no such h exists, let h = n + 1. The sequence of statements sh is then executed.
|
|
* If execution reaches the point after sh then a runtime error occurs, unless h = n + 1.
|
|
* @description Checks that falling through produces a runtime error, unless
|
|
* the current clause is an empty case clause or the default clause.
|
|
* @static-warning
|
|
* @author msyabro
|
|
* @reviewer rodionov
|
|
* @issue 7537
|
|
*/
|
|
|
|
test(value) {
|
|
var result;
|
|
|
|
switch(value) {
|
|
case 1: result = 1;
|
|
break;
|
|
case 2: result = 2; /// static warning - case fall-through, see "Switch"
|
|
case 3: result = 3; /// static warning - case fall-through, see "Switch"
|
|
default: result = 4;
|
|
}
|
|
return result;
|
|
}
|
|
|
|
testEmptyCases(value) {
|
|
var result;
|
|
|
|
switch(value) {
|
|
case 1:
|
|
case 2: result = 1; /// static warning - case fall-through, see "Switch"
|
|
case 3:
|
|
case 4: result = 2;
|
|
break;
|
|
case 5:
|
|
case 6:
|
|
default:
|
|
}
|
|
|
|
return result;
|
|
}
|
|
|
|
main() {
|
|
}
|