[swift-evolution] Make non-void functions @warn_unused_result by default

Haravikk swift-evolution at haravikk.me
Wed Feb 24 18:08:46 CST 2016


> On 24 Feb 2016, at 23:44, Janosch Hildebrand <jnosh at jnosh.com> wrote:
> 
> Thanks for the encouragement everyone! I’ll start drafting over the weekend.
> 
> With regard to the inverted attribute, that is definitely open to discussion.
> Other variants that had been mentioned previously include:
> 
> @suppress_unused_result - suggested by Adrian Kashivskyy
> @allow_unused_result - suggested by Kevin Ballard
> @ignoreresult - suggested by Brent Royal-Gordon
> 
> Also the aforementioned “Modernizing Attribute Case and Attribute Argument Naming” proposal[1] will also play into this discussion as well.
> 
> [1] https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160215/010510.html <https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160215/010510.html>
> 
> - Janosch

While I like the brevity, I don’t think @ignoreresult is clear enough on what it does, @optional_result (or ideally @optionalResult if camel-case for attributes is accepted) is clearer I think if we want a shortened two-word form. Or there’s Sean’s @discardable_result alternative which is even clearer.

Otherwise @allow_unused_result is the best of the three word options I think; @suppress_unused_result is a bit unclear as what you’re actually suppressing is the compiler warning, as in most cases a result will still be generated, it’s just not stored anywhere at the call site.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.swift.org/pipermail/swift-evolution/attachments/20160225/0632e42e/attachment.html>


More information about the swift-evolution mailing list