mirror of
https://github.com/dart-lang/sdk
synced 2024-10-04 15:51:41 +00:00
Revert "update fasta scanner to always generate INDEX or INDEX_EQ tokens"
This reverts commit b8d318e94e
.
Review-Url: https://codereview.chromium.org/2746543007 .
This commit is contained in:
parent
c330fc471f
commit
75c23fec4b
|
@ -386,10 +386,7 @@ class Unparser extends Indentation implements Visitor {
|
|||
if (node.nodes != null) {
|
||||
unparseNodeListFrom(node, node.nodes, spaces: spaces);
|
||||
}
|
||||
// if "[]" then beginToken == endToken ... only write beginToken
|
||||
if (node.endToken != null && node.endToken != node.beginToken) {
|
||||
write(node.endToken.lexeme);
|
||||
}
|
||||
if (node.endToken != null) write(node.endToken.lexeme);
|
||||
}
|
||||
|
||||
visitNodeList(NodeList node) {
|
||||
|
|
|
@ -492,10 +492,6 @@ class Parser {
|
|||
token = parseOptionalFormalParameters(token, true,
|
||||
inFunctionType: inFunctionType);
|
||||
break;
|
||||
} else if (identical(value, '[]')) {
|
||||
reportRecoverableError(token,
|
||||
ErrorKind.EmptyOptionalParameterList);
|
||||
break;
|
||||
}
|
||||
token = parseFormalParameter(token, FormalParameterType.REQUIRED,
|
||||
inFunctionType: inFunctionType);
|
||||
|
|
|
@ -435,7 +435,11 @@ abstract class AbstractScanner implements Scanner {
|
|||
// [ [] []=
|
||||
next = advance();
|
||||
if (identical(next, $CLOSE_SQUARE_BRACKET)) {
|
||||
return select($EQ, INDEX_EQ_INFO, INDEX_INFO);
|
||||
Token token = previousToken();
|
||||
if (token is KeywordToken && token.keyword.syntax == 'operator' ||
|
||||
token is SymbolToken && token.info == HASH_INFO) {
|
||||
return select($EQ, INDEX_EQ_INFO, INDEX_INFO);
|
||||
}
|
||||
}
|
||||
appendBeginGroup(OPEN_SQUARE_BRACKET_INFO);
|
||||
return next;
|
||||
|
|
|
@ -155,6 +155,22 @@ class ScannerTest_Fasta extends ScannerTestBase {
|
|||
super.test_comment_generic_method_type_list();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_index() {
|
||||
// TODO(paulberry,ahe): "[]" should be parsed as a single token.
|
||||
// See dartbug.com/28665.
|
||||
super.test_index();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_index_eq() {
|
||||
// TODO(paulberry,ahe): "[]=" should be parsed as a single token.
|
||||
// See dartbug.com/28665.
|
||||
super.test_index_eq();
|
||||
}
|
||||
|
||||
@override
|
||||
@failingTest
|
||||
void test_mismatched_closer() {
|
||||
|
|
Loading…
Reference in a new issue