Index: pkg/analyzer/test/generated/parser_test.dart |
diff --git a/pkg/analyzer/test/generated/parser_test.dart b/pkg/analyzer/test/generated/parser_test.dart |
index 4a4ea6f397c34984ba9e238d7faae66f502b1068..4a60a8ab63ac6210a56d76d75359d7e9f9f9a5f0 100644 |
--- a/pkg/analyzer/test/generated/parser_test.dart |
+++ b/pkg/analyzer/test/generated/parser_test.dart |
@@ -15,6 +15,7 @@ import 'package:analyzer/src/generated/parser.dart'; |
import 'package:analyzer/src/generated/source.dart'; |
import 'package:analyzer/src/generated/testing/token_factory.dart'; |
import 'package:analyzer/src/generated/utilities_dart.dart'; |
+import 'package:front_end/src/scanner/scanner.dart' as fe; |
import 'package:test/test.dart'; |
import 'package:test_reflective_loader/test_reflective_loader.dart'; |
@@ -2522,7 +2523,11 @@ class Foo { |
createParser("'\$x\$'"); |
StringLiteral literal = parser.parseStringLiteral(); |
expectNotNullIfNoErrors(literal); |
- listener.assertErrorsWithCodes([ParserErrorCode.MISSING_IDENTIFIER]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.MISSING_IDENTIFIER |
+ : ParserErrorCode.MISSING_IDENTIFIER |
+ ]); |
} |
void test_expectedInterpolationIdentifier_emptyString() { |
@@ -2532,8 +2537,9 @@ class Foo { |
createParser("'\$\$foo'"); |
StringLiteral literal = parser.parseStringLiteral(); |
expectNotNullIfNoErrors(literal); |
- listener.assertErrors( |
- [new AnalysisError(null, 2, 1, ParserErrorCode.MISSING_IDENTIFIER)]); |
+ listener.assertErrors(fe.Scanner.useFasta |
+ ? [new AnalysisError(null, 2, 1, ScannerErrorCode.MISSING_IDENTIFIER)] |
+ : [new AnalysisError(null, 2, 1, ParserErrorCode.MISSING_IDENTIFIER)]); |
} |
@failingTest |
@@ -2861,14 +2867,23 @@ class Foo { |
void test_functionTypedParameter_incomplete1() { |
// This caused an exception at one point. |
- parseCompilationUnit("void f(int Function(", [ |
- ParserErrorCode.MISSING_FUNCTION_BODY, |
- ParserErrorCode.MISSING_CLOSING_PARENTHESIS, |
- ParserErrorCode.EXPECTED_EXECUTABLE, |
- ParserErrorCode.MISSING_CONST_FINAL_VAR_OR_TYPE, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN |
- ]); |
+ parseCompilationUnit( |
+ "void f(int Function(", |
+ fe.Scanner.useFasta |
+ ? [ |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.MISSING_FUNCTION_BODY, |
+ ParserErrorCode.MISSING_IDENTIFIER, |
+ ] |
+ : [ |
+ ParserErrorCode.MISSING_FUNCTION_BODY, |
+ ParserErrorCode.MISSING_CLOSING_PARENTHESIS, |
+ ParserErrorCode.EXPECTED_EXECUTABLE, |
+ ParserErrorCode.MISSING_CONST_FINAL_VAR_OR_TYPE, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN |
+ ]); |
} |
void test_functionTypedParameter_var() { |
@@ -3041,7 +3056,11 @@ class Foo { |
createParser("'\$1'"); |
StringLiteral literal = parser.parseStringLiteral(); |
expectNotNullIfNoErrors(literal); |
- listener.assertErrorsWithCodes([ParserErrorCode.MISSING_IDENTIFIER]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.MISSING_IDENTIFIER |
+ : ParserErrorCode.MISSING_IDENTIFIER |
+ ]); |
} |
void test_invalidLiteralInConfiguration() { |
@@ -3304,8 +3323,11 @@ class Foo { |
createParser('(int a, int b ;'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener |
- .assertErrorsWithCodes([ParserErrorCode.MISSING_CLOSING_PARENTHESIS]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.MISSING_CLOSING_PARENTHESIS |
+ ]); |
} |
void test_missingConstFinalVarOrType_static() { |
@@ -3578,16 +3600,22 @@ class Foo { |
createParser('(a, {b: 0)'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP |
+ ]); |
} |
void test_missingTerminatorForParameterGroup_optional() { |
createParser('(a, [b = 0)'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.MISSING_TERMINATOR_FOR_PARAMETER_GROUP |
+ ]); |
} |
void test_missingTypedefParameters_nonVoid() { |
@@ -3951,15 +3979,28 @@ m() { |
{ |
'${${ |
''', |
- [ |
- ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ParserErrorCode.EXPECTED_TOKEN, |
- ]); |
+ fe.Scanner.useFasta |
+ ? [ |
+ ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ScannerErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.UNEXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_EXECUTABLE, |
+ ] |
+ : [ |
+ ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ParserErrorCode.EXPECTED_TOKEN, |
+ ]); |
} |
void test_switchHasCaseAfterDefaultCase() { |
@@ -4083,16 +4124,18 @@ main() { |
createParser('(a, b})'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes(fe.Scanner.useFasta |
+ ? [ScannerErrorCode.EXPECTED_TOKEN] |
+ : [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP]); |
} |
void test_unexpectedTerminatorForParameterGroup_optional() { |
createParser('(a, b])'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes(fe.Scanner.useFasta |
+ ? [ScannerErrorCode.EXPECTED_TOKEN] |
+ : [ParserErrorCode.UNEXPECTED_TERMINATOR_FOR_PARAMETER_GROUP]); |
} |
void test_unexpectedToken_endOfFieldDeclarationStatement() { |
@@ -4133,7 +4176,9 @@ void main() { |
var x = "''', |
[ |
ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
- ParserErrorCode.EXPECTED_TOKEN, |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.EXPECTED_TOKEN, |
ParserErrorCode.EXPECTED_TOKEN |
]); |
} |
@@ -4162,7 +4207,9 @@ void main() { |
var x = """''', |
[ |
ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
- ParserErrorCode.EXPECTED_TOKEN, |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.EXPECTED_TOKEN, |
ParserErrorCode.EXPECTED_TOKEN |
]); |
} |
@@ -4177,7 +4224,9 @@ void main() { |
var x = """"''', |
[ |
ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
- ParserErrorCode.EXPECTED_TOKEN, |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.EXPECTED_TOKEN, |
ParserErrorCode.EXPECTED_TOKEN |
]); |
} |
@@ -4192,7 +4241,9 @@ void main() { |
var x = """""''', |
[ |
ScannerErrorCode.UNTERMINATED_STRING_LITERAL, |
- ParserErrorCode.EXPECTED_TOKEN, |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.EXPECTED_TOKEN, |
ParserErrorCode.EXPECTED_TOKEN |
]); |
} |
@@ -4333,16 +4384,18 @@ void main() { |
createParser('(a, {b, c])'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes(fe.Scanner.useFasta |
+ ? [ScannerErrorCode.EXPECTED_TOKEN, ScannerErrorCode.EXPECTED_TOKEN] |
+ : [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP]); |
} |
void test_wrongTerminatorForParameterGroup_optional() { |
createParser('(a, [b, c})'); |
FormalParameterList list = parser.parseFormalParameterList(); |
expectNotNullIfNoErrors(list); |
- listener.assertErrorsWithCodes( |
- [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP]); |
+ listener.assertErrorsWithCodes(fe.Scanner.useFasta |
+ ? [ScannerErrorCode.EXPECTED_TOKEN, ScannerErrorCode.EXPECTED_TOKEN] |
+ : [ParserErrorCode.WRONG_TERMINATOR_FOR_PARAMETER_GROUP]); |
} |
} |
@@ -11263,7 +11316,11 @@ void'''); |
createParser('{'); |
FunctionBody functionBody = parser.parseFunctionBody(false, null, false); |
expectNotNullIfNoErrors(functionBody); |
- listener.assertErrorsWithCodes([ParserErrorCode.EXPECTED_TOKEN]); |
+ listener.assertErrorsWithCodes([ |
+ fe.Scanner.useFasta |
+ ? ScannerErrorCode.EXPECTED_TOKEN |
+ : ParserErrorCode.EXPECTED_TOKEN |
+ ]); |
expect(functionBody, new isInstanceOf<EmptyFunctionBody>()); |
} |