<html><head><meta http-equiv="Content-Type" content="text/html charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Feb 16, 2016, at 13:49, Douglas Gregor <<a href="mailto:dgregor@apple.com" class="">dgregor@apple.com</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><meta http-equiv="Content-Type" content="text/html charset=utf-8" class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><br class=""><div class=""><blockquote type="cite" class=""><div class="">On Feb 16, 2016, at 12:56 PM, Nico Weber <<a href="mailto:thakis@chromium.org" class="">thakis@chromium.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="ltr" class="">Is this the only C extension you need for swift? </div></div></blockquote><div class=""><br class=""></div><div class="">I believe that it’s the only non-attribute extension not covered by an existing flag.</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class="">What about -fblocks?</div></div></blockquote><div class=""><br class=""></div><div class="">This already has a flag, which Swift’s Clang importer can set if it’s important. I haven’t heard a ton of demand for blocks outside of Darwin clients.</div><br class=""><blockquote type="cite" class=""><div class=""><div dir="ltr" class=""><div class="">If it's just typed enums and you don't think it'll become more over time, it probably doesn't matter much all either way. If you think you'll need more features over time, having some global toggle for this seems nice. It could default to on for -std=gnuX (if you use this, you don't mind extensions) and to off for -std=cX (if you use this, you probably want to use the language as standardized), or something like that.</div></div></div></blockquote><div class=""><br class=""></div><div class="">Swift’s Clang importer can certainly use -std=gnu<whatever>, and keep fixed underlying types out of -std=c<X>.</div></div></div></div></blockquote><br class=""></div><div>I do want to mention that Clang has plenty of other Clang-only extensions that we added to -std=gnu<whatever>. We haven't thought about adding a -std=clang<X> flag before.</div><div><br class=""></div><div>This isn't a Swift feature; it's an Objective-C feature that Swift makes use of.</div><div><br class=""></div><div>Jordan</div><br class=""></body></html>