微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ios – 在Xcode上归档时,使用max()和min()顺序的Swift问题

在归档时,在“编译 swift文件”步骤中,它表示特定的文件有这个错误
PHI node has multiple entries for the same basic block with different incoming values!
  %31 = phi i64 [ 3,%385 ],[ %386,[ 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)

解决方法

这从Xcode 6.3(6D570)解析.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐