TP0227
Error: missing or unneeded @override
Messages
Section titled “Messages”'<m>' overrides '<B>.<m>'; mark it '@override''<m>' does not override a method of <a base class|'<B>'>'__init__' cannot be marked '@override'
Example
Section titled “Example”From the golden case tests/cases/m15/tp0227_override.tpn:
# Overrides must be marked @override, and only overrides may be (SPEC §4.3).class Animal: def __init__(self): pass
def speak(self) -> str: return "..."
class Dog(Animal): def speak(self) -> str: return "woof"
@override def speek(self) -> str: return "typo"
@override def __init__(self): super().__init__()
class Lone: @override def m(self): passThe compiler reports:
tp0227_override.tpn:10:9: error TP0227: 'speak' overrides 'Animal.speak'; mark it '@override'tp0227_override.tpn:14:9: error TP0227: 'speek' does not override a method of 'Animal'tp0227_override.tpn:18:9: error TP0227: '__init__' cannot be marked '@override'tp0227_override.tpn:23:9: error TP0227: 'm' does not override a method of a base classThe specification lists every code.
© 2026 Discover Edge, LLC · Taipan is released under the MIT License.