46 lines
2.7 KiB
Plaintext
46 lines
2.7 KiB
Plaintext
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(10,7): error TS2515: Non-abstract class 'C<T>' does not implement inherited abstract member 'bar' from class 'A<T>'.
|
|
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(10,7): error TS2515: Non-abstract class 'C<T>' does not implement inherited abstract member 'foo' from class 'A<T>'.
|
|
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(12,7): error TS2515: Non-abstract class 'D' does not implement inherited abstract member 'bar' from class 'A<number>'.
|
|
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(12,7): error TS2515: Non-abstract class 'D' does not implement inherited abstract member 'foo' from class 'A<number>'.
|
|
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(14,7): error TS2515: Non-abstract class 'E<T>' does not implement inherited abstract member 'bar' from class 'A<T>'.
|
|
tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts(18,7): error TS2515: Non-abstract class 'F<T>' does not implement inherited abstract member 'foo' from class 'A<T>'.
|
|
|
|
|
|
==== tests/cases/conformance/classes/classDeclarations/classAbstractKeyword/classAbstractGeneric.ts (6 errors) ====
|
|
abstract class A<T> {
|
|
t: T;
|
|
|
|
abstract foo(): T;
|
|
abstract bar(t: T);
|
|
}
|
|
|
|
abstract class B<T> extends A<T> {}
|
|
|
|
class C<T> extends A<T> {} // error -- inherits abstract methods
|
|
~
|
|
!!! error TS2515: Non-abstract class 'C<T>' does not implement inherited abstract member 'bar' from class 'A<T>'.
|
|
~
|
|
!!! error TS2515: Non-abstract class 'C<T>' does not implement inherited abstract member 'foo' from class 'A<T>'.
|
|
|
|
class D extends A<number> {} // error -- inherits abstract methods
|
|
~
|
|
!!! error TS2515: Non-abstract class 'D' does not implement inherited abstract member 'bar' from class 'A<number>'.
|
|
~
|
|
!!! error TS2515: Non-abstract class 'D' does not implement inherited abstract member 'foo' from class 'A<number>'.
|
|
|
|
class E<T> extends A<T> { // error -- doesn't implement bar
|
|
~
|
|
!!! error TS2515: Non-abstract class 'E<T>' does not implement inherited abstract member 'bar' from class 'A<T>'.
|
|
foo() { return this.t; }
|
|
}
|
|
|
|
class F<T> extends A<T> { // error -- doesn't implement foo
|
|
~
|
|
!!! error TS2515: Non-abstract class 'F<T>' does not implement inherited abstract member 'foo' from class 'A<T>'.
|
|
bar(t : T) {}
|
|
}
|
|
|
|
class G<T> extends A<T> {
|
|
foo() { return this.t; }
|
|
bar(t: T) { }
|
|
} |