下記URLから引用し、日本語訳をつけてみました。
https://docs.swift.org/swift-book/documentation/the-swift-programming-language/compatibility
バージョンの互換性
Learn what functionality is available in older language modes.
古い言語モードで利用できる機能について説明します。
くまメモ
2024/6/11現在Apple StoreからダウンロードできるXcodeのバージョンは15です。SwiftのXcode15の対応バージョンはSwift5.10です。
This book describes Swift 6, the default version of Swift that’s included in Xcode 16. You can use the Swift 6 compiler to build code that’s written in Swift 6, Swift 5, Swift 4.2, or Swift 4.
この本では、Xcode 16 に含まれる Swift のデフォルト バージョンである Swift 6 について説明します。Swift 6 コンパイラを使用して、Swift 6、Swift 5、Swift 4.2、または Swift 4 で記述されたコードをビルドできます。
When you use the Swift 6 compiler to build code that uses the Swift 5 language mode, you can use the new features from Swift 6 — they’re enabled either by default or by an upcoming feature flag. However, to enable strict concurrency checking, you need to upgrade to the Swift 6 language mode.
Swift 6 コンパイラを使用して Swift 5 言語モードを使用するコードをビルドすると、Swift 6 の新機能を使用できます。これらの機能は、デフォルトで有効になっているか、今後の機能フラグによって有効になっています。ただし、厳密な同時実行チェックを有効にするには、Swift 6 言語モードにアップグレードする必要があります。
In addition, when you use Xcode 15.3 to build Swift 4 and Swift 4.2 code, most Swift 5 functionality is still available. That said, the following changes are available only to code that uses the Swift 5 language mode:
さらに、Xcode 15.3 を使用して Swift 4 および Swift 4.2 コードをビルドする場合、Swift 5 のほとんどの機能は引き続き利用できます。ただし、次の変更は、Swift 5 言語モードを使用するコードでのみ利用できます。
- Functions that return an opaque type require the Swift 5.1 runtime.
- 不透明型を返す関数には、Swift 5.1 ランタイムが必要です。
- The
try?
expression doesn’t introduce an extra level of optionality to expressions that already return optionals. - try? 式は、すでにオプションを返す式に追加レベルのオプション性を導入しません。
- Large integer literal initialization expressions are inferred to be of the correct integer type. For example,
UInt64(0xffff_ffff_ffff_ffff)
evaluates to the correct value rather than overflowing.
- 大きな整数リテラルの初期化式は、正しい整数型であると推論されます。 たとえば、UInt64(0xffff_ffff_ffff_ffff) はオーバーフローするのではなく、正しい値として評価されます。
Concurrency requires the Swift 5 language mode and a version of the Swift standard library that provides the corresponding concurrency types. On Apple platforms, set a deployment target of at least iOS 13, macOS 10.15, tvOS 13, or watchOS 6.
同時実行には、Swift 5 言語モードと、対応する同時実行タイプを提供する Swift 標準ライブラリのバージョンが必要です。Apple プラットフォームでは、少なくとも iOS 13、macOS 10.15、tvOS 13、または watchOS 6 のデプロイメント ターゲットを設定してください。
A target written in Swift 6 can depend on a target that’s written in Swift 5, Swift 4.2 or Swift 4, and vice versa. This means, if you have a large project that’s divided into multiple frameworks, you can migrate your code to a newer language version one framework at a time.
Swift 6 で記述されたターゲットは、Swift 5、Swift 4.2、または Swift 4 で記述されたターゲットに依存することができ、その逆も同様です。つまり、複数のフレームワークに分割された大規模なプロジェクトがある場合、コードを一度に 1 つのフレームワークずつ新しい言語バージョンに移行できます。
Beta Software
This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.
このドキュメントには、開発中の API またはテクノロジに関する予備的な情報が含まれています。この情報は変更される可能性があり、このドキュメントに従って実装されたソフトウェアは、最終的なオペレーティング システム ソフトウェアでテストする必要があります。
Learn more about using Apple’s beta software(link:developer.apple.com).
Apple’s beta software(link:developer.apple.com)(英語)の使用について詳しくは、こちらをご覧ください。