Can't use framework compiled with Swift 5.2 in Swift 5.1.3 project

Yep, you're right, I apologize for mixing up the terms.

To be absolutely clear and avoid using potentially ambiguous language:

Module interfaces generated by a given version of the Swift compiler are guaranteed to be able to be imported by any future Swift compiler that supports the -swift-version that it was compiled with.

For example, if Swift 20 removes support for -swift-version 8, then .swiftinterface files compiled in the -swift-version 8 language mode will no longer be supported, but Swift 8 to Swift 19 will be able to import it.

That said, if Swift 9 produces a module interface, even in -swift-version 8 mode there's no guarantee that the Swift 8 compiler will be able to import the module, because the @inlinable code in the .swiftinterface file may be using new syntax that was introduced in Swift 9, but that was included in the -swift-version 8 language mode.

4 Likes