Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(375)

Side by Side Diff: pkg/compiler/lib/src/cps_ir/cps_ir_builder_task.dart

Issue 1325843003: Add optional message to assert in Dart2js. (Closed) Base URL: https://github.com/dart-lang/sdk.git@master
Patch Set: Created 5 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 library dart2js.ir_builder_task; 5 library dart2js.ir_builder_task;
6 6
7 import '../closure.dart' as closurelib; 7 import '../closure.dart' as closurelib;
8 import '../closure.dart' hide ClosureScope; 8 import '../closure.dart' hide ClosureScope;
9 import '../common/names.dart' show 9 import '../common/names.dart' show
10 Names, 10 Names,
(...skipping 631 matching lines...) Expand 10 before | Expand all | Expand 10 after
642 // Throw away the result of visiting the expression. 642 // Throw away the result of visiting the expression.
643 // Instead we return the result of visiting the CascadeReceiver. 643 // Instead we return the result of visiting the CascadeReceiver.
644 visit(node.expression); 644 visit(node.expression);
645 ir.Primitive receiver = _currentCascadeReceiver; 645 ir.Primitive receiver = _currentCascadeReceiver;
646 _currentCascadeReceiver = oldCascadeReceiver; 646 _currentCascadeReceiver = oldCascadeReceiver;
647 return receiver; 647 return receiver;
648 } 648 }
649 649
650 // ## Sends ## 650 // ## Sends ##
651 @override 651 @override
652 ir.Primitive visitAssert(ast.Send node, ast.Node condition, _) {
653 assert(irBuilder.isOpen);
654 if (compiler.enableUserAssertions) {
655 return giveup(node, 'assert in checked mode not implemented');
656 } else {
657 // The call to assert and its argument expression must be ignored
658 // in production mode.
659 // Assertions can only occur in expression statements, so no value needs
660 // to be returned.
661 return null;
662 }
663 }
664
665 @override
666 void previsitDeferredAccess(ast.Send node, PrefixElement prefix, _) { 652 void previsitDeferredAccess(ast.Send node, PrefixElement prefix, _) {
667 giveup(node, 'deferred access is not implemented'); 653 giveup(node, 'deferred access is not implemented');
668 } 654 }
669 655
670 ir.Primitive visitNamedArgument(ast.NamedArgument node) { 656 ir.Primitive visitNamedArgument(ast.NamedArgument node) {
671 assert(irBuilder.isOpen); 657 assert(irBuilder.isOpen);
672 return visit(node.expression); 658 return visit(node.expression);
673 } 659 }
674 660
675 @override 661 @override
(...skipping 2725 matching lines...) Expand 10 before | Expand all | Expand 10 after
3401 if (compiler.backend.isForeign(function)) { 3387 if (compiler.backend.isForeign(function)) {
3402 return handleForeignCode(node, function, argumentList, callStructure); 3388 return handleForeignCode(node, function, argumentList, callStructure);
3403 } else { 3389 } else {
3404 return irBuilder.buildStaticFunctionInvocation(function, callStructure, 3390 return irBuilder.buildStaticFunctionInvocation(function, callStructure,
3405 translateStaticArguments(argumentList, function, callStructure), 3391 translateStaticArguments(argumentList, function, callStructure),
3406 sourceInformation: 3392 sourceInformation:
3407 sourceInformationBuilder.buildCall(node, node.selector)); 3393 sourceInformationBuilder.buildCall(node, node.selector));
3408 } 3394 }
3409 } 3395 }
3410 } 3396 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698