In reply to @swalf "Hello, I have a": Chat Gpt Yeah, debugging in Nim can be a bit tricky, especially with how the garbage collector (GC) has changed over time. Here’s the current situation: 1. GDB and nim-gdb.py Issues The nim-gdb.py script, which was supposed to provide better Nim variable inspection, hasn't kept up with recent Nim versions. Many users report that it doesn’t work properly anymore. Because Nim’s GC has changed, pointers to heap-allocated objects may not be easy to inspect directly in GDB. 2. Workarounds for Variable Inspection Using --stackTrace:on and --debugger:native This gives better debugging symbols for GDB. You can try --passC:-g --passL:-g to improve debugging information. Printing Debug Info Manually Sometimes, echo or debugEcho is the best way to see variable values while debugging. --lineDir:on This can sometimes improve source mapping in GDB. 3. Alternative Debuggers LLDB: Some people have had more luck using LLDB instead of GDB. RR (Mozilla's Debugger): If you need a more powerful debugging experience, rr can be useful for replay debugging. VSCode/Nim Plugin Debugging: The Nim extension for VSCode is still a work in progress, but using it with native debugger can sometimes work better. 4. Future Improvements Nim’s debugging story is improving, but right now, it’s not as polished as something like Rust’s rust-gdb or rust-lldb. The Nim community is aware of these issues, and there might be improvements in newer releases. For now, debugging Nim effectively often means relying on echo, careful use of debugger hooks, and manually inspecting memory when needed.