尝试在Xcode中打印对象描述会产生错误

时间:2016-04-21 02:54:52

标签: ios objective-c xcode swift debugging

我有一个Objective-C对象,我们可以调用ObjCObj 我实现了一个简单的描述方法,如果我在局部变量中实现类,通常可以正常工作。

问题: 我遍历一个ObjCObj对象数组并将它们放入Swift数组

let cacheArray = [ObjCObj]()

我的数组填满之后,我尝试设置一个断点,尝试打印一个Item的值,我得到以下错误:

expression produced error: 

/var/folders/w9/3rvg1bk95379dgvcr11n16_h0000gp/T/lldb/3499/expr878.swift:1:46: error: use of undeclared type '__ObjC'
$__lldb__DumpForDebugger(Swift.UnsafePointer<__ObjC.ObjCObj>(bitPattern: 0x67fd9b0).memory)

如果我尝试打印像:

这样的表达式
cacheArray[2]

有效。但是,如果我在调试器检查器中打开数组并选择一行数组并要求打印描述,则会失败。

2 个答案:

答案 0 :(得分:3)

我刚刚收到同样的错误,并将其追溯到我的一个Obj-C Mantle模型类中的一个不良属性属性。 (将对象错误地视为标量。)

断裂:

@property(nonatomic, assign, readonly, nullable) AdditionalInformationStatus *additionalInformationStatus;
                     ^^^^^^

修正:

@property(nonatomic, copy, readonly, nullable) AdditionalInformationStatus *additionalInformationStatus;
                     ^^^^

这很容易解决,但很难追查。

答案 1 :(得分:1)

这听起来像个错误。请在http://bugreporter.apple.com处提交。