blob: c690844d684632776ffea3e271868b4b1c2896de [file] [log] [blame]
// Copyright (c) 2019, 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 file.
/// @assertion Let C be a class, let A be a superclass of C, and let S1...Sk
/// be superclasses of C that are also subclasses of A. C inherits all
/// accessible instance members of A that have not been overridden by a
/// declaration in C or in at least one of S1...Sk.
/// A class may override instance members that would otherwise have been
/// inherited from its superclass.
/// @description Checks that a subclass inherits the instance members of its
/// superclass(es). Test type aliases
/// @author sgrekhov@unipro.ru
import "../../../../Utils/expect.dart";
class A {
int val = 0;
}
typedef AAlias = A;
class B extends AAlias {
foo() {
++val;
}
}
class C extends B {}
main() {
C c = new C();
c.val = 5;
Expect.equals(5, c.val);
c.foo();
Expect.equals(6, c.val);
}