Aus irgendeinem Grund zeigt mir LLDB nicht den Inhalt von Variablen, während ich meinen Swift-Code durchtrete. Die tatsächliche Ausführung funktioniert gut, aber egal was ich versuche, ich kann den Inhalt meiner Saiten nicht sehen!Xcode 6 Beta 2 Debugger zeigt keine Variableninhalte nach Aufruf von String.componentsSeparatedByString
Hier ist, was ich in der Variablenliste:
An diesem Punkt type
enthält "name" und value
enthält "Logan". Aber Sie würden das hier nicht sehen können. Wenn ich die Schaltfläche "Schnellansicht" verwende, wird der Wert "(Keine)" angezeigt.
Und ich diese Art von Kauderwelsch, wenn ich zu po
einen String aus der Konsole versuchen:
(lldb) po space
error: <REPL>:1:1: error: non-nominal type '$__lldb_context' cannot be extended
extension $__lldb_context {
^
<REPL>:11:5: error: 'Space.Type' does not have a member named '$__lldb_wrapped_expr_0'
$__lldb_injected_self.$__lldb_wrapped_expr_0(
^
Allerdings variiert diese. Manchmal werde ich so etwas wie:
class name = __NSAtom
oder
Printing description of [0]:
(String) [0] = {
core = {
_baseAddress = Builtin.RawPointer = 0x00000001004016f0
_countAndFlags = -4611686018427387894
_owner = Some {
Some = (instance_type = Builtin.RawPointer = 0x0000000100401820 -> 0x00007fff7b3d5390 (void *)0x00007fff7b3d5340: __NSCFString)
}
}
}
oder
Printing description of declaration:
(String) declaration = <DW_OP_piece for offset 8: top of stack is not a piece>
... aber nie den tatsächlichen Inhalt der Zeichenfolge!
Update:
ich das Problem bemerkt haben scheint nur in der Funktion gemacht auftretenden einmal ein Aufruf an componentsSeparatedByString()
zu starten. (Dies passiert ganz oben, so dass ich beim Steigen nicht bemerkte, dass der Debugger tatsächlich den Wert bis zu diesem Punkt anzeigt.) Also etwas Seltsames ist mit dieser Funktion los. Ich habe den Fragentitel aktualisiert, um diese neuen Informationen wiederzugeben.
Interessanterweise scheint es, sobald die Zeichenfolge durch diesen Aufruf "beschädigt" wurde, können Sie es nirgendwo anders ansehen, auch wenn es an eine andere Funktion übergeben wurde. Und alle regulären String-Variablen sind ebenfalls nicht sichtbar. Definitiv ein Bug, aber ich frage mich, ob es einen Workaround gibt. Es wird sehr schwer mein Programm zu debuggen!
LOL versuche nicht 'expr println (target)'! XD – devios1