3

我在调试模式下构建,而不是发布,但它失去了对变量的跟踪。请参阅下面的值nx似乎丢失的地方,如果您尝试调试优化的构建,您可能会期望这种方式。这是 Xcode 中的错误还是我做错了什么?

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

4

1 回答 1

0

编译器有时会删除“未使用的标识符”的调试信息。调试信息很快就会变得庞大,因此即使在 -O0 编译器也必须做一些工作以确保它们不会发出比需要更多的信息。定义“需要”说起来比做起来难,但它肯定应该保留所有本地 var 和 let's。

所以在我看来,这个值得在 swift 编译器上提交一个错误。swiftc 为ny但不为nx. 你ny以后会在函数中使用更多吗?

如果您确实提交了错误,请包含一个可构建的 .swift 文件或显示错误的项目。

于 2019-01-22T22:29:11.237 回答