Special-case diagnostic for when you just need @unknown default
#21695
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This is a new feature of Swift 5 mode, so it deserves at least a little bit of explanation right in the diagnostic. If you have an otherwise-fully-covered switch but can't assume the enum is frozen, you'll now get this message:
Furthermore, if the enum comes from a system header, it looks like this:
...to further suggest the idea that even though your switch is covered now, it might not handle everything in the future. This extra bit is limited to system headers to avoid showing up on C enums defined in your own project, for which it sounds silly. (The main message is still valid though, since you can cram whatever you want into a C enum, and people use this pattern to implement "private cases".)
rdar://problem/39367045