swift
4a8f81db - Special-case diagnostic for when you just need `@unknown default` (#21695)

Commit
6 years ago
Special-case diagnostic for when you just need `@unknown default` (#21695) 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: switch covers known cases, but 'MusicGenre' may have additional unknown values Furthermore, if the enum comes from a system header, it looks like this: switch covers known cases, but 'NSMusicGenre' may have additional unknown values, possibly added in future versions ...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
Author
Parents
Loading