| Index: sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| diff --git a/sdk/lib/_internal/compiler/implementation/resolution/members.dart b/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| index 7e1beaa95326184c87cde3d991cae127e5122ab5..26a0f760e49f077814a62394a33b6769f73c1b3d 100644
|
| --- a/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| +++ b/sdk/lib/_internal/compiler/implementation/resolution/members.dart
|
| @@ -2715,10 +2715,6 @@ class ResolverVisitor extends MappingVisitor<Element> {
|
| if (!target.statement.isValidContinueTarget()) {
|
| error(node.target, MessageKind.INVALID_CONTINUE);
|
| }
|
| - // TODO(lrn): Handle continues to switch cases.
|
| - if (target.statement is SwitchCase) {
|
| - unimplemented(node, "continue to switch case");
|
| - }
|
| label.setContinueTarget();
|
| mapping[node.target] = label;
|
| }
|
| @@ -2898,19 +2894,8 @@ class ResolverVisitor extends MappingVisitor<Element> {
|
| }
|
| }
|
|
|
| - TargetElement targetElement =
|
| - new TargetElementX(switchCase,
|
| - statementScope.nestingLevel,
|
| - enclosingElement);
|
| - if (mapping[switchCase] != null) {
|
| - // TODO(ahe): Talk to Lasse about this.
|
| - mapping.remove(switchCase);
|
| - }
|
| - mapping[switchCase] = targetElement;
|
| -
|
| - LabelElement labelElement =
|
| - new LabelElementX(label, labelName,
|
| - targetElement, enclosingElement);
|
| + TargetElement targetElement = getOrCreateTargetElement(switchCase);
|
| + LabelElement labelElement = targetElement.addLabel(label, labelName);
|
| mapping[label] = labelElement;
|
| continueLabels[labelName] = labelElement;
|
| }
|
|
|