| Index: pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
|
| index 6541e41a2533146b0cbf615a0c3a7ffff500457e..2b6b9f02e66971bb9aa8a15a5da48786394b10cf 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart
|
| @@ -244,7 +244,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| if (parameterElement.isInitializingFormal) {
|
| InitializingFormalElement initializingFormal = parameterElement;
|
| withBuilder(irBuilder.makeInitializerBuilder(), () {
|
| - ir.Primitive value = irBuilder.buildLocalGet(parameterElement);
|
| + ir.Primitive value =
|
| + irBuilder.buildLocalVariableGet(parameterElement);
|
| result.add(irBuilder.makeFieldInitializer(
|
| initializingFormal.fieldElement,
|
| irBuilder.makeRunnableBody(value)));
|
| @@ -681,7 +682,15 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| if (element.isConst) {
|
| return translateConstant(node);
|
| }
|
| - return irBuilder.buildLocalGet(element);
|
| + return irBuilder.buildLocalVariableGet(element);
|
| + }
|
| +
|
| + @override
|
| + ir.Primitive visitLocalFunctionGet(
|
| + ast.Send node,
|
| + LocalFunctionElement function,
|
| + _) {
|
| + return irBuilder.buildLocalFunctionGet(function);
|
| }
|
|
|
| @override
|
| @@ -692,7 +701,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| if (field.isConst) {
|
| return translateConstant(node);
|
| }
|
| - return irBuilder.buildStaticGet(field,
|
| + return irBuilder.buildStaticFieldGet(field,
|
| sourceInformation: sourceInformationBuilder.buildGet(node));
|
| }
|
|
|
| @@ -713,8 +722,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Send node,
|
| FunctionElement getter,
|
| _) {
|
| - return irBuilder.buildStaticInvocation(getter,
|
| - new Selector.getter(getter.name, getter.library), const []);
|
| + return irBuilder.buildStaticGetterGet(getter);
|
| }
|
|
|
| @override
|
| @@ -722,7 +730,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Send node,
|
| FieldElement field,
|
| _) {
|
| - return irBuilder.buildSuperGet(field);
|
| + return irBuilder.buildSuperFieldGet(field);
|
| }
|
|
|
| @override
|
| @@ -730,7 +738,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Send node,
|
| FunctionElement getter,
|
| _) {
|
| - return irBuilder.buildSuperGet(getter);
|
| + return irBuilder.buildSuperGetterGet(getter);
|
| }
|
|
|
| @override
|
| @@ -738,7 +746,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Send node,
|
| MethodElement method,
|
| _) {
|
| - return irBuilder.buildSuperGet(method);
|
| + return irBuilder.buildSuperMethodGet(method);
|
| }
|
|
|
| @override
|
| @@ -849,7 +857,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| Selector selector = new Selector.binaryOperator(operator.selectorName);
|
| List<ir.Primitive> arguments = <ir.Primitive>[visit(argument)];
|
| arguments = normalizeDynamicArguments(selector, arguments);
|
| - return irBuilder.buildSuperInvocation(function, selector, arguments);
|
| + return irBuilder.buildSuperMethodInvocation(function, selector, arguments);
|
| }
|
|
|
| @override
|
| @@ -871,7 +879,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| Selector selector = new Selector.index();
|
| List<ir.Primitive> arguments = <ir.Primitive>[visit(index)];
|
| arguments = normalizeDynamicArguments(selector, arguments);
|
| - return irBuilder.buildSuperInvocation(function, selector, arguments);
|
| + return irBuilder.buildSuperMethodInvocation(function, selector, arguments);
|
| }
|
|
|
| @override
|
| @@ -943,7 +951,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| SelectorKind.OPERATOR,
|
| new PublicName(operator.selectorName),
|
| CallStructure.NO_ARGS);
|
| - return irBuilder.buildSuperInvocation(function, selector, const []);
|
| + return irBuilder.buildSuperMethodInvocation(function, selector, const []);
|
| }
|
|
|
| // TODO(johnniwinther): Handle this in the [IrBuilder] to ensure the correct
|
| @@ -1008,7 +1016,18 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return irBuilder.buildLocalInvocation(element, selector,
|
| + return irBuilder.buildLocalVariableInvocation(element, selector,
|
| + translateDynamicArguments(arguments, selector));
|
| + }
|
| +
|
| + @override
|
| + ir.Primitive visitLocalFunctionInvoke(
|
| + ast.Send node,
|
| + LocalFunctionElement function,
|
| + ast.NodeList arguments,
|
| + Selector selector,
|
| + _) {
|
| + return irBuilder.buildLocalFunctionInvocation(function, selector,
|
| translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @@ -1019,9 +1038,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return translateCallInvoke(
|
| - irBuilder.buildStaticGet(field),
|
| - arguments, selector);
|
| + return irBuilder.buildStaticFieldInvocation(field, selector,
|
| + translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @override
|
| @@ -1035,7 +1053,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| if (function.isForeign(compiler.backend)) {
|
| return giveup(node, 'handleStaticFunctionInvoke: foreign: $function');
|
| }
|
| - return irBuilder.buildStaticInvocation(function, selector,
|
| + return irBuilder.buildStaticFunctionInvocation(function, selector,
|
| translateStaticArguments(arguments, function, selector.callStructure),
|
| sourceInformation: sourceInformationBuilder.buildCall(node));
|
| }
|
| @@ -1047,9 +1065,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return translateCallInvoke(
|
| - irBuilder.buildStaticGet(getter),
|
| - arguments, selector);
|
| + return irBuilder.buildStaticGetterInvocation(getter, selector,
|
| + translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @override
|
| @@ -1059,9 +1076,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return translateCallInvoke(
|
| - irBuilder.buildSuperGet(field),
|
| - arguments, selector);
|
| + return irBuilder.buildSuperFieldInvocation(field, selector,
|
| + translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @override
|
| @@ -1071,9 +1087,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return translateCallInvoke(
|
| - irBuilder.buildSuperGet(getter),
|
| - arguments, selector);
|
| + return irBuilder.buildSuperGetterInvocation(getter, selector,
|
| + translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @override
|
| @@ -1083,7 +1098,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.NodeList arguments,
|
| Selector selector,
|
| _) {
|
| - return irBuilder.buildSuperInvocation(method, selector,
|
| + return irBuilder.buildSuperMethodInvocation(method, selector,
|
| translateDynamicArguments(arguments, selector));
|
| }
|
|
|
| @@ -1182,7 +1197,8 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| Selector selector = new Selector.index();
|
| List<ir.Primitive> arguments = <ir.Primitive>[indexValue];
|
| arguments = normalizeDynamicArguments(selector, arguments);
|
| - return irBuilder.buildSuperInvocation(getter, selector, arguments);
|
| + return irBuilder.buildSuperMethodInvocation(
|
| + getter, selector, arguments);
|
| },
|
| operator: operator,
|
| rhs: rhs,
|
| @@ -1283,11 +1299,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildLocalGet(element),
|
| + getValue: () => irBuilder.buildLocalVariableGet(element),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildLocalSet(element, result);
|
| + irBuilder.buildLocalVariableSet(element, result);
|
| });
|
| }
|
|
|
| @@ -1299,10 +1315,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildLocalGet(element),
|
| + getValue: () => irBuilder.buildLocalVariableGet(element),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildLocalSet(element, result);
|
| + irBuilder.buildLocalVariableSet(element, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1313,7 +1329,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| LocalElement element,
|
| ast.Node rhs,
|
| _) {
|
| - return irBuilder.buildLocalSet(element, visit(rhs));
|
| + return irBuilder.buildLocalVariableSet(element, visit(rhs));
|
| }
|
|
|
| @override
|
| @@ -1324,11 +1340,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildStaticGet(field),
|
| + getValue: () => irBuilder.buildStaticFieldGet(field),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(field, result);
|
| + irBuilder.buildStaticFieldSet(field, result);
|
| });
|
| }
|
|
|
| @@ -1340,10 +1356,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildStaticGet(field),
|
| + getValue: () => irBuilder.buildStaticFieldGet(field),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(field, result);
|
| + irBuilder.buildStaticFieldSet(field, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1354,7 +1370,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| FieldElement field,
|
| ast.Node rhs,
|
| _) {
|
| - return irBuilder.buildStaticSet(field, visit(rhs));
|
| + return irBuilder.buildStaticFieldSet(field, visit(rhs));
|
| }
|
|
|
| @override
|
| @@ -1363,7 +1379,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| FieldElement field,
|
| ast.Node rhs,
|
| _) {
|
| - return irBuilder.buildSuperSet(field, visit(rhs));
|
| + return irBuilder.buildSuperFieldSet(field, visit(rhs));
|
| }
|
|
|
| @override
|
| @@ -1372,7 +1388,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| FunctionElement setter,
|
| ast.Node rhs,
|
| _) {
|
| - return irBuilder.buildSuperSet(setter, visit(rhs));
|
| + return irBuilder.buildSuperSetterSet(setter, visit(rhs));
|
| }
|
|
|
| @override
|
| @@ -1384,11 +1400,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildStaticGet(getter),
|
| + getValue: () => irBuilder.buildStaticGetterGet(getter),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(setter, result);
|
| + irBuilder.buildStaticSetterSet(setter, result);
|
| });
|
| }
|
|
|
| @@ -1401,10 +1417,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(readField),
|
| + getValue: () => irBuilder.buildSuperFieldGet(readField),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(writtenField, result);
|
| + irBuilder.buildSuperFieldSet(writtenField, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1418,10 +1434,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(field),
|
| + getValue: () => irBuilder.buildSuperFieldGet(field),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1435,10 +1451,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(getter),
|
| + getValue: () => irBuilder.buildSuperGetterGet(getter),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(field, result);
|
| + irBuilder.buildSuperFieldSet(field, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1452,10 +1468,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(getter),
|
| + getValue: () => irBuilder.buildSuperGetterGet(getter),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1469,10 +1485,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(method),
|
| + getValue: () => irBuilder.buildSuperMethodGet(method),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1486,10 +1502,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildStaticGet(getter),
|
| + getValue: () => irBuilder.buildStaticGetterGet(getter),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(setter, result);
|
| + irBuilder.buildStaticSetterSet(setter, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1503,11 +1519,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildStaticGet(method),
|
| + getValue: () => irBuilder.buildStaticFunctionGet(method),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(setter, result);
|
| + irBuilder.buildStaticSetterSet(setter, result);
|
| });
|
| }
|
|
|
| @@ -1520,10 +1536,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| arg,
|
| {bool isPrefix}) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildStaticGet(getter),
|
| + getValue: () => irBuilder.buildStaticFunctionGet(getter),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildStaticSet(setter, result);
|
| + irBuilder.buildStaticSetterSet(setter, result);
|
| },
|
| isPrefix: isPrefix);
|
| }
|
| @@ -1570,7 +1586,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| Selector selector = new Selector.index();
|
| List<ir.Primitive> arguments = <ir.Primitive>[indexValue];
|
| arguments = normalizeDynamicArguments(selector, arguments);
|
| - return irBuilder.buildSuperInvocation(
|
| + return irBuilder.buildSuperMethodInvocation(
|
| indexFunction, selector, arguments);
|
| },
|
| operator: operator,
|
| @@ -1578,7 +1594,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| Selector selector = new Selector.indexSet();
|
| List<ir.Primitive> arguments = <ir.Primitive>[indexValue, result];
|
| arguments = normalizeDynamicArguments(selector, arguments);
|
| - irBuilder.buildSuperInvocation(
|
| + irBuilder.buildSuperMethodInvocation(
|
| indexSetFunction, selector, arguments);
|
| },
|
| isPrefix: isPrefix);
|
| @@ -1590,7 +1606,7 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| FunctionElement setter,
|
| ast.Node rhs,
|
| _) {
|
| - return irBuilder.buildStaticSet(setter, visit(rhs));
|
| + return irBuilder.buildStaticSetterSet(setter, visit(rhs));
|
| }
|
|
|
| @override
|
| @@ -1601,11 +1617,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildSuperGet(field),
|
| + getValue: () => irBuilder.buildSuperFieldGet(field),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(field, result);
|
| + irBuilder.buildSuperFieldSet(field, result);
|
| });
|
| }
|
|
|
| @@ -1617,10 +1633,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| op.IncDecOperator operator,
|
| _) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(readField),
|
| + getValue: () => irBuilder.buildSuperFieldGet(readField),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(writtenField, result);
|
| + irBuilder.buildSuperFieldSet(writtenField, result);
|
| },
|
| isPrefix: false);
|
| }
|
| @@ -1633,10 +1649,10 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| op.IncDecOperator operator,
|
| _) {
|
| return translatePrefixPostfix(
|
| - getValue: () => irBuilder.buildSuperGet(readField),
|
| + getValue: () => irBuilder.buildSuperFieldGet(readField),
|
| operator: operator,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(writtenField, result);
|
| + irBuilder.buildSuperFieldSet(writtenField, result);
|
| },
|
| isPrefix: true);
|
| }
|
| @@ -1650,11 +1666,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildSuperGet(field),
|
| + getValue: () => irBuilder.buildSuperFieldGet(field),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| });
|
| }
|
|
|
| @@ -1667,11 +1683,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildSuperGet(getter),
|
| + getValue: () => irBuilder.buildSuperGetterGet(getter),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(field, result);
|
| + irBuilder.buildSuperFieldSet(field, result);
|
| });
|
| }
|
|
|
| @@ -1684,11 +1700,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildSuperGet(getter),
|
| + getValue: () => irBuilder.buildSuperGetterGet(getter),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| });
|
| }
|
|
|
| @@ -1701,11 +1717,11 @@ abstract class IrBuilderVisitor extends SemanticVisitor<ir.Primitive, dynamic>
|
| ast.Node rhs,
|
| _) {
|
| return translateCompound(
|
| - getValue: () => irBuilder.buildSuperGet(method),
|
| + getValue: () => irBuilder.buildSuperMethodGet(method),
|
| operator: operator,
|
| rhs: rhs,
|
| setValue: (ir.Primitive result) {
|
| - irBuilder.buildSuperSet(setter, result);
|
| + irBuilder.buildSuperSetterSet(setter, result);
|
| });
|
| }
|
|
|
| @@ -2336,7 +2352,7 @@ class JsIrBuilderVisitor extends IrBuilderVisitor {
|
| if (parameter.isInitializingFormal) {
|
| InitializingFormalElement fieldParameter = parameter;
|
| fieldValues[fieldParameter.fieldElement] =
|
| - irBuilder.buildLocalGet(parameter);
|
| + irBuilder.buildLocalVariableGet(parameter);
|
| }
|
| });
|
| // Evaluate constructor initializers, e.g. `Foo() : x = 50`.
|
|
|