Skip to content

Commit ab56cc0

Browse files
authored
Remove property-override-method error (#34494)
Originally removed incorrectly along with method-override-property error in #24343, then both were restored in #33509. Only method-override-property should be an error, since it doesn't actually work at runtime.
1 parent d8d5ead commit ab56cc0

6 files changed

+4
-79
lines changed

src/compiler/checker.ts

+4-6
Original file line numberDiff line numberDiff line change
@@ -31692,15 +31692,13 @@ namespace ts {
3169231692
}
3169331693
}
3169431694
else if (isPrototypeProperty(base)) {
31695-
if (isPrototypeProperty(derived)) {
31696-
// method is overridden with method -- correct case
31695+
if (isPrototypeProperty(derived) || derived.flags & SymbolFlags.Property) {
31696+
// method is overridden with method or property -- correct case
3169731697
continue;
3169831698
}
31699-
else if (derived.flags & SymbolFlags.Accessor) {
31700-
errorMessage = Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor;
31701-
}
3170231699
else {
31703-
errorMessage = Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_property;
31700+
Debug.assert(!!(derived.flags & SymbolFlags.Accessor));
31701+
errorMessage = Diagnostics.Class_0_defines_instance_member_function_1_but_extended_class_2_defines_it_as_instance_member_accessor;
3170431702
}
3170531703
}
3170631704
else if (base.flags & SymbolFlags.Accessor) {

src/compiler/diagnosticMessages.json

-4
Original file line numberDiff line numberDiff line change
@@ -1561,10 +1561,6 @@
15611561
"category": "Error",
15621562
"code": 2423
15631563
},
1564-
"Class '{0}' defines instance member function '{1}', but extended class '{2}' defines it as instance member property.": {
1565-
"category": "Error",
1566-
"code": 2424
1567-
},
15681564
"Class '{0}' defines instance member property '{1}', but extended class '{2}' defines it as instance member function.": {
15691565
"category": "Error",
15701566
"code": 2425

tests/baselines/reference/checkJsFiles_noErrorLocation.errors.txt

-25
This file was deleted.

tests/baselines/reference/inheritanceMemberPropertyOverridingMethod.errors.txt

-15
This file was deleted.

tests/baselines/reference/propertyOverridesMethod.errors.txt

-13
This file was deleted.

tests/baselines/reference/propertyOverridingPrototype.errors.txt

-16
This file was deleted.

0 commit comments

Comments
 (0)