| Index: dart/pkg/compiler/lib/src/scanner/parser_task.dart
|
| diff --git a/dart/pkg/compiler/lib/src/scanner/parser_task.dart b/dart/pkg/compiler/lib/src/scanner/parser_task.dart
|
| index 0a9b8493e46898aaecf4db6fad817c4a9f678930..af9a013ee54851e2477d638cfeffabcb9a9216c1 100644
|
| --- a/dart/pkg/compiler/lib/src/scanner/parser_task.dart
|
| +++ b/dart/pkg/compiler/lib/src/scanner/parser_task.dart
|
| @@ -16,7 +16,12 @@ class ParserTask extends CompilerTask {
|
| return measure(() {
|
| NodeListener listener = new NodeListener(compiler, null);
|
| Parser parser = new Parser(listener);
|
| - parser.parseUnit(token);
|
| + try {
|
| + parser.parseUnit(token);
|
| + } on ParserError catch (e) {
|
| + assert(invariant(token, compiler.compilationFailed));
|
| + return listener.makeNodeList(0, null, null, '\n');
|
| + }
|
| Node result = listener.popNode();
|
| assert(listener.nodes.isEmpty);
|
| return result;
|
|
|