2017-11-06 11 views
0

このコードをXcode 9.1で最適化レベルFast, whole Module Optimizationを使用して実行すると、クラッシュします。最適化レベルがNoneに設定されていると、すべて正常に機能します。リリース構成のSwift 4エラー

誰もが問題のアイデアを持っていますか?

protocol FooProtocol { 
    func foo() 
} 

class FooProtocolImplementation : NSObject, FooProtocol { 
    func foo() {} 
} 

var set: Set<AnyHashable> = [] 
_ = set.insert(FooProtocolImplementation()) 
let array = set.flatMap { $0 as? FooProtocol } // filtering out nils 
_ = array[0] // # error (EXC_BAD_INSTRUCTION (code=EXC_I386_INVOP, subcode=0x0) 
+0

あなたは 'NSObject'から何を継承しない場合のXcode 9.3でそれを修正しましたか? – LShi

+0

これは動作しません –

+0

'FooProtocol'をクラスプロトコルに設定するとどうなりますか?' protocol FooProtocol:class'?そして、もしあなたがより多くの詳細を提供することができれば、それはクラッシュします。 – Ivan

答えて

0

Appleは、バグとして報告して