When assembling projects with ca65, I often have ld65 output a "VICE label file" containing all labels I've used in my program and their addresses, so I can use this information for debugging (mostly for setting up breakpoints).
Unfortunately, ld65 doesn't output scope names to the label file, so there's no distinction between Video::Initialize and Audio::Initialize, for example. Both show up as just "Initialize", which is not helpful at all for debugging.
A while ago I started making heavy use of scopes to encapsulate things in my source code, but issues like this sometimes make me rethink this decision, and consider reverting to my old solution, which was to create artificial hierarchy using underscores (e.g. Video_Initialize and Audio_Initialize).
What are your thoughts on this? How do you conciliate scopes and debugging?
Unfortunately, ld65 doesn't output scope names to the label file, so there's no distinction between Video::Initialize and Audio::Initialize, for example. Both show up as just "Initialize", which is not helpful at all for debugging.
A while ago I started making heavy use of scopes to encapsulate things in my source code, but issues like this sometimes make me rethink this decision, and consider reverting to my old solution, which was to create artificial hierarchy using underscores (e.g. Video_Initialize and Audio_Initialize).
What are your thoughts on this? How do you conciliate scopes and debugging?