| Index: sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart
|
| ===================================================================
|
| --- sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart (revision 25104)
|
| +++ sdk/lib/_internal/compiler/implementation/types/inferrer_visitor.dart (working copy)
|
| @@ -384,6 +384,13 @@
|
|
|
| TypeMask visitOperatorSend(Send node) {
|
| Operator op = node.selector;
|
| + if (node.isPrefix) {
|
| + // Cheap check for -literal.
|
| + if (node.receiver.asLiteralInt() != null
|
| + || node.receiver.asLiteralDouble() != null) {
|
| + return visit(node.receiver);
|
| + }
|
| + }
|
| if (const SourceString("[]") == op.source) {
|
| return visitDynamicSend(node);
|
| } else if (const SourceString("&&") == op.source) {
|
|
|