| Index: pkg/compiler/lib/src/scanner/listener.dart
|
| diff --git a/pkg/compiler/lib/src/scanner/listener.dart b/pkg/compiler/lib/src/scanner/listener.dart
|
| index c3299a3c5eed23f18200e199e261c94cf84b49ea..6cc299822c1ab100c3339b572af0b940e31d37a7 100644
|
| --- a/pkg/compiler/lib/src/scanner/listener.dart
|
| +++ b/pkg/compiler/lib/src/scanner/listener.dart
|
| @@ -472,7 +472,8 @@ class Listener {
|
| void handleEmptyStatement(Token token) {
|
| }
|
|
|
| - void handleAssertStatement(Token assertKeyword, Token semicolonToken) {
|
| + void handleAssertStatement(Token assertKeyword,
|
| + Token commaToken, Token semicolonToken) {
|
| }
|
|
|
| /** Called with either the token containing a double literal, or
|
| @@ -2210,11 +2211,16 @@ class NodeListener extends ElementListener {
|
| }
|
| }
|
|
|
| - void handleAssertStatement(Token assertKeyword, Token semicolonToken) {
|
| - NodeList arguments = popNode();
|
| - Node selector = new Identifier(assertKeyword);
|
| - Node send = new Send(null, selector, arguments);
|
| - pushNode(new ExpressionStatement(send, semicolonToken));
|
| + void handleAssertStatement(Token assertKeyword,
|
| + Token commaToken, Token semicolonToken) {
|
| + Node message;
|
| + Node condition;
|
| + if (commaToken != null) {
|
| + message = popNode();
|
| + }
|
| + condition = popNode();
|
| + pushNode(new Assert(assertKeyword, condition,
|
| + message, semicolonToken));
|
| }
|
|
|
| void endUnnamedFunction(Token token) {
|
|
|