Chromium Code Reviews| Index: sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart |
| diff --git a/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart b/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart |
| index b70c32c2aaa78bac336c88971e1f1c5153986a08..d92edf602fe1d9d17e1c0be2af995ba451cbfb4f 100644 |
| --- a/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart |
| +++ b/sdk/lib/_internal/compiler/implementation/js_backend/emitter.dart |
| @@ -1251,6 +1251,7 @@ $lazyInitializerLogic |
| buffer.add(functionBuffer); |
| buffer.add('$N$n'); |
| } |
| + |
| void emitStaticFunctionsWithNamer(CodeBuffer buffer, |
| Map<Element, CodeBuffer> generatedCode, |
| String functionNamer(Element element)) { |
| @@ -1293,6 +1294,15 @@ $lazyInitializerLogic |
| // in case it is used in spawnFunction. |
| String fieldName = namer.STATIC_CLOSURE_NAME_NAME; |
| buffer.add('$fieldAccess.$fieldName$_=$_"$staticName"$N'); |
| + for (TypedefElement typedef in checkedTypedefs) { |
| + FunctionType typedefType = |
| + typedef.computeType(compiler).unalias(compiler); |
| + if (compiler.types.isSubtype(element.computeType(compiler), |
|
ngeoffray
2012/12/13 13:20:37
move element.computeType out of the loop.
|
| + typedefType)) { |
| + String typedefName = namer.getName(typedef); |
| + buffer.add('$fieldAccess.is\$$typedefName$_=${_}true$N'); |
|
ngeoffray
2012/12/13 13:20:37
Please use namer.operatorIs.
|
| + } |
| + } |
| } |
| } |