【发布时间】:2011-07-26 12:06:48
【问题描述】:
Xcode 4.0.1 开始出现内部编译器错误。它只是说“总线错误”。它出现在我的一个 .m 文件的底部,该文件现在将近 4000 行。
我看过this question,但我没有犯这个错误,当它出现时,我通常可以通过在某处添加一些随机代码行来修复它。当它第一次出现时,我追踪到我在一堆新代码中设置视图框架的位置:
view.frame = CGRectMake(otherView.frame.origin.x, 0, otherView2.frame.size.width, 40);
如果我用硬编码值替换了 otherView 和 otherView2 引用,问题就消失了。或者,如果我只是将int x = 0; 放在违规行上方,它就会消失。
我也看过this question,但没有明确的答案。它似乎不是任何单独的代码行;它只是看似随机出现。而且 Google 没有我能找到的任何明确的解决方案。
我已尝试使用该项目的所有可能编译器(GCC 4.2、LLVM GCC 4.2 和 LLVM Compiler 2.0,它们都有问题。我将静态分析器设置为运行每个构建,并将其关闭没有帮助。This question 似乎表明这是编译器中的一个错误。我只是卡住了吗?有解决方法吗?
编辑:另一个例子:它又发生了,我追踪到:
[headerView centerViewVertically:milesLabel pixelsFromRight:pointLabel.frame.size.width + 20];
我改成:
int x = pointLabel.frame.size.width;
[headerView centerViewVertically:milesLabel pixelsFromRight:x + 20];
它又起作用了。
【问题讨论】: