<div dir="ltr">Hey,<div><br></div><div>I thought I would post another message to this thread because I think it was missed when I first sent it (I made the mistake of sending it at 1am San Francisco time, I&#39;m in Australia).</div><div><br></div><div>I appreciate any feedback :)</div><div><br></div><div>Thanks,</div><div>Andrew</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Mar 28, 2016 at 7:21 PM, Andrew Bennett <span dir="ltr">&lt;<a href="mailto:cacoyi@gmail.com" target="_blank">cacoyi@gmail.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div><p style="margin:0px 0px 9px;padding:0px;font-family:&#39;Helvetica Neue&#39;,Helvetica,&#39;Hiragino Sans GB&#39;,Arial,sans-serif;font-size:13px"><font color="#000000">Swift can resolve functions based on the return type. However, when the result is unused a single function often can&#39;t be resolved without explicitly specifying the type.</font></p><pre style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;padding:14px;margin-top:0px;margin-bottom:18px;line-height:16px;font-size:11px;border:1px solid rgb(217,217,217);white-space:pre-wrap;word-wrap:break-word"><code style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;padding:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><font color="#000000">func example() { ... }
func example() -&gt; Int { ... }

example() as Void
example() as Int
</font></code></pre><p style="margin:0px 0px 9px;padding:0px;font-family:&#39;Helvetica Neue&#39;,Helvetica,&#39;Hiragino Sans GB&#39;,Arial,sans-serif;font-size:13px"><font color="#000000">This proposal disambiguates some cases:</font></p><ul style="font-family:&#39;Helvetica Neue&#39;,Helvetica,&#39;Hiragino Sans GB&#39;,Arial,sans-serif;font-size:13px"><li><font color="#000000">Preferring functions with a <code style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;background-color:rgb(254,233,204);padding:1px 3px;font-size:12px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><b>Void</b></code> return type when the result <b>is</b> discarded.</font></li><li><font color="#000000">Preferring functions with a <b>non-<code style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;background-color:rgb(254,233,204);padding:1px 3px;font-size:12px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px">Void</code></b> type when the result <b>is not</b> discarded.</font></li></ul><p style="margin:0px 0px 9px;padding:0px;font-family:&#39;Helvetica Neue&#39;,Helvetica,&#39;Hiragino Sans GB&#39;,Arial,sans-serif;font-size:13px"><font color="#000000">These example will be unambiguous:</font></p><pre style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;padding:14px;margin-top:0px;margin-bottom:18px;line-height:16px;font-size:11px;border:1px solid rgb(217,217,217);white-space:pre-wrap;word-wrap:break-word"><code style="font-family:Monaco,&#39;Andale Mono&#39;,&#39;Courier New&#39;,monospace;padding:0px;border-top-left-radius:3px;border-top-right-radius:3px;border-bottom-right-radius:3px;border-bottom-left-radius:3px"><font color="#000000">example() // will prefer a `Void` function
let x = example() // will prefer a non-`Void` function</font></code></pre></div><div>You can read the full latest version of the proposal here:</div><div><br></div><div><a href="https://github.com/therealbnut/swift-evolution/blob/andrew-disambiguate-return-type/proposals/0000-disambiguate-return-type.md" target="_blank">https://github.com/therealbnut/swift-evolution/blob/andrew-disambiguate-return-type/proposals/0000-disambiguate-return-type.md</a><br></div><div><br></div><div>This is the <a href="https://github.com/therealbnut/swift-evolution/blob/59d0f0b9bdabcfd675f36824232a8efa4a5f9152/proposals/0000-disambiguate-return-type.md" target="_blank">original version</a> of the proposal.</div></div>
</blockquote></div><br></div>