Chromium Code Reviews| Index: pkg/compiler/lib/src/js_emitter/old_emitter/reflection_data_parser.dart |
| diff --git a/pkg/compiler/lib/src/js_emitter/old_emitter/reflection_data_parser.dart b/pkg/compiler/lib/src/js_emitter/old_emitter/reflection_data_parser.dart |
| index a1d3610313a000087529643d0c114996f2b51616..3912a8d8e4cb4db9041fff0dd755ef3748dacfb0 100644 |
| --- a/pkg/compiler/lib/src/js_emitter/old_emitter/reflection_data_parser.dart |
| +++ b/pkg/compiler/lib/src/js_emitter/old_emitter/reflection_data_parser.dart |
| @@ -143,12 +143,18 @@ jsAst.Expression getReflectionDataParser(String classesCollector, |
| jsAst.Statement addStubs = js.statement(''' |
| function addStubs(descriptor, array, name, isStatic, |
| originalDescriptor, functions) { |
| - var f, funcs = |
| - [originalDescriptor[name] = |
| - descriptor[name] = f = ${readFunction("array", "$FUNCTION_INDEX")}]; |
| + var index = $FUNCTION_INDEX, alias = array[index], f; |
| + if (typeof alias == "string") { |
| + f = array[++index]; |
| + } else { |
| + f = alias; |
| + alias = name; |
| + } |
| + var funcs = [originalDescriptor[name] = descriptor[name] = |
| + descriptor[alias] = f]; |
|
ahe
2014/11/26 10:45:43
Excellent. I'm just now producing a CL that calls
herhut
2014/11/26 11:35:59
Acknowledged.
|
| f.\$stubName = name; |
| functions.push(name); |
| - for (var index = $FUNCTION_INDEX; index < array.length; index += 2) { |
| + for (; index < array.length; index += 2) { |
| f = array[index + 1]; |
| if (typeof f != "function") break; |
| f.\$stubName = ${readString("array", "index + 2")}; |