<div dir="ltr">Was this an intentional choice, or is it just a temporary limitation? Would a proposal to allow something like &quot;@available(OS X 10.11)&quot; be welcomed?<div class="gmail_extra"><div><div class="gmail_signature"><div dir="ltr"><div><br></div></div></div></div>
<br><div class="gmail_quote">On Wed, May 25, 2016 at 8:17 PM, Jordan Rose via swift-evolution <span dir="ltr">&lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word"><div>The “*” in @available means “all other platforms”. If you want to mark something <i>unavailable</i> on a particular platform, you’ll have to use the long form of the @available attribute. There’s currently no way to mark something “only available on these platforms”.</div><div><br></div><div>Jordan</div><br><div><blockquote type="cite"><div><div class="h5"><div>On May 25, 2016, at 18:48, Stuart Breckenridge via swift-evolution &lt;<a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a>&gt; wrote:</div><br></div></div><div><div><div class="h5"><div style="word-wrap:break-word">Presently, you can mark enum cases as <font face="Menlo">@available</font> but it has no impact. Take the following example:<div><br></div><div><font face="Menlo">enum Things:String {</font></div><div><font face="Menlo"><span style="white-space:pre-wrap">        </span>@available (iOS 9.3, *) case MobileThing = &quot;com.example.mobilething&quot;</font></div><div><font face="Menlo"><span style="white-space:pre-wrap">        </span>@available (OSX 10.11, *) case DesktopThing = &quot;com.example.desktopthing&quot;</font></div><div><font face="Menlo">}</font></div><div><font face="Menlo"><br></font></div><div>Despite the above compiling, the following code will run iOS with no warnings:</div><div><br></div><div><font face="Menlo">func takesA(thing:Things) {</font></div><div><font face="Menlo"><span style="white-space:pre-wrap">        </span>print(thing)</font></div><div><font face="Menlo">}</font></div><div><font face="Menlo"><br></font></div><div><font face="Menlo">takesA(.DesktopThing)</font></div><div><br></div><div><font face="Menlo"><br></font></div><div>Are there enough compelling use-cases for @available on enum cases to be considered? At the very least, if <font face="Menlo">@available</font> doesn&#39;t do anything on cases, it shouldn&#39;t be permitted.</div></div></div></div>_______________________________________________<br>swift-evolution mailing list<br><a href="mailto:swift-evolution@swift.org" target="_blank">swift-evolution@swift.org</a><br><a href="https://lists.swift.org/mailman/listinfo/swift-evolution" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br></div></blockquote></div><br></div><br>_______________________________________________<br>
swift-evolution mailing list<br>
<a href="mailto:swift-evolution@swift.org">swift-evolution@swift.org</a><br>
<a href="https://lists.swift.org/mailman/listinfo/swift-evolution" rel="noreferrer" target="_blank">https://lists.swift.org/mailman/listinfo/swift-evolution</a><br>
<br></blockquote></div><br></div></div>