-
Notifications
You must be signed in to change notification settings - Fork 1.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Step into specific ability #2488
Comments
Seems like compiler support is required for this. |
@Trass3r Didn't know gdb and DWARF don't support that. Thanks for the link. That said, If there's at least one debugger that supports it (VS debugger) it would probably still make sense to have the machinery on the VSCode side. Once gdb catches up, the client-side bits will already be in place. |
Some old WIP code for it: https://github.com/Trass3r/MIEngine/commits/StepInTargets |
How about at least defining some sort of blacklist of function names you don't want to step into? That way you could at least avoid stepping into every std::move(), std::unique_ptr(), etc. This could save of a lot of debugging pain. |
Fwiw you can do that on the debugger level. |
Thanks fot the hint, that was very valuable to me. 👍 How about adding some GUI-support to the VSCode plugin so the user can choose functions / files to be skipped during debugging. A list of skipped stuff (just like there is a list for breakpoints) could be managed in a seperate window. Technically for each item on this list a GDB command is sent to the debugger on startup (or on the fly while running). In theory this could also go to a custom gdbinit-file, if that makes things easier. |
Debugging with VS allows "Step into specific", which is useful when the currently line has a bunch of contructors/conversions that get invoked for parameters to a function (e.g. shared_ptr move constructors), so "Step into specific" enables stepping into the actual method that is desired.
Using Go to Def and setting a breakpoint in the definition is sometimes a workaround (versus a bunch of step in/outs).
The text was updated successfully, but these errors were encountered: