vadimcn / codelldb

A native debugger extension for VSCode based on LLDB
https://marketplace.visualstudio.com/items?itemName=vadimcn.vscode-lldb
MIT License
2.43k stars 237 forks source link

Conditional Breakpoints don't work with macOS version of Swift LLDB #927

Closed adam-fowler closed 1 year ago

adam-fowler commented 1 year ago

OS: macOS Ventura 13.2.1 (22D68) VSCode version: 1.77.3 CodeLLDB version: 1.9.1 Compiler: Swift 5.8 Debuggee: Swift Package Manager generated executable

If I set an expression on a breakpoint it is ignored on macOS. Conditional break points are working in LLDB when run independently of VS Code. This is also not a problem on Linux.

For a simple program like

for i in 0..<100 {
    print(i)
}

If I add a conditional breakpoint on line 2 for when i==56 I would expect it to stop when i equals 56. Instead if never stops.

Verbose log
Initial debug configuration: {
  type: 'lldb',
  request: 'launch',
  sourceLanguages: [ 'swift' ],
  name: 'Debug test-cb',
  program: '${workspaceFolder:test-cb}/.build/debug/test-cb',
  args: [],
  cwd: '${workspaceFolder:test-cb}',
  preLaunchTask: 'swift: Build Debug test-cb',
  __configurationTarget: 6
}
Resolved debug configuration: {
  type: 'lldb',
  request: 'launch',
  sourceLanguages: [ 'cpp', 'swift', 'swift' ],
  name: 'Debug test-cb',
  program: '${workspaceFolder:test-cb}/.build/debug/test-cb',
  args: [],
  cwd: '${workspaceFolder:test-cb}',
  preLaunchTask: 'swift: Build Debug test-cb',
  __configurationTarget: 6,
  relativePathBase: '/Users/adamfowler/Temp/test-cb',
  _adapterSettings: {
    displayFormat: 'auto',
    showDisassembly: 'auto',
    dereferencePointers: true,
    suppressMissingSourceFiles: true,
    evaluationTimeout: 5,
    consoleMode: 'commands',
    sourceLanguages: null,
    terminalPromptClear: null,
    evaluateForHovers: true,
    commandCompletions: true,
    reproducer: false
  }
}
liblldb: /Applications/Xcode.app/Contents/SharedFrameworks/LLDB.framework/Versions/A/LLDB
environment: {}
settings: {
  evaluateForHovers: true,
  commandCompletions: true,
  sourceLanguages: [ 'cpp', 'swift', 'swift' ]
}
[DEBUG codelldb] Connecting to 127.0.0.1:57641
[DEBUG codelldb] New debug session
[DEBUG codelldb::dap_codec] --> {"command":"initialize","arguments":{"clientID":"vscode","clientName":"Visual Studio Code","adapterID":"lldb","pathFormat":"path","linesStartAt1":true,"columnsStartAt1":true,"supportsVariableType":true,"supportsVariablePaging":true,"supportsRunInTerminalRequest":true,"locale":"en","supportsProgressReporting":true,"supportsInvalidatedEvent":true,"supportsMemoryReferences":true,"supportsArgsCanBeInterpretedByShell":true,"supportsMemoryEvent":true,"supportsStartDebuggingRequest":true},"type":"request","seq":1}
[DEBUG codelldb::dap_codec] <-- {"seq":1,"type":"response","request_seq":1,"success":true,"command":"initialize","body":{"exceptionBreakpointFilters":[{"default":true,"filter":"cpp_throw","label":"C++: on throw"},{"default":false,"filter":"cpp_catch","label":"C++: on catch"},{"default":false,"filter":"swift_throw","label":"Swift: on throw"}],"supportTerminateDebuggee":true,"supportsCancelRequest":true,"supportsCompletionsRequest":true,"supportsConditionalBreakpoints":true,"supportsConfigurationDoneRequest":true,"supportsDataBreakpoints":true,"supportsDelayedStackTraceLoading":true,"supportsDisassembleRequest":true,"supportsEvaluateForHovers":true,"supportsFunctionBreakpoints":true,"supportsGotoTargetsRequest":true,"supportsHitConditionalBreakpoints":true,"supportsInstructionBreakpoints":true,"supportsLogPoints":true,"supportsReadMemoryRequest":true,"supportsRestartFrame":true,"supportsSetVariable":true,"supportsSteppingGranularity":true,"supportsWriteMemoryRequest":true}}
[DEBUG codelldb::dap_codec] --> {"command":"launch","arguments":{"type":"lldb","request":"launch","sourceLanguages":["cpp","swift","swift"],"name":"Debug test-cb","program":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","args":[],"cwd":"/Users/adamfowler/Temp/test-cb","preLaunchTask":"swift: Build Debug test-cb","__configurationTarget":6,"relativePathBase":"/Users/adamfowler/Temp/test-cb","_adapterSettings":{"displayFormat":"auto","showDisassembly":"auto","dereferencePointers":true,"suppressMissingSourceFiles":true,"evaluationTimeout":5,"consoleMode":"commands","sourceLanguages":null,"terminalPromptClear":null,"evaluateForHovers":true,"commandCompletions":true,"reproducer":false},"__sessionId":"fe94c47d-206e-410d-bf63-ce24206b306c"},"type":"request","seq":2}
[DEBUG codelldb::dap_codec] <-- {"seq":2,"type":"event","event":"output","body":{"output":"Console is in 'commands' mode, prefix expressions with '?'.\n"}}
INFO(Python) 11:05:05 formatters: Initializing
INFO(Python) 11:05:05 formatters.rust: Initializing
[DEBUG codelldb::dap_codec] <-- {"seq":3,"type":"event","event":"initialized"}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a277e08 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000002 (modules-loaded), data = {test-cb}
[DEBUG codelldb::dap_codec] <-- {"seq":4,"type":"event","event":"module","body":{"module":{"addressRange":"FFFFFFFFFFFFFFFF","id":"FFFFFFFFFFFFFFFF","name":"test-cb","path":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolFilePath":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":5,"type":"request","command":"runInTerminal","arguments":{"args":["/Users/adamfowler/.vscode/extensions/vadimcn.vscode-lldb-1.9.1/adapter/codelldb","terminal-agent","--connect=57643"],"cwd":"","kind":"integrated","title":"Debug test-cb"}}
[DEBUG codelldb::dap_codec] --> {"command":"setBreakpoints","arguments":{"source":{"name":"main.swift","path":"/Users/adamfowler/Temp/test-cb/Sources/test-cb/main.swift"},"lines":[2],"breakpoints":[{"line":2,"condition":"i==56"}],"sourceModified":false},"type":"request","seq":3}
[DEBUG codelldb::dap_codec] --> {"command":"setFunctionBreakpoints","arguments":{"breakpoints":[]},"type":"request","seq":4}
[DEBUG codelldb::dap_codec] --> {"command":"setDataBreakpoints","arguments":{"breakpoints":[]},"type":"request","seq":5}
[DEBUG codelldb::dap_codec] --> {"command":"setInstructionBreakpoints","arguments":{"breakpoints":[]},"type":"request","seq":6}
[DEBUG codelldb::dap_codec] --> {"command":"setExceptionBreakpoints","arguments":{"filters":["cpp_throw"]},"type":"request","seq":7}
[DEBUG codelldb::dap_codec] <-- {"seq":6,"type":"response","request_seq":3,"success":true,"command":"setBreakpoints","body":{"breakpoints":[{"id":1,"line":2,"message":"Resolved locations: 0","verified":true}]}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a286838 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 1 type: breakpoint added}
[DEBUG codelldb::dap_codec] <-- {"seq":7,"type":"response","request_seq":4,"success":true,"command":"setFunctionBreakpoints","body":{"breakpoints":[]}}
[DEBUG codelldb::dap_codec] <-- {"seq":8,"type":"response","request_seq":5,"success":true,"command":"setDataBreakpoints","body":{"breakpoints":[]}}
[DEBUG codelldb::dap_codec] <-- {"seq":9,"type":"response","request_seq":6,"success":true,"command":"setInstructionBreakpoints","body":{"breakpoints":[]}}
[DEBUG codelldb::dap_codec] <-- {"seq":10,"type":"response","request_seq":7,"success":true,"command":"setExceptionBreakpoints"}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a287278 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: breakpoint added}
[DEBUG codelldb::dap_codec] --> {"type":"response","seq":8,"command":"runInTerminal","request_seq":5,"success":true,"body":{"shellProcessId":65144}}
[DEBUG codelldb::dap_codec] --> {"command":"configurationDone","type":"request","seq":9}
[DEBUG codelldb::dap_codec] <-- {"seq":11,"type":"event","event":"output","body":{"output":"Launching: /Users/adamfowler/Temp/test-cb/.build/debug/test-cb\n"}}
[DEBUG codelldb::dap_codec] <-- {"seq":12,"type":"event","event":"output","body":{"output":"Launched process 66860\n"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad59719008 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000004 (modules-unloaded), data = {test-cb}
[DEBUG codelldb::dap_codec] <-- {"seq":13,"type":"response","request_seq":2,"success":true,"command":"launch"}
[DEBUG codelldb::dap_codec] <-- {"seq":14,"type":"response","request_seq":9,"success":true,"command":"configurationDone"}
[DEBUG codelldb::dap_codec] <-- {"seq":15,"type":"event","event":"module","body":{"module":{"id":"100000000","name":""},"reason":"removed"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad59719108 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 1 type: locations removed}
[DEBUG codelldb::debug_session] Debug event: 0x7fad59719318 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: locations removed}
[DEBUG codelldb::debug_session] Debug event: 0x7fad09709928 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 1 type: locations resolved}
[DEBUG codelldb::debug_session] Debug event: 0x7fad097040d8 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000002 (modules-loaded), data = {dyld, test-cb}
[DEBUG codelldb::dap_codec] <-- {"seq":16,"type":"event","event":"breakpoint","body":{"breakpoint":{"id":1,"line":2,"message":"Resolved locations: 1","verified":true},"reason":"changed"}}
[DEBUG codelldb::dap_codec] <-- {"seq":17,"type":"event","event":"module","body":{"module":{"addressRange":"100014000","id":"100014000","name":"dyld","path":"/usr/lib/dyld","symbolFilePath":"/usr/lib/dyld","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a27b1d0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":18,"type":"event","event":"module","body":{"module":{"addressRange":"100000000","id":"100000000","name":"test-cb","path":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolFilePath":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":19,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7970aac8 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000004 (modules-unloaded), data = {test-cb}
[DEBUG codelldb::dap_codec] <-- {"seq":20,"type":"event","event":"module","body":{"module":{"id":"FFFFFFFFFFFFFFFF","name":""},"reason":"removed"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad79714a18 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 1 type: locations removed}
[DEBUG codelldb::debug_session] Debug event: 0x7fad79714f08 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: locations removed}
[DEBUG codelldb::debug_session] Debug event: 0x7fad69751438 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 1 type: locations resolved}
[DEBUG codelldb::dap_codec] <-- {"seq":21,"type":"event","event":"breakpoint","body":{"breakpoint":{"id":1,"line":2,"message":"Resolved locations: 1","verified":true},"reason":"changed"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad79714f08 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000002 (modules-loaded), data = {dyld, test-cb}
[DEBUG codelldb::dap_codec] <-- {"seq":22,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B0A7000","id":"7FF81B0A7000","name":"dyld","path":"/usr/lib/dyld","symbolFilePath":"/usr/lib/dyld","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":23,"type":"event","event":"module","body":{"module":{"addressRange":"100000000","id":"100000000","name":"test-cb","path":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolFilePath":"/Users/adamfowler/Temp/test-cb/.build/debug/test-cb","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] --> {"command":"threads","type":"request","seq":10}
[DEBUG codelldb::dap_codec] <-- {"seq":24,"type":"response","request_seq":10,"success":true,"command":"threads","body":{"threads":[{"id":36320021,"name":"1: tid=36320021"}]}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a195168 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: locations resolved}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1e4db8 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: locations resolved}
[DEBUG codelldb::dap_codec] <-- {"seq":25,"type":"event","event":"breakpoint","body":{"breakpoint":{"id":2,"message":"Resolved locations: 2","verified":true},"reason":"changed"}}
[DEBUG codelldb::dap_codec] <-- {"seq":26,"type":"event","event":"breakpoint","body":{"breakpoint":{"id":2,"message":"Resolved locations: 2","verified":true},"reason":"changed"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1e4e58 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000001 (breakpoint-changed), data = {bkpt: 2 type: locations added}
[DEBUG codelldb::dap_codec] <-- {"seq":27,"type":"event","event":"breakpoint","body":{"breakpoint":{"id":2,"message":"Resolved locations: 2","verified":true},"reason":"changed"}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad797a63f8 Event: broadcaster = 0x7fad3983ea30 (lldb.target), type = 0x00000002 (modules-loaded), data = {libSystem.B.dylib, libcache.dylib, libcommonCrypto.dylib, libcompiler_rt.dylib, libcopyfile.dylib, libcorecrypto.dylib, libdispatch.dylib, libdyld.dylib, libkeymgr.dylib, libmacho.dylib, libquarantine.dylib, libremovefile.dylib, libsystem_asl.dylib, libsystem_blocks.dylib, libsystem_c.dylib, libsystem_collections.dylib, libsystem_configuration.dylib, libsystem_containermanager.dylib, libsystem_coreservices.dylib, libsystem_darwin.dylib, libsystem_dnssd.dylib, libsystem_featureflags.dylib, libsystem_info.dylib, libsystem_m.dylib, libsystem_malloc.dylib, libsystem_networkextension.dylib, libsystem_notify.dylib, libsystem_sandbox.dylib, libsystem_secinit.dylib, libsystem_kernel.dylib, libsystem_platform.dylib, libsystem_pthread.dylib, libsystem_symptoms.dylib, libsystem_trace.dylib, libunwind.dylib, libxpc.dylib, libc++abi.dylib, libobjc.A.dylib, liboah.dylib, libc++.1.dylib, libswiftCore.dylib}
[DEBUG codelldb::dap_codec] <-- {"seq":28,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82709C000","id":"7FF82709C000","name":"libSystem.B.dylib","path":"/usr/lib/libSystem.B.dylib","symbolFilePath":"/usr/lib/libSystem.B.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":29,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827097000","id":"7FF827097000","name":"libcache.dylib","path":"/usr/lib/system/libcache.dylib","symbolFilePath":"/usr/lib/system/libcache.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":30,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827052000","id":"7FF827052000","name":"libcommonCrypto.dylib","path":"/usr/lib/system/libcommonCrypto.dylib","symbolFilePath":"/usr/lib/system/libcommonCrypto.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":31,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82707B000","id":"7FF82707B000","name":"libcompiler_rt.dylib","path":"/usr/lib/system/libcompiler_rt.dylib","symbolFilePath":"/usr/lib/system/libcompiler_rt.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":32,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827071000","id":"7FF827071000","name":"libcopyfile.dylib","path":"/usr/lib/system/libcopyfile.dylib","symbolFilePath":"/usr/lib/system/libcopyfile.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":33,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B19A000","id":"7FF81B19A000","name":"libcorecrypto.dylib","path":"/usr/lib/system/libcorecrypto.dylib","symbolFilePath":"/usr/lib/system/libcorecrypto.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":34,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B25E000","id":"7FF81B25E000","name":"libdispatch.dylib","path":"/usr/lib/system/libdispatch.dylib","symbolFilePath":"/usr/lib/system/libdispatch.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":35,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B3E6000","id":"7FF81B3E6000","name":"libdyld.dylib","path":"/usr/lib/system/libdyld.dylib","symbolFilePath":"/usr/lib/system/libdyld.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":36,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82708D000","id":"7FF82708D000","name":"libkeymgr.dylib","path":"/usr/lib/system/libkeymgr.dylib","symbolFilePath":"/usr/lib/system/libkeymgr.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":37,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827031000","id":"7FF827031000","name":"libmacho.dylib","path":"/usr/lib/system/libmacho.dylib","symbolFilePath":"/usr/lib/system/libmacho.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":38,"type":"event","event":"module","body":{"module":{"addressRange":"7FF826605000","id":"7FF826605000","name":"libquarantine.dylib","path":"/usr/lib/system/libquarantine.dylib","symbolFilePath":"/usr/lib/system/libquarantine.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":39,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82708B000","id":"7FF82708B000","name":"libremovefile.dylib","path":"/usr/lib/system/libremovefile.dylib","symbolFilePath":"/usr/lib/system/libremovefile.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":40,"type":"event","event":"module","body":{"module":{"addressRange":"7FF8200AB000","id":"7FF8200AB000","name":"libsystem_asl.dylib","path":"/usr/lib/system/libsystem_asl.dylib","symbolFilePath":"/usr/lib/system/libsystem_asl.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":41,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B13C000","id":"7FF81B13C000","name":"libsystem_blocks.dylib","path":"/usr/lib/system/libsystem_blocks.dylib","symbolFilePath":"/usr/lib/system/libsystem_blocks.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":42,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B2A8000","id":"7FF81B2A8000","name":"libsystem_c.dylib","path":"/usr/lib/system/libsystem_c.dylib","symbolFilePath":"/usr/lib/system/libsystem_c.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":43,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827083000","id":"7FF827083000","name":"libsystem_collections.dylib","path":"/usr/lib/system/libsystem_collections.dylib","symbolFilePath":"/usr/lib/system/libsystem_collections.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":44,"type":"event","event":"module","body":{"module":{"addressRange":"7FF825894000","id":"7FF825894000","name":"libsystem_configuration.dylib","path":"/usr/lib/system/libsystem_configuration.dylib","symbolFilePath":"/usr/lib/system/libsystem_configuration.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":45,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82490C000","id":"7FF82490C000","name":"libsystem_containermanager.dylib","path":"/usr/lib/system/libsystem_containermanager.dylib","symbolFilePath":"/usr/lib/system/libsystem_containermanager.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":46,"type":"event","event":"module","body":{"module":{"addressRange":"7FF826CF0000","id":"7FF826CF0000","name":"libsystem_coreservices.dylib","path":"/usr/lib/system/libsystem_coreservices.dylib","symbolFilePath":"/usr/lib/system/libsystem_coreservices.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":47,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81E128000","id":"7FF81E128000","name":"libsystem_darwin.dylib","path":"/usr/lib/system/libsystem_darwin.dylib","symbolFilePath":"/usr/lib/system/libsystem_darwin.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":48,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82708E000","id":"7FF82708E000","name":"libsystem_dnssd.dylib","path":"/usr/lib/system/libsystem_dnssd.dylib","symbolFilePath":"/usr/lib/system/libsystem_dnssd.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":49,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B2A5000","id":"7FF81B2A5000","name":"libsystem_featureflags.dylib","path":"/usr/lib/system/libsystem_featureflags.dylib","symbolFilePath":"/usr/lib/system/libsystem_featureflags.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":50,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B411000","id":"7FF81B411000","name":"libsystem_info.dylib","path":"/usr/lib/system/libsystem_info.dylib","symbolFilePath":"/usr/lib/system/libsystem_info.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":51,"type":"event","event":"module","body":{"module":{"addressRange":"7FF826FCB000","id":"7FF826FCB000","name":"libsystem_m.dylib","path":"/usr/lib/system/libsystem_m.dylib","symbolFilePath":"/usr/lib/system/libsystem_m.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":52,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B231000","id":"7FF81B231000","name":"libsystem_malloc.dylib","path":"/usr/lib/system/libsystem_malloc.dylib","symbolFilePath":"/usr/lib/system/libsystem_malloc.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":53,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82003A000","id":"7FF82003A000","name":"libsystem_networkextension.dylib","path":"/usr/lib/system/libsystem_networkextension.dylib","symbolFilePath":"/usr/lib/system/libsystem_networkextension.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":54,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81E56D000","id":"7FF81E56D000","name":"libsystem_notify.dylib","path":"/usr/lib/system/libsystem_notify.dylib","symbolFilePath":"/usr/lib/system/libsystem_notify.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":55,"type":"event","event":"module","body":{"module":{"addressRange":"7FF825898000","id":"7FF825898000","name":"libsystem_sandbox.dylib","path":"/usr/lib/system/libsystem_sandbox.dylib","symbolFilePath":"/usr/lib/system/libsystem_sandbox.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":56,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827088000","id":"7FF827088000","name":"libsystem_secinit.dylib","path":"/usr/lib/system/libsystem_secinit.dylib","symbolFilePath":"/usr/lib/system/libsystem_secinit.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":57,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B3A0000","id":"7FF81B3A0000","name":"libsystem_kernel.dylib","path":"/usr/lib/system/libsystem_kernel.dylib","symbolFilePath":"/usr/lib/system/libsystem_kernel.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":58,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B407000","id":"7FF81B407000","name":"libsystem_platform.dylib","path":"/usr/lib/system/libsystem_platform.dylib","symbolFilePath":"/usr/lib/system/libsystem_platform.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":59,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B3DA000","id":"7FF81B3DA000","name":"libsystem_pthread.dylib","path":"/usr/lib/system/libsystem_pthread.dylib","symbolFilePath":"/usr/lib/system/libsystem_pthread.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":60,"type":"event","event":"module","body":{"module":{"addressRange":"7FF821A03000","id":"7FF821A03000","name":"libsystem_symptoms.dylib","path":"/usr/lib/system/libsystem_symptoms.dylib","symbolFilePath":"/usr/lib/system/libsystem_symptoms.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":61,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B180000","id":"7FF81B180000","name":"libsystem_trace.dylib","path":"/usr/lib/system/libsystem_trace.dylib","symbolFilePath":"/usr/lib/system/libsystem_trace.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":62,"type":"event","event":"module","body":{"module":{"addressRange":"7FF82705E000","id":"7FF82705E000","name":"libunwind.dylib","path":"/usr/lib/system/libunwind.dylib","symbolFilePath":"/usr/lib/system/libunwind.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":63,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B140000","id":"7FF81B140000","name":"libxpc.dylib","path":"/usr/lib/system/libxpc.dylib","symbolFilePath":"/usr/lib/system/libxpc.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":64,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B38A000","id":"7FF81B38A000","name":"libc++abi.dylib","path":"/usr/lib/libc++abi.dylib","symbolFilePath":"/usr/lib/libc++abi.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":65,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B06B000","id":"7FF81B06B000","name":"libobjc.A.dylib","path":"/usr/lib/libobjc.A.dylib","symbolFilePath":"/usr/lib/libobjc.A.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":66,"type":"event","event":"module","body":{"module":{"addressRange":"7FF827069000","id":"7FF827069000","name":"liboah.dylib","path":"/usr/lib/liboah.dylib","symbolFilePath":"/usr/lib/liboah.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":67,"type":"event","event":"module","body":{"module":{"addressRange":"7FF81B331000","id":"7FF81B331000","name":"libc++.1.dylib","path":"/usr/lib/libc++.1.dylib","symbolFilePath":"/usr/lib/libc++.1.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::dap_codec] <-- {"seq":68,"type":"event","event":"module","body":{"module":{"addressRange":"7FF829828000","id":"7FF829828000","name":"libswiftCore.dylib","path":"/usr/lib/swift/libswiftCore.dylib","symbolFilePath":"/usr/lib/swift/libswiftCore.dylib","symbolStatus":"Symbols loaded."},"reason":"new"}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 1 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a194e60 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad59718fc0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":69,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 2 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a12f690 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d2410 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":70,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 3 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a130300 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a130370 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":71,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 4 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a26d0d0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d1980 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":72,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 5 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d19b0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad59719250 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":73,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 6 

[DEBUG codelldb::debug_session] Debug event: 0x7fad29738b40 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad29731de0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":74,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 7 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d1a90 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d1ae0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":75,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 8 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a2770d0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a279570 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":76,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 9 

...

[DEBUG codelldb::debug_session] Debug event: 0x7fad6971aaf0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad5971f630 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":120,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 53 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a293f20 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a28bfe0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":121,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 54 

[DEBUG codelldb::debug_session] Debug event: 0x7fad5971b420 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a278690 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":122,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 55 

[DEBUG codelldb::debug_session] Debug event: 0x7fad5971b380 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad5971a6f0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":123,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 56 

[DEBUG codelldb::debug_session] Debug event: 0x7fad6971eb50 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad6971bc40 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":124,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 57 

...

[DEBUG codelldb::debug_session] Debug event: 0x7fad797a63f0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad797a6440 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":165,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 98 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a2954e0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad6971e760 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":166,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 99 

[DEBUG codelldb::debug_session] Debug event: 0x7fad69717f60 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad6971e700 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":167,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session::breakpoints] Callback for breakpoint location 1.1: where = test-cb`test_cb_main + 262 at main.swift:2:11, address = 0x0000000100006f26, resolved, hit count = 100 

[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1d5150 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = stopped}
[DEBUG codelldb::debug_session] Debug event: 0x7fad7a1dac10 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = running}
[DEBUG codelldb::dap_codec] <-- {"seq":168,"type":"event","event":"continued","body":{"allThreadsContinued":true,"threadId":0}}
[DEBUG codelldb::debug_session] Debug event: 0x7fad5971c9f0 Event: broadcaster = 0x7fad3a05c638 (lldb.process), type = 0x00000001 (state-changed), data = { process = 0x7fad3a05c600 (pid = 66860), state = exited}
[DEBUG codelldb::dap_codec] <-- {"seq":169,"type":"event","event":"output","body":{"output":"Process exited with code 0.\n"}}
[DEBUG codelldb::dap_codec] <-- {"seq":170,"type":"event","event":"exited","body":{"exitCode":0}}
[DEBUG codelldb::dap_codec] <-- {"seq":171,"type":"event","event":"terminated","body":{}}
[DEBUG codelldb::dap_codec] --> {"command":"disconnect","arguments":{"restart":false,"terminateDebuggee":false},"type":"request","seq":11}
[DEBUG codelldb::dap_codec] <-- {"seq":172,"type":"response","request_seq":11,"success":true,"command":"disconnect"}
[DEBUG codelldb::dap_session] Client has disconnected
[DEBUG codelldb::debug_session] End of the requests stream
[DEBUG codelldb::debug_session] DebugSession::drop()
[DEBUG codelldb] End of the debug session
[DEBUG codelldb] Exiting
Debug adapter exit code=0 (0x0), signal=null.

x86_64-apple-macosx13.0

I had to chop some of the log as GitHub wouldn't let me post all of it.

vadimcn commented 1 year ago

Does the expression i==56 get evaluated correctly in the debug console?

adam-fowler commented 1 year ago

Does the expression i==56 get evaluated correctly in the debug console?

If you mean does po i==56 returns the correct value then yes

vadimcn commented 1 year ago

No, ?i==56, or enter i==56 in WATCH panel.

adam-fowler commented 1 year ago

Ok, ?i==56 return false regardless of value. Interestingly if I compare a string it works eg ?s=="test"

puremourning commented 1 year ago

I'm not sure if it's related, so feel free to hide this comment if not, but I have a similarly odd behaviour where printing a variable in codelldb via watches or hover prints a different value from the usual po or frame variable commands:

This is CodeLLDB (this is the evaluate request in commands mode with expressions set to native):

Console is in 'commands' mode, prefix expressions with '?'.
Launching: /Users/ben/.vim/bundle/vimspector/support/test/cpp/simple_c_program/test_char_u
Launched process 39381
> po foo

"ptr"
> frame variable foo

(char_u *) foo =
 0x0000000100003f7c "ptr"
> ?foo

'p'
> ?foo,s

"ptr"

It does seem that LLDB's expression evaluator returns different representations for some things than the object printer. But then again, in lldb commas line:

(lldb) expr foo
(char_u *) $2 = 0x0000000100003f7c "ptr"
(lldb) p foo
(char_u *) $3 = 0x0000000100003f7c "ptr"
vadimcn commented 1 year ago

I'm not sure how the simple expression evaluator interacts with Swift values... "Simple expressions" are evaluated using this Python class, which wraps the native LLDB SBValue. In particular I wonder how this bit does. As you can see, anything that is not a primitive int or float get converted to a string (potentially via used-defined type summary). This could be problematic if Swift doesn't use a primitive int type for its integers.

@adam-fowler, Since you use Swift-enabled liblldb, you might get better results using the native expressions.

adam-fowler commented 1 year ago

So ?/nat i==56 works and /nat i==56 works in a breakpoint.

adam-fowler commented 1 year ago

I'm guessing I can just set lldb > Launch: Expressions to native and I shouldn't need to add the /nat prefix

vadimcn commented 1 year ago

I'm guessing I can just set lldb > Launch: Expressions to native

Yes, makes sense in your case.

adam-fowler commented 1 year ago

Would this be a similar situation to where a pointer to data eg UnsafeMutableRawPointer does not get treated as a pointer and does not get dereferenced in the variables view?