Call computeType rather than parseType
Change-Id: I4d67e8742997181775320b596443ea9dd78be60d
Reviewed-on: https://dart-review.googlesource.com/56241
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Dan Rubel <danrubel@google.com>
diff --git a/pkg/analyzer/test/src/fasta/recovery/partial_code/try_statement_test.dart b/pkg/analyzer/test/src/fasta/recovery/partial_code/try_statement_test.dart
index af85dc1..d9da37e 100644
--- a/pkg/analyzer/test/src/fasta/recovery/partial_code/try_statement_test.dart
+++ b/pkg/analyzer/test/src/fasta/recovery/partial_code/try_statement_test.dart
@@ -43,7 +43,12 @@
ParserErrorCode.EXPECTED_TOKEN
],
"try {} on _s_ {}",
- failing: allExceptEof),
+ failing: [
+ 'block',
+ 'labeled',
+ 'localFunctionNonVoid',
+ 'localFunctionVoid'
+ ]),
new TestDescriptor('on_identifier', 'try {} on A',
[ParserErrorCode.EXPECTED_TOKEN], "try {} on A {}",
failing: ['block']),
diff --git a/pkg/front_end/lib/src/fasta/parser/parser.dart b/pkg/front_end/lib/src/fasta/parser/parser.dart
index a3166a0..66e5dc0 100644
--- a/pkg/front_end/lib/src/fasta/parser/parser.dart
+++ b/pkg/front_end/lib/src/fasta/parser/parser.dart
@@ -5609,7 +5609,7 @@
if (identical(value, 'on')) {
// 'on' type catchPart?
onKeyword = token;
- lastConsumed = parseType(token);
+ lastConsumed = computeType(token, true).ensureTypeNotVoid(token, this);
token = lastConsumed.next;
value = token.stringValue;
}