tests/cases/conformance/override/override7.ts(11,14): error TS1040: 'override' modifier cannot be used in an ambient context. tests/cases/conformance/override/override7.ts(13,14): error TS1029: 'override' modifier must precede 'readonly' modifier. tests/cases/conformance/override/override7.ts(17,21): error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. tests/cases/conformance/override/override7.ts(19,14): error TS1030: 'override' modifier already seen. tests/cases/conformance/override/override7.ts(19,23): error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. tests/cases/conformance/override/override7.ts(21,21): error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. tests/cases/conformance/override/override7.ts(22,14): error TS1029: 'public' modifier must precede 'override' modifier. tests/cases/conformance/override/override7.ts(22,21): error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. tests/cases/conformance/override/override7.ts(24,5): error TS1089: 'override' modifier cannot appear on a constructor declaration. tests/cases/conformance/override/override7.ts(36,14): error TS1029: 'abstract' modifier must precede 'override' modifier. tests/cases/conformance/override/override7.ts(41,14): error TS1029: 'abstract' modifier must precede 'override' modifier. tests/cases/conformance/override/override7.ts(41,23): error TS4112: This member cannot have an 'override' modifier because its containing class 'AND' does not extend another class. tests/cases/conformance/override/override7.ts(42,23): error TS4112: This member cannot have an 'override' modifier because its containing class 'AND' does not extend another class. ==== tests/cases/conformance/override/override7.ts (13 errors) ==== class B { p1: number = 1; p2: number = 2; p3: number = 3; p4: number = 4; } class D extends B{ declare p1: number override declare p2: number; ~~~~~~~ !!! error TS1040: 'override' modifier cannot be used in an ambient context. readonly override p3: number; ~~~~~~~~ !!! error TS1029: 'override' modifier must precede 'readonly' modifier. override readonly p4: number; static override sp: number; ~~ !!! error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. override override oop: number; ~~~~~~~~ !!! error TS1030: 'override' modifier already seen. ~~~ !!! error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. public override pp: number; ~~ !!! error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. override public op: number; ~~~~~~ !!! error TS1029: 'public' modifier must precede 'override' modifier. ~~ !!! error TS4113: This member cannot have an 'override' modifier because it is not declared in the base class 'B'. override constructor () { ~~~~~~~~ !!! error TS1089: 'override' modifier cannot appear on a constructor declaration. super(); } } abstract class AB { abstract f (): void; abstract b (): void; } abstract class AD extends AB { override abstract f(): void; ~~~~~~~~ !!! error TS1029: 'abstract' modifier must precede 'override' modifier. abstract override b(): void; } abstract class AND { override abstract f(): void; ~~~~~~~~ !!! error TS1029: 'abstract' modifier must precede 'override' modifier. ~ !!! error TS4112: This member cannot have an 'override' modifier because its containing class 'AND' does not extend another class. abstract override b(): void; ~ !!! error TS4112: This member cannot have an 'override' modifier because its containing class 'AND' does not extend another class. } class ADD extends AD { override f(): void { } override b(): void { } }