Index: lib/src/codegen/js_names.dart |
diff --git a/lib/src/codegen/js_names.dart b/lib/src/codegen/js_names.dart |
index 9d03bc37cb69d7939447509fe15f37d92c391ac4..00ee437a6231bef9120e9a0ab4c880c9ac3e9e93 100644 |
--- a/lib/src/codegen/js_names.dart |
+++ b/lib/src/codegen/js_names.dart |
@@ -85,7 +85,10 @@ class _RenameVisitor extends VariableDeclarationVisitor { |
declare(Identifier node) { |
var id = identifierKey(node); |
- scope.declared.add(id); |
+ var notAlreadyDeclared = scope.declared.add(id); |
+ // Normal identifiers can be declared multiple times, because we don't |
+ // implement block scope yet. However temps should only be declared once. |
+ assert(notAlreadyDeclared || node is! TemporaryId); |
_markUsed(node, id, scope); |
} |