261 lines
4.6 KiB
Dart
261 lines
4.6 KiB
Dart
// 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();
|
|
}
|