| Index: pkg/fasta/test/rasta/super.dart
|
| diff --git a/pkg/fasta/test/rasta/super.dart b/pkg/fasta/test/rasta/super.dart
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..ce1f657aa7eb1b91f54dc5c50394017a7a90164c
|
| --- /dev/null
|
| +++ b/pkg/fasta/test/rasta/super.dart
|
| @@ -0,0 +1,260 @@
|
| +// Copyright (c) 2016, the Dart project authors. Please see the AUTHORS file
|
| +// for details. All rights reserved. Use of this source code is governed by a
|
| +// BSD-style license that can be found in the LICENSE.md file.
|
| +
|
| +class A {
|
| + var a;
|
| + var b;
|
| + var c;
|
| + var d;
|
| + get e => null;
|
| + final f;
|
| + set g(_) {}
|
| + get h => null;
|
| + set h(_) {}
|
| + get i => null;
|
| +
|
| + operator [](_) => null;
|
| + operator []=(a, b) {}
|
| + operator ~() => 117;
|
| + operator -() => 117;
|
| +
|
| + operator ==(other) => true;
|
| +
|
| + void m() {}
|
| +
|
| + void n() {}
|
| + set n(_) {}
|
| +}
|
| +
|
| +class B extends A {
|
| + get b => null;
|
| + set c(x) {}
|
| + final d;
|
| + set i(x) {}}
|
| +
|
| +
|
| +class C extends B {
|
| + test() {
|
| + ~super;
|
| + use(~super);
|
| + -super;
|
| + use(-super);
|
| + +super;
|
| + use(+super);
|
| + super == 87;
|
| + use(super == 87);
|
| + super != 87;
|
| + use(super != 87);
|
| +
|
| + super.a;
|
| + use(super.a);
|
| + super.b;
|
| + use(super.b);
|
| + super.c;
|
| + use(super.c);
|
| + super.d;
|
| + use(super.d);
|
| + super.e;
|
| + use(super.e);
|
| + super.f;
|
| + use(super.f);
|
| + super.g;
|
| + use(super.g);
|
| + super.h;
|
| + use(super.h);
|
| + super.i;
|
| + use(super.i);
|
| + super[87];
|
| + use(super[87]);
|
| + super.m;
|
| + use(super.m);
|
| + super.n;
|
| + use(super.n);
|
| +
|
| + super.a++;
|
| + use(super.a++);
|
| + super.b++;
|
| + use(super.b++);
|
| + super.c++;
|
| + use(super.c++);
|
| + super.d++;
|
| + use(super.d++);
|
| + super.e++;
|
| + use(super.e++);
|
| + super.f++;
|
| + use(super.f++);
|
| + super.g++;
|
| + use(super.g++);
|
| + super.h++;
|
| + use(super.h++);
|
| + super.i++;
|
| + use(super.i++);
|
| + super[87]++;
|
| + use(super[87]++);
|
| + super.m++;
|
| + use(super.m++);
|
| + super.n++;
|
| + use(super.n++);
|
| +
|
| + ++super.a;
|
| + use(++super.a);
|
| + ++super.b;
|
| + use(++super.b);
|
| + ++super.c;
|
| + use(++super.c);
|
| + ++super.d;
|
| + use(++super.d);
|
| + ++super.e;
|
| + use(++super.e);
|
| + ++super.f;
|
| + use(++super.f);
|
| + ++super.g;
|
| + use(++super.g);
|
| + ++super.h;
|
| + use(++super.h);
|
| + ++super.i;
|
| + use(++super.i);
|
| + ++super[87];
|
| + use(++super[87]);
|
| + ++super.m;
|
| + use(++super.m);
|
| + ++super.n;
|
| + use(++super.n);
|
| +
|
| + super.a();
|
| + use(super.a());
|
| + super.b();
|
| + use(super.b());
|
| + super.c();
|
| + use(super.c());
|
| + super.d();
|
| + use(super.d());
|
| + super.e();
|
| + use(super.e());
|
| + super.f();
|
| + use(super.f());
|
| + super.g();
|
| + use(super.g());
|
| + super.h();
|
| + use(super.h());
|
| + super.i();
|
| + use(super.i());
|
| + super[87]();
|
| + use(super[87]());
|
| + super.m();
|
| + use(super.m());
|
| + super.m(87);
|
| + use(super.m(87));
|
| + super.n(87);
|
| + use(super.n(87));
|
| +
|
| + super.a = 42;
|
| + use(super.a = 42);
|
| + super.b = 42;
|
| + use(super.b = 42);
|
| + super.c = 42;
|
| + use(super.c = 42);
|
| + super.d = 42;
|
| + use(super.d = 42);
|
| + super.e = 42;
|
| + use(super.e = 42);
|
| + super.f = 42;
|
| + use(super.f = 42);
|
| + super.g = 42;
|
| + use(super.g = 42);
|
| + super.h = 42;
|
| + use(super.h = 42);
|
| + super.i = 42;
|
| + use(super.i = 42);
|
| + super[87] = 42;
|
| + use(super[87] = 42);
|
| + super.m = 42;
|
| + use(super.m = 42);
|
| + super.n = 42;
|
| + use(super.n = 42);
|
| +
|
| + super.a ??= 42;
|
| + use(super.a ??= 42);
|
| + super.b ??= 42;
|
| + use(super.b ??= 42);
|
| + super.c ??= 42;
|
| + use(super.c ??= 42);
|
| + super.d ??= 42;
|
| + use(super.d ??= 42);
|
| + super.e ??= 42;
|
| + use(super.e ??= 42);
|
| + super.f ??= 42;
|
| + use(super.f ??= 42);
|
| + super.g ??= 42;
|
| + use(super.g ??= 42);
|
| + super.h ??= 42;
|
| + use(super.h ??= 42);
|
| + super.i ??= 42;
|
| + use(super.i ??= 42);
|
| + super[87] ??= 42;
|
| + use(super[87] ??= 42);
|
| + super.m ??= 42;
|
| + use(super.m ??= 42);
|
| + super.n ??= 42;
|
| + use(super.n ??= 42);
|
| +
|
| + super.a += 42;
|
| + use(super.a += 42);
|
| + super.b += 42;
|
| + use(super.b += 42);
|
| + super.c += 42;
|
| + use(super.c += 42);
|
| + super.d += 42;
|
| + use(super.d += 42);
|
| + super.e += 42;
|
| + use(super.e += 42);
|
| + super.f += 42;
|
| + use(super.f += 42);
|
| + super.g += 42;
|
| + use(super.g += 42);
|
| + super.h += 42;
|
| + use(super.h += 42);
|
| + super.i += 42;
|
| + use(super.i += 42);
|
| + super[87] += 42;
|
| + use(super[87] += 42);
|
| + super.m += 42;
|
| + use(super.m += 42);
|
| + super.n += 42;
|
| + use(super.n += 42);
|
| +
|
| + super.a -= 42;
|
| + use(super.a -= 42);
|
| + super.b -= 42;
|
| + use(super.b -= 42);
|
| + super.c -= 42;
|
| + use(super.c -= 42);
|
| + super.d -= 42;
|
| + use(super.d -= 42);
|
| + super.e -= 42;
|
| + use(super.e -= 42);
|
| + super.f -= 42;
|
| + use(super.f -= 42);
|
| + super.g -= 42;
|
| + use(super.g -= 42);
|
| + super.h -= 42;
|
| + use(super.h -= 42);
|
| + super.i -= 42;
|
| + use(super.i -= 42);
|
| + super[87] -= 42;
|
| + use(super[87] -= 42);
|
| + super.m -= 42;
|
| + use(super.m -= 42);
|
| + super.n -= 42;
|
| + use(super.n -= 42);
|
| + }
|
| +}
|
| +
|
| +use(x) {
|
| + if (x == new DateTime.now().millisecondsSinceEpoch) throw "Shouldn't happen";
|
| +}
|
| +
|
| +main() {
|
| + new C().test();
|
| +}
|
|
|