<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">Le 15 oct. 2017 à 15:52, Mike Kluev via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" class="">swift-evolution@swift.org</a>&gt; a écrit :</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">On 15 October 2017 at 14:23, Geordie Jay <span dir="ltr" class="">&lt;<a href="mailto:geojay@gmail.com" target="_blank" class="">geojay@gmail.com</a>&gt;</span> wrote:<br class=""><div class="gmail_extra"><div class="gmail_quote"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class="gmail_extra">Hi Mike,</div><div class="gmail_extra"><br class=""><div class="gmail_quote"><span class="gmail-">2017-10-15 14:55 GMT+02:00 Mike Kluev <span dir="ltr" class="">&lt;<a href="mailto:mike.kluev@gmail.com" target="_blank" class="">mike.kluev@gmail.com</a>&gt;</span>:<br class=""><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><span class="gmail-m_-5303066719502610215gmail-">On 15 October 2017 at 13:35, Geordie Jay <span dir="ltr" class="">&lt;<a href="mailto:geojay@gmail.com" target="_blank" class="">geojay@gmail.com</a>&gt;</span> wrote:</span><div class="gmail_extra"><div class="gmail_quote"><span class="gmail-m_-5303066719502610215gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="ltr" class=""><div class="">Also we're not talking about whether the Bool itself is discardable. For example, it makes no sense to write:</div><div class=""><br class=""></div><div class=""><b class="">let something: discardable Bool = true</b></div></div></blockquote><div class=""><br class=""></div></span><div class="">you can't write this either:</div><div class=""><br class=""></div><div class="">let something: inout Bool = true</div><div class=""><br class=""></div><div class="">that doesn't mean "inout" should be "@inputOutput" before the parameter name in function signature.</div></div></div></div></blockquote><div class=""><br class=""></div></span><div class="">This is a different case: inout is an annotation on argument types (of which there can be many).</div></div></div></div></blockquote><div class=""><br class=""></div><div class="">i mean:</div><div class=""><br class=""></div><div class="">@discardableResult func foo(@inputOutput x: Int, @inputOutput y: Float) -&gt; Bool&nbsp;</div><div class=""><br class=""></div><div class="">vs:</div><div class=""><br class=""></div><div class="">func goo(x: inout Int, y: inout y) -&gt; discardable Bool</div><div class=""><br class=""></div></div></div></div></div></blockquote><div><br class=""></div><div>inout and discardableResult are fundamentally different. Inout change the calling convention and the way the parameter is passed. discardableResult is just an annotation to help catching bad function usage by warning the developer about it.</div><div><br class=""></div><div><br class=""></div></div></body></html>