我在调试Swift字符串时遇到问题
func stringTest() {
let test1:String = "test1";
let test2:NSString = "test2";
// <-- Breakpoint here
println(test1);
println(test2);
}
如果我在这些行之后设置一个断点,并尝试打印test1,我会得到以下错误:
po test1
error: <REPL>:1:1: error: use of unresolved identifier 'test1'
test1
^
但是我能够成功地打印test2:
po test2
test2
发布于 2014-06-21 04:15:56
这很可能是调试信息输出中的错误。您可以通过抓取PC进行检查,例如从register read pc
,然后执行以下操作:
(lldb) image lookup -va <PC VALUE>
这将打印一堆内容,但最后的条目将是调试器当前可见的所有变量,以及它们所在的位置(在寄存器或内存中)。如果您在那里看不到该变量,那么调试信息一定已经告诉lldb该变量当前不是活动的。
如果您可以在一些示例代码中重现这一点,请使用bug reporter.apple.com提交一个bug。
https://stackoverflow.com/questions/24309005
复制相似问题