Adjust explicit_instantiation_syntax_test

This test used `..` as a continuationToken (that is, it did not expect
a syntax error for `g(C<int, int> .. toString())`). This CL changes the
test to expect that to be a syntax error, and also eliminates the
static warning caused by using `?.` on a receiver with a known non-null
value (that's not relevant to the topic of this test, I just didn't
avoid it when the tests were written).

Change-Id: I275de6423710c3a598bedd2f54f4e9e7463a6d04
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/212587
Auto-Submit: Erik Ernst <eernst@google.com>
Commit-Queue: Jens Johansen <jensj@google.com>
Reviewed-by: Jens Johansen <jensj@google.com>
This commit is contained in:
Erik Ernst
2021-09-08 06:51:34 +00:00
committed by commit-bot@chromium.org
parent 3dc34806da
commit 02b2e6c23f
@@ -42,6 +42,7 @@ void g(_) {}
void h(_1, [_2]) {}
int i = 0;
bool boolVar = true;
class Test {
var x;
@@ -108,16 +109,17 @@ class Test {
g(C<int, int> . named());
g(C<int, int> .. toString());
h(C<int, int> .. toString()); //# 13: syntax error
g((C<int, int>) .. toString());
h(C<int, int> ...); //# 13: syntax error
h(C<int, int> ...); //# 14: syntax error
h(C<int, int> ...?); //# 14: syntax error
h(C<int, int> ...?); //# 15: syntax error
h(C<int, int> / 1); //# 15: syntax error
h(C<int, int> / 1); //# 16: syntax error
g((C<int, int>) / 1);
g(C<int, int> /**/); //# 16: ok
g(C<int, int> /**/); //# 17: ok
f(C<int, int> /**/ - 1);
g(C<int, int> //
@@ -126,38 +128,38 @@ class Test {
-
1);
h(C<int, int> /= 1); //# 17: syntax error
h(C<int, int> /= 1); //# 18: syntax error
g({C<int, int> : 1});
C<int, int> ; //# 18: ok
C<int, int> ; //# 19: ok
h(C<int, int> < 1); //# 19: syntax error
h(C<int, int> < 1); //# 20: syntax error
g((C<int, int>) < 1);
h(C<int, int> << 1); //# 20: syntax error
h(C<int, int> << 1); //# 21: syntax error
g((C<int, int>) << 1);
h(C<int, int> <<= 1); //# 21: syntax error
h(C<int, int> <<= 1); //# 22: syntax error
h(C<int, int> <= 1); //# 22: syntax error
h(C<int, int> <= 1); //# 23: syntax error
g((C<int, int>) <= 1);
h(C<int, int> = 1); //# 23: syntax error
h(C<int, int> = 1); //# 24: syntax error
g(C<int, int> == 1);
h(C<int, int> =>); //# 24: syntax error
h(C<int, int> =>); //# 25: syntax error
// The operator `>>` is a single token in the grammar.
h(C<int, int> > 1); //# 25: syntax error
h(C<int, int> > 1); //# 26: syntax error
h((C<int, int>) > 1);
h(true + C<int, int> ? 1 : 1); //# 26: syntax error
h(true + C<int, int> ? 1 : 1); //# 27: syntax error
g(true + (C<int, int>) ? 1 : 1);
g(C<int, int> ?. toString()); //# 27: syntax error
g((C<int, int>) ?. toString()); //# 28: static type warning
g(C<int, int> ?. toString()); //# 28: syntax error
g((boolVar ? null : C<int, int>) ?. toString());
h(C<int, int> ?.. toString()); //# 29: syntax error