2014-12-02 21 views
12

Projemde, bir sınıf örneğine sahipsiz bir başvuruya sahip bir yapılandırmam var. Bu yapılardan oluşan bir diziyle döngü yapmaya çalışmak, uygulamamın sonsuz bir şekilde döngüye girmesine neden oluyor. Ama daha da çılgınca, bu yapıya yazılan boş bir diziden geçebilirim ve yine de olur.Bilinmeyen referans ile yapıların dizisini yineleme sonsuza kadar gider

Örneği daha küçük yapmak için bu örnekte NSString'e bir başvuru kullandım, ancak özel bir sınıf kullanmak yardımcı olmaz.

Ayrıca, bu davranış yalnızca 64 bit aygıtlarda ve simülatörlerde, ancak 32 bit olmayanlarda oluşur. Xcode 6.1, 6.1.1 ve 6.2 ile test ettim.

struct TestStruct { 
    unowned let reference: NSString 
} 

let anArray: [TestStruct] = [] 

for anObject in anArray { 
    NSLog("This is called endlessly") 
} 

Yanlış bir şey yapıyorum? Bu desteklenen bir düzenleme değil mi? Yoksa bu rapor etmem gereken hızlı bir hata mı?

+1

Açıkça bir hata değil mi? Gerçekten iyi bir böcek. Güzel örnek, güzel testler. Ne yazık ki sadece bir kez daha yapabilirim! – matt

+0

Makinenizi test edip sorunu gördünüz mü? Xcode'u yeniden yükledim, bunu keşfettiğimden beri birçok kez yeniden başlattım, ama yine de makinemin bir şekilde bir umudu var. – Acey

+2

Kuruyemiş misin? Bu kodu ben koşmayacağım! Bilgisayarım patlayabilir. Sen zaten seninkini mahvettin. – matt

cevap

0

Yorumlar belirttiği gibi, bu, Swift derleyicisinde bir hata gibi görünüyor. Apple's Bug Reporter aracılığıyla bildirmek hepimize yardımcı olacaktır.

+0

Benimki rdar: // 21126703 – Klaas

İlgili konular