[swift-evolution] Make non-void functions @warn_unused_result by default
David Owens II
david at owensd.io
Wed Mar 2 14:13:39 CST 2016
It feels like there are three basic groups of APIs:
An API that returns a result that should be used.
An API that returns a result that can be used.
An API that returns no result (void).
I completely agree that if a result is returned, the intent of the API is more than likely expecting the caller to use it.
My primary preference is to just say that's the way it is. I don't particular like any of the attributes. Also, we have a mechanism to discard the result already:
let _ = discardableResult()
For resiliency, is adding a `@discardable` attribute a breaking change? Removing it?
So +1 on changing the default to always warn on unused results, -1 on implementing an attribute to allow API designers to mark it as discardable; I'd rather have a `void` overload that did it instead an attribute.
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the swift-evolution