| Index: lib/kernel_visitor.dart
|
| diff --git a/lib/kernel_visitor.dart b/lib/kernel_visitor.dart
|
| index c536447dce9978f57303a7aeaf4a0de0b2aa8a43..395c9b93625be12ed5a9f480e3c09409bb1c5010 100644
|
| --- a/lib/kernel_visitor.dart
|
| +++ b/lib/kernel_visitor.dart
|
| @@ -176,6 +176,9 @@ import 'kernel.dart' show
|
| ConstructorTarget,
|
| Kernel;
|
|
|
| +import 'kernel/fall_through_visitor.dart' show
|
| + fallsThrough;
|
| +
|
| /// Translates dart2js AST nodes [Node] into Kernel IR [ir.TreeNode].
|
| ///
|
| /// Most methods in this class have a prefix that follows these conventions:
|
| @@ -1042,6 +1045,14 @@ class KernelVisitor extends Object
|
| hasVariableDeclaration = true;
|
| }
|
| }
|
| + if (statements.isEmpty || fallsThrough(statements.last)) {
|
| + statements.add(
|
| + new ir.ExpressionStatement(
|
| + new ir.Throw(
|
| + new ir.StaticInvocation(
|
| + kernel.getFallThroughErrorBuilder(),
|
| + new ir.Arguments.empty()))));
|
| + }
|
| ir.Statement body;
|
| if (!hasVariableDeclaration && statements.length == 1) {
|
| body = statements.single;
|
|
|