gpt4 book ai didi

swift - Xcode lldb 错误 : can't print out Swift variable - get "$__lldb_injected_self.$__lldb_wrapped_expr_x" instead

转载 作者:IT王子 更新时间:2023-10-29 05:33:14 24 4
gpt4 key购买 nike

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

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 ),但也许有人知道在修复该错误之前可以使用的解决方法?

最佳答案

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

frame variable variablename

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

fr v variablename

自 XCode 10.2 以来,支持更简单的 lldb 语法:

v variable

更新 - 新的解决方法:

打印堆栈地址:

v -L variablename

po 就像栈帧 variable.property

 v -o variablename.property

Swift 像 p

e unsafeBitCast(address, to: ClassName.self)

Update2 - 新解决方法适用于作为 objc 类包装器的 Swift 类。

例子:

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

关于swift - Xcode lldb 错误 : can't print out Swift variable - get "$__lldb_injected_self.$__lldb_wrapped_expr_x" instead,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48245427/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com