case_ block_ not_ terminated
The last statement of the 'case' should be 'break', 'continue', 'rethrow', 'return', or 'throw'.
Description
#
The analyzer produces this diagnostic when the last statement in a
case
block isn't one of the required terminators:
break
,
continue
,
rethrow
,
return
, or
throw
.
Example
#
The following code produces this diagnostic because the
case
block ends
with an assignment:
void f(int x) {
switch (x) {
case 0:
x += 2;
default:
x += 1;
}
}
Common fixes
#Add one of the required terminators:
void f(int x) {
switch (x) {
case 0:
x += 2;
break;
default:
x += 1;
}
}
Unless stated otherwise, the documentation on this site reflects Dart 3.9.2. Page last updated on 2025-9-4. View source or report an issue.