I agree there is a problem here, and the mental model I want is for the
language to act “as if” the default implementation of the protocol
requirement “had actually been” implemented by each type which uses it.

In particular, if a class uses a default implementation for one of its
protocol requirements, I want its subclasses to use the “override” keyword
when implementing that method. After all the parent class *does* have a
version of that method which can be called, it just happens to have
received that version by default.

So, for the example in your proposal, I would prefer that the subclass
write “override func doTheSecondThing()”.

Nevin
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to