| Index: pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
|
| diff --git a/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart b/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
|
| index 3227cf1d01231e123d6e000a6ae1b7dab089e449..5d35709be049738cc1846c3c18ad755f235fe7ee 100644
|
| --- a/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
|
| +++ b/pkg/compiler/lib/src/cps_ir/cps_ir_nodes.dart
|
| @@ -41,6 +41,7 @@ abstract class Definition<T extends Definition<T>> extends Node {
|
| bool get hasMultipleUses => !hasAtMostOneUse;
|
|
|
| void substituteFor(Definition<T> other) {
|
| + if (other == this) return;
|
| if (other.hasNoUses) return;
|
| Reference<T> previous, current = other.firstRef;
|
| do {
|
| @@ -401,7 +402,7 @@ class InvokeConstructor extends Expression implements Invoke {
|
| // But then we need to special-case for is-checks with an erroneous .type as
|
| // these will throw.
|
| class TypeOperator extends Expression {
|
| - final Reference<Primitive> receiver;
|
| + Reference<Primitive> receiver;
|
| final DartType type;
|
| final Reference<Continuation> continuation;
|
| // TODO(johnniwinther): Use `Operator` class to encapsule the operator type.
|
|
|