在Xcode中设置断点会导致光标转到随机行

在Xcode中设置断点会导致光标转到随机行,xcode,breakpoints,Xcode,Breakpoints,每当我在Xcode中使用边距设置断点时,我的光标就会跳到一行随机的代码上,通常在断点上方10-20行。为什么要这样做?这很烦人。。。 谢谢。当您在调试版本中启用各种优化时,通常会发生这种情况。调试生成不应进行优化。我有。它们减少了成本,以确保: “复制期间删除调试符号”未选中 选中“生成调试符号” “优化级别”设置为“无[-O0]” 未选中“使用单独的条带” “附加带标志”没有设置任何内容(如果带未运行,我认为这不重要) “展开循环”未选中 没有一个文件附加了与优化相关的(比如-funroll

每当我在Xcode中使用边距设置断点时,我的光标就会跳到一行随机的代码上,通常在断点上方10-20行。为什么要这样做?这很烦人。。。
谢谢。

当您在调试版本中启用各种优化时,通常会发生这种情况。调试生成不应进行优化。我有。它们减少了成本,以确保:

  • “复制期间删除调试符号”未选中

  • 选中“生成调试符号”

  • “优化级别”设置为“无[-O0]”

  • 未选中“使用单独的条带”

  • “附加带标志”没有设置任何内容(如果带未运行,我认为这不重要)

  • “展开循环”未选中

  • 没有一个文件附加了与优化相关的(比如-funroll_循环)标志


我的帖子提供了更多细节。

AFAIK这是二进制编译器优化(光标位置跟随相对代码指令)的跳转原因。尝试在不进行优化的情况下构建项目,然后再次尝试调试


因为我还不是这方面的大师。我可能错了。

我尝试了上面提到的调试器配置,但仍然得到了跳转效果。我发现works打开了我所有折叠的代码(方法、代码块和注释块),设置断点时跳转光标的问题消失了。打开折叠代码的快捷方式是ctrl+cmd+向下箭头。不幸的是,注释块必须一次执行一个。我认为这是一种痛苦,几乎宁愿处理断点的跳转,也不愿打开崩溃的代码

我没有意识到有多少人在这方面有问题,直到我在几个funroll_循环中发了两篇文章,我忘了我为我的几个计算类设置了标记。:-}