| Index: pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart
|
| diff --git a/pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart b/pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart
|
| index 6b4b60e06ab53dae05e9ead2170935c214a39c8a..dc1d7336a274ec57d00653e8bf564677a112cc7c 100644
|
| --- a/pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart
|
| +++ b/pkg/compiler/lib/src/dart_backend/backend_ast_emitter.dart
|
| @@ -519,7 +519,8 @@ class ASTEmitter
|
| // that may occur in expression context, but could not be inlined anywhere.
|
| if (stmt.variable.element is FunctionElement &&
|
| stmt.value is tree.FunctionExpression &&
|
| - !context.declaredVariables.contains(stmt.variable)) {
|
| + !context.declaredVariables.contains(stmt.variable) &&
|
| + stmt.variable.writeCount == 1) {
|
| tree.FunctionExpression functionExp = stmt.value;
|
| FunctionExpression function =
|
| makeSubFunction(functionExp.definition, context);
|
|
|