If you override the method in a subclass the warning part will also be overridden, so I don't see why we need this `if`