Xcode lldb错误:无法打印出Swift变量-改为获取“ $ __ lldb_injected_self$ __ lldb_wrapped_expr_x”

问题描述

作为解决方法,您可以lldb使用以下命令在调试器中打印它:

frame variable variablename

也可以使用缩短的语法来加快键入速度

fr v variablename

从XCode ,lldb支持更简单的语法:

v variable

-新的解决方法:

打印堆栈地址:

v -L variablename

po 就像在堆栈框架上的variable.property

 v -o variablename.property

像雨燕一样 p

e unsafeBitCast(address, to: ClassName.self)

- 新的解决方法 适用于雨燕类是objc类的包装。

例:

v response
(HTTPURLResponse) response = 0x0000000283ba7640 {

如果v可行^:

e -l objc -- (int)[0x0000000283ba7640 statusCode]
(int) $2 = 404

我希望您能 一些 这些 实际上是有帮助的并且有效。谢谢。

可以在以下位置找到有关此类功能的更多信息:https ://developer.apple.com/library/content/documentation/General/Conceptual/lldb- guide/chapters/C5-Examining-The-Call- Stack.html

解决方法

有时,当尝试在调试器中打印出变量时,会显示以下错误消息:

error: warning: <EXPR>:12:9: warning: initialization of variable '$__lldb_error_result' was never used; consider replacing with assignment to '_' or removing it
    var $__lldb_error_result = __lldb_tmp_error
    ~~~~^~~~~~~~~~~~~~~~~~~~
    _

error: <EXPR>:18:5: error: use of unresolved identifier '$__lldb_injected_self'
    $__lldb_injected_self.$__lldb_wrapped_expr_120(     
    ^~~~~~~~~~~~~~~~~~~~~

这是一个已知的lldb错误(https://bugs.swift.org/browse/SR-6156),但是也许有人知道在该错误修复之前可以使用的解决方法?

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...