You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
All cases of fully enumerated switches of ported platforms should have a `#error Unsupported Platform` and fully enumerated switches of ported architecture should have a `#error Unsupported Architecture`.
If a code section has cases for all platforms or does not have a fallback case that is portable that the following deployment target macros are satisfied it should have an error case
Additional Detail from JIRA
md5: 2086366cd1be96fde97f8f4a0e88d88b
Issue Description:
All cases of fully enumerated switches of ported platforms should have a `#error Unsupported Platform` and fully enumerated switches of ported architecture should have a `#error Unsupported Architecture`.
If a code section has cases for all platforms or does not have a fallback case that is portable that the following deployment target macros are satisfied it should have an error case
```
DEPLOYMENT_TARGET_EMBEDDED
DEPLOYMENT_TARGET_EMBEDDED_MINI
DEPLOYMENT_TARGET_FREEBSD
DEPLOYMENT_TARGET_HPUX
DEPLOYMENT_TARGET_IPHONESIMULATOR
DEPLOYMENT_TARGET_LINUX
DEPLOYMENT_TARGET_MACOSX
DEPLOYMENT_TARGET_SOLARIS
DEPLOYMENT_TARGET_WINDOWS
```
Some patterns are currently either ignored in the unsupported case or they only emit a warning; these should be upgraded to an error. Reference https://github.com/apple/swift-corelibs-foundation/blob/master/CoreFoundation/Base.subproj/CFInternal.h#L453 for an example of what would be a fully enumerated switch that has missing elements that should be upgraded to an error.
The text was updated successfully, but these errors were encountered: