Chromium Code Reviews| Index: frog/leg/ssa/builder.dart |
| diff --git a/frog/leg/ssa/builder.dart b/frog/leg/ssa/builder.dart |
| index c82c85bddd83db8a425e7286aefd8902c31e2416..aa4cf6463e1cf77452bbe410a4bf81e3963e632e 100644 |
| --- a/frog/leg/ssa/builder.dart |
| +++ b/frog/leg/ssa/builder.dart |
| @@ -1325,12 +1325,17 @@ class SsaBuilder implements Visitor { |
| conditionExitBlock.addSuccessor(bodyBlock); |
| open(bodyBlock); |
| - VariableDefinitions definition = node.declaredIdentifier; |
| - Identifier identifier = definition.definitions.nodes.head; |
| - Element variable = elements[identifier]; |
| String jsNextName = |
| compiler.namer.instanceName(new SourceString("next")); |
| push(new HInvokeDynamicMethod(jsNextName, [iterator])); |
| + |
| + Element variable; |
| + if (node.declaredIdentifier is Send) { |
|
ngeoffray
2012/01/11 15:20:09
is Send -> asSend() != null
|
| + variable = elements[node.declaredIdentifier]; |
| + } else { |
| + assert(node.declaredIdentifier is VariableDefinitions); |
| + variable = elements[node.declaredIdentifier.definitions.nodes.head]; |
|
ngeoffray
2012/01/11 15:20:09
This will give you a type warning. I have heard we
Lasse Reichstein
2012/01/12 07:49:31
Ah ok. Where do I disable warnings :P.
|
| + } |
| definitions[variable] = pop(); |
| visit(node.body); |