| 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 6b78f6fffcf8e96d6d51e3e1766e41951f0ef459..c6033373ed6de7655de0ad1f4bcd30fbfa25b834 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
|
| @@ -877,21 +877,17 @@ abstract class IrBuilderVisitor extends ast.Visitor<ir.Primitive>
|
| ast.Node expression,
|
| DartType type,
|
| _) {
|
| - ir.Primitive receiver = visit(expression);
|
| - return irBuilder.buildTypeOperator(
|
| - receiver, type,
|
| - isTypeTest: true,
|
| - isNotCheck: false);
|
| + ir.Primitive value = visit(expression);
|
| + return irBuilder.buildTypeOperator(value, type, isTypeTest: true);
|
| }
|
|
|
| @override
|
| ir.Primitive visitIsNot(ast.Send node,
|
| ast.Node expression, DartType type, _) {
|
| - ir.Primitive receiver = visit(expression);
|
| - return irBuilder.buildTypeOperator(
|
| - receiver, type,
|
| - isTypeTest: true,
|
| - isNotCheck: true);
|
| + ir.Primitive value = visit(expression);
|
| + ir.Primitive check = irBuilder.buildTypeOperator(
|
| + value, type, isTypeTest: true);
|
| + return irBuilder.buildNegation(check);
|
| }
|
|
|
| ir.Primitive translateBinary(ast.Node left,
|
| @@ -2307,7 +2303,7 @@ class GlobalProgramInformation {
|
| return cls.typeVariables.isNotEmpty && _backend.classNeedsRti(cls);
|
| }
|
|
|
| - Set<ClassElement> get interceptedClasses => _backend.interceptedClasses;
|
| + ClassElement get nullClass => _compiler.nullClass;
|
| }
|
|
|
| /// IR builder specific to the JavaScript backend, coupled to the [JsIrBuilder].
|
|
|