[swift-evolution] [Draft] Expanding Build Configuration Tests for Simulator and Device targets

Alex Martini amartini at apple.com
Fri Mar 18 13:47:08 CDT 2016


The reference for build configuration statements[1] has a list of platforms and operating systems.  If that list is out of date, it's a documentation bug — so thanks for pointing that out!

<rdar://problem/25244216> TSPL: Build configuration statements is missing Windows, FreeBSD, powerpc64, and powerpc64le

If you want to look in source, the list in lib/Basic/LangOptions.cpp reads as follows:

static const StringRef SupportedConditionalCompilationOSs[] = {
  "OSX",
  "tvOS",
  "watchOS",
  "iOS",
  "Linux",
  "FreeBSD",
  "Windows"
};

static const StringRef SupportedConditionalCompilationArches[] = {
  "arm",
  "arm64",
  "i386",
  "x86_64",
  "powerpc64",
  "powerpc64le"
};



1:
https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/Statements.html#//apple_ref/doc/uid/TP40014097-CH33-ID538


> On Mar 14, 2016, at 1:05 PM, Dmitri Gribenko via swift-evolution <swift-evolution at swift.org> wrote:
> 
> I'm afraid it is just the source code.
> 
> Dmitri
> 
> On Mon, Mar 14, 2016 at 1:04 PM, Erica Sadun <erica at ericasadun.com> wrote:
>> Can you point me to a reference on this so I can keep up to date, or is it all just source and accepted proposals?
>> 
>> Thanks, -- E
>> 
>> 
>>> On Mar 14, 2016, at 1:58 PM, Dmitri Gribenko <gribozavr at gmail.com> wrote:
>>> 
>>> On Mon, Mar 14, 2016 at 11:29 AM, Erica Sadun via swift-evolution
>>> <swift-evolution at swift.org> wrote:
>>>> The os() function that tests for OSX, iOS, watchOS, tvOS, and Linux
>>> 
>>> and Windows, FreeBSD.
>>> 
>>>> The arch() function that tests for x86_64, arm, arm64, and i386
>>> 
>>> and powerpc64, powerpc64le.
>>> 
>>> Dmitri
>>> 
>>> --
>>> main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
>>> (j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/
>> 
> 
> 
> 
> -- 
> main(i,j){for(i=2;;i++){for(j=2;j<i;j++){if(!(i%j)){j=0;break;}}if
> (j){printf("%d\n",i);}}} /*Dmitri Gribenko <gribozavr at gmail.com>*/
> _______________________________________________
> swift-evolution mailing list
> swift-evolution at swift.org
> https://lists.swift.org/mailman/listinfo/swift-evolution



More information about the swift-evolution mailing list