質問: ![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/7ede47bc256be67439cc8155eb3efa07.png)![![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/23bc6e42a0182371aa7c2a6e7726348c.png)](e7e195a61083231e80ef8c98f23342b5.png)swift3からswift4へのマイグレーションの際に、@objcに関するwarningが出たのでBuild Setting設定のSwift3 @objc Inference の項目をfortune(プロジェクト名),fortuneTests,fortuneUITestsすべてDefaultにかえたのですがfortuneTestと fortuneUITestの部分の警告が消えません。 どの様にすればこの警告は消せるのでしょうか? 初歩的な質問ですみませんがどなたかご教授していただければ幸いです ``` エラーメッセージ ``` The use of Swift 3 @objc inference in Swift 4 mode is deprecated. Please address deprecated @objc inference warnings, test your code with “Use of deprecated Swift 3 @objc inference” logging enabled, and then disable inference by changing the "Swift 3 @objc Inference" build setting to "Default" for the "fortuneUITests" target. ### 該当のソースコード ``` ここにご自身が実行したソースコードを書いてください ``` ### 試したこと 課題に対してアプローチしたことを記載してください Build Setting設定のSwift3 @objc Inference の項目をfortune(プロジェクト名),fortuneTests,fortuneUITestsすべてDefaultにかえた ### 補足情報(言語/FW/ツール等のバージョンなど) より詳細な情報 Swift4![イメージ説明](https://teratail.storage.googleapis.com/uploads/contributed_images/5e4c3a1192df197c5abe5c7224283352.png)
回答: fortuneTests,fortuneUITestsの「Swift3 @objc Inference」の項目をDefaultにした後、Test実行しましたか? Test実行しないとテストプログラムのビルドは行われません。 試しにやってみたところ、「Swift3 @objc Inference」の項目をDefaultにしただけでは警告は消えず、Defaultにした後Test実行することでテストプログラムのビルドが行われ、警告が消えました。