blob: f30df78e31aa1a8ffa6181f0f50d469abb1ad0f4 [file] [log] [blame]
// 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.
/// @assertion Given a switch statement of the form
/// switch (e) {
/// label11 … label1j1 case e1: s1
/// …
/// labeln1 ..labelnjn case en: sn
/// label(n+1)1 ..label(n+1)jn default: sn+1
/// }
/// or the form
/// switch (e) {
/// label11 … label1j1 case e1: s1
/// …
/// labeln1 ..labelnjn case en: sn
/// }
/// it is a compile-time error if the expressions ek are not compile-time
/// constants for all k = 1..n.
/// @description Checks that it is a compile-time error if a case expression
/// is not a compile-time constant.
/// @author msyabro
f() => 1;
main() {
switch(1) {
case 0:
case 2:
case f():
// ^
// [analyzer] unspecified
// [cfe] unspecified
}
}