Chromium Code Reviews| Index: dart/frog/leg/resolver.dart |
| diff --git a/dart/frog/leg/resolver.dart b/dart/frog/leg/resolver.dart |
| index 6578f587fa0656764f8bfb25f76f6a53725a961e..ff18d5b83951ede939ae74c16b943a52db227c30 100644 |
| --- a/dart/frog/leg/resolver.dart |
| +++ b/dart/frog/leg/resolver.dart |
| @@ -1139,7 +1139,22 @@ class ResolverVisitor extends CommonResolverVisitor<Element> { |
| } |
| visitSwitchStatement(SwitchStatement node) { |
| - warning(node, MessageKind.GENERIC, ['switch statement is not implemented']); |
| + node.expression.accept(this); |
| + StatementElement element = getOrCreateStatementElement(node); |
| + statementScope.enterLoop(element); |
|
Lasse Reichstein Nielsen
2012/03/05 19:54:04
Will need modifying (switch isn't a continue targe
ahe
2012/03/05 20:07:23
Good point. I'll probably need your help figuring
|
| + node.cases.accept(this); |
| + statementScope.exitLoop(); |
| + } |
| + |
| + visitSwitchCase(SwitchCase node) { |
| + // TODO(ahe): What about the label? |
|
Lasse Reichstein Nielsen
2012/03/05 19:54:04
We will probably have to make two passed over the
ahe
2012/03/05 20:07:23
I was thinking about something similar.
|
| + node.expression.accept(this); |
| + node.statements.accept(this); |
| + } |
| + |
| + visitDefaultCase(DefaultCase node) { |
| + // TODO(ahe): What about the label? |
| + node.statements.accept(this); |
| } |
| visitTryStatement(TryStatement node) { |