Edited at

【Swift3】Xcode 8.2 にした途端、謎のエラーで落ちる問題

More than 1 year has passed since last update.


環境

Xcode8.2

Swift3.0


Xcode8.2

Xcode8.2が2016年12月12日にアップデートされたので入れました。

変更点などはXcode 8.2 Release Notesを参照してください。


起こったこと

今回何が起こったかと言うと、Xcode8.2で今までのプロジェクトを起動しました。すると、Bildができません!!

Bildのエラーを見てみると、

“Use Legacy Swift Language Version” (SWIFT_VERSION) is required to be configured correctly for targets which use Swift. 

Use the [Edit > Convert > To Current Swift Syntax…] menu to choose a Swift version or use the Build Settings editor to configure the build setting directly.

と出ていました。


解決策

まず初めに、文章で言われているようにやってみました。

具体的には、Xcodeの画面左上にあるEditを選択して、Convertの中のTo Current Swift Syntax…を選ぶ、という手順です。

結果は、失敗!!!

消えるどころか、他のエラーがいくつか出てきてしまいました^^;


本当の解決策

いろんなサイトをググりまくった結果、解決策を見つけました!

stack overflowに書いてあったのですが、


Found work around. I went through each target (and project settings, so both in the project and

target) in my project, toggled the "Use Legacy Swift Language Version" from "No" to "Yes" and

back to "No" for each. The project then built again.


http://stackoverflow.com/questions/41118912/use-legacy-swift-language-version-xcode-8-2

とのことです!

つまり

Build Settingの

"Use Legacy Swift Language Version" をNo→Yes→Noと変更して、Bildすれば解決すると言うわけです!

なんとも不思議な解決方法ですが、無事これで僕のは動きました!