| Index: pkg/compiler/lib/src/constant_system_dart.dart
|
| diff --git a/pkg/compiler/lib/src/constant_system_dart.dart b/pkg/compiler/lib/src/constant_system_dart.dart
|
| index acace584b0b5ae8637064158d58a0b6f604ccad8..a9ec017ef9c6af48ea71f30f4ddd7cf87d6d3891 100644
|
| --- a/pkg/compiler/lib/src/constant_system_dart.dart
|
| +++ b/pkg/compiler/lib/src/constant_system_dart.dart
|
| @@ -203,6 +203,14 @@ class ModuloOperation extends ArithmeticNumOperation {
|
| apply(left, right) => left % right;
|
| }
|
|
|
| +class RemainderOperation extends ArithmeticNumOperation {
|
| + final String name = 'remainder';
|
| + const RemainderOperation();
|
| + // Not a defined constant operation.
|
| + num foldNums(num left, num right) => null;
|
| + apply(left, right) => left.remainder(right);
|
| +}
|
| +
|
| class TruncatingDivideOperation extends ArithmeticNumOperation {
|
| final String name = '~/';
|
| const TruncatingDivideOperation();
|
| @@ -406,6 +414,7 @@ class DartConstantSystem extends ConstantSystem {
|
| final multiply = const MultiplyOperation();
|
| final negate = const NegateOperation();
|
| final not = const NotOperation();
|
| + final remainder = const RemainderOperation();
|
| final shiftLeft = const ShiftLeftOperation();
|
| final shiftRight = const ShiftRightOperation();
|
| final subtract = const SubtractOperation();
|
|
|