[swift-evolution] [swift-evolution-announce] [Review] SE-0047 Defaulting non-Void functions so they warn on unused results

Brent Royal-Gordon brent at architechies.com
Thu Mar 17 11:52:16 CDT 2016

> 	• All my code has been thoroughly pre-audited and the transition will be painful.
> If adopted, this proposal will incur negative costs for some developers. I believe the benefits for the language and the wider community outweigh the negatives.

I think this was in response to a statement I made, so I'd like to make two clarifications:

* I do not personally have a fully audited codebase. Actually, I'm not sure I've ever used @warn_unused_result in anger—it's just too much work. Nevertheless, some people have, and I feel bad for them.

* I emphatically do *not* think that means we should keep the current behavior. I think the people who have already audited would be the first to endorse this change. I merely think we should offer them better migration support.

Please understand: If you have done a reasonably thorough audit, deleting the annotations instead of inverting them is a *destructive* change. When Swift 2 changed the documentation format, the migrator didn't delete all the old doc comments. Deleting @warn_unused_result in audited codebases is akin to that.

Brent Royal-Gordon

More information about the swift-evolution mailing list