В разделе "Компиляция быстрых файлов" во время архивации он сказал, что конкретный файл имел эту ошибку:
PHI node has multiple entries for the same basic block with different incoming values!
%31 = phi i64 [ 3, %385 ], [ %386, %385 ], [ 1, %29 ], !dbg !1370
label %385
i64 3
%386 = phi i64 [ %23, %27 ], !dbg !1433
LLVM ERROR: Broken function found, compilation aborted!
После комментирования кода файла некоторое время я обнаружил, что следующие строки кода были проблемой:
var normalizedStrikes = max(1, strikes)
normalizedStrikes = min(normalizedStrikes, 3)
После многих попыток я обнаружил, что не могу использовать max(), а затем min(), вот что решило проблему для меня:
var normalizedStrikes = strikes
if (normalizedStrikes <= 0) {
normalizedStrikes = 1
}
normalizedStrikes = min(normalizedStrikes, 3)
Еще одна очень приятная вещь, которую я обнаружил, заключается в том, что если я изменю условие на "< 1", он выдаст ту же ошибку. Хороший материал.
var normalizedStrikes = strikes
if (normalizedStrikes < 1) {
normalizedStrikes = 1
}
normalizedStrikes = min(normalizedStrikes, 3)
Мой вопрос: почему это произошло?
Btw Я использую Xcode Version 6.1.1 (6A2008a)