Identifiable restricted to iOS 13 for SPM packages?

Property wrappers were built using code generation, so are backwards deployable (explained here).

The odd thing is the definition literally has @available(OSX 10.15, iOS 13, tvOS 13, watchOS 6, *), but it still compiles when targeting my iOS 12 simulator. Strangely enough it does give me the correct error with extension Identifiable { }.

My guess is this is a bug, or there's some automated stripping of unsupported protocols adherence that I'm unaware of. It's possible it will crash on pre-iOS 13 devices, but I don't have one handy to check.