Index: frog/leg/ssa/closure.dart |
=================================================================== |
--- frog/leg/ssa/closure.dart (revision 5433) |
+++ frog/leg/ssa/closure.dart (working copy) |
@@ -396,8 +396,10 @@ |
savedClosureData.freeVariableMapping.getKeys(); |
assert(freeVariables.isEmpty() || savedInsideClosure); |
for (Element freeElement in freeVariables) { |
- assert(capturedVariableMapping[freeElement] == null || |
- capturedVariableMapping[freeElement] == freeElement); |
+ if (capturedVariableMapping[freeElement] != null && |
+ capturedVariableMapping[freeElement] != freeElement) { |
+ compiler.internalError('In closure analyzer', node: node); |
+ } |
capturedVariableMapping[freeElement] = freeElement; |
useLocal(freeElement); |
} |