<div dir="ltr"><div><span class="" style="font-size:14px">Hello</span><span style="font-size:14px"> swift-evolution,</span><br></div><div><br></div><div>This is continued from PR #2351(<a href="https://github.com/apple/swift/pull/2351">https://github.com/apple/swift/pull/2351</a>).</div><div><br></div><div>Here is the brief history. (To avoid confusion, I used MSVC refer to *-*-windows-msvc and Cygwin refer to *-*-windows-cygnus in LLVM.)</div><div><br></div><div>I needed the #if method to distinct MSVC from Cygwin, for mapping the Int to CLongLong not CLong on MSVC.</div><div>In PR #2351, I simply added 'os(Cygwin)' and restrict 'os(Windows)' to *-*-windows-msvc from *-*-windows-*, this solved my problem.</div><div><br></div><div>Jake(@jakepetroules) pointed out that Cygwin is not an OS and it will never fixed to avoid breaking user applications.</div><div>There is more participants and opinions, briefly,</div><div>- introduce another new one such as 'env(cygnus)' or 'triple(Cygwin)'</div><div>- the usability of the common condition 'os(Windows)' for *-*-windows-*</div><div>- fundamentally, what do we gain from asking which os() is in use?</div><div>- 'env()' is too vague</div><div>- what the right questions?</div><div><br></div><div>Forgive me the poor quotations of valuable opinions.</div><div><br></div><div><br></div><div>I hope we find out the solution or method everybody satisfied.</div><div><br></div><div><br></div><div>-Han Sangjin</div></div>