> On 17 Aug 2016, at 02:49, Boris Wang via swift-evolution 
> <[email protected]> wrote:
> 
> Why the callback is special ?
> 
> The compiler should has a warning for unused parameters of function.
> 
> I think this is enough. More works should be leaved for a lint tool.

Actually I think that that kind of warning should be left for linters as well; 
a protocol might define parameters that not all implementations use, or a type 
may define a method with a parameter that is intended only for future use (to 
avoid defining an overload later), these aren't necessarily problems.

Also, how do you want to define unused? I suppose a non-escaping closure is 
unused if it's never called (since it can't be stored), but that doesn't 
guarantee that it *will* be called, which is the point of this proposal, i.e- a 
non-escaping closure may be part of a loop that may not execute, which is fine 
since it has no requirement to be used in every call, only that it isn't stored.

So yeah, even if a warning like this could be done right, I'm not sure it 
replaces the case put forward for @required.
_______________________________________________
swift-evolution mailing list
[email protected]
https://lists.swift.org/mailman/listinfo/swift-evolution

Reply via email to