Fix for parsing empty compilation units with Fasta.
R=paulberry@google.com BUG= Review-Url: https://codereview.chromium.org/2738693003 .
This commit is contained in:
@@ -1240,13 +1240,6 @@ class TopLevelParserTest_Fasta extends FastaParserTestCase
|
||||
super.test_parseCompilationUnit_builtIn_asFunctionName();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_parseCompilationUnit_empty() {
|
||||
// TODO(paulberry): No objects placed on stack
|
||||
super.test_parseCompilationUnit_empty();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_parseCompilationUnit_exportAsPrefix() {
|
||||
@@ -1297,13 +1290,6 @@ class TopLevelParserTest_Fasta extends FastaParserTestCase
|
||||
super.test_parseDirectives_complete();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_parseDirectives_empty() {
|
||||
// TODO(paulberry): No objects placed on stack
|
||||
super.test_parseDirectives_empty();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_parseDirectives_mixed() {
|
||||
|
||||
@@ -852,14 +852,17 @@ class AstBuilder extends ScopeListener {
|
||||
var directives = <Directive>[];
|
||||
var declarations = <CompilationUnitMember>[];
|
||||
analyzer.Token endToken = null; // TODO(paulberry)
|
||||
for (AstNode node in popList(count)) {
|
||||
if (node is Directive) {
|
||||
directives.add(node);
|
||||
} else if (node is CompilationUnitMember) {
|
||||
declarations.add(node);
|
||||
} else {
|
||||
internalError(
|
||||
'Unrecognized compilation unit member: ${node.runtimeType}');
|
||||
List<Object> elements = popList(count);
|
||||
if (elements != null) {
|
||||
for (AstNode node in elements) {
|
||||
if (node is Directive) {
|
||||
directives.add(node);
|
||||
} else if (node is CompilationUnitMember) {
|
||||
declarations.add(node);
|
||||
} else {
|
||||
internalError(
|
||||
'Unrecognized compilation unit member: ${node.runtimeType}');
|
||||
}
|
||||
}
|
||||
}
|
||||
push(ast.compilationUnit(
|
||||
|
||||
Reference in New Issue
Block a user