-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Stepping into constructors broken #3443
Comments
What is your debugger "type"? I'm not reproing this with the cppvsdbg. Are you able to step into library constructors such as std::lock_guard? |
It's cppvsdbg and I'm using Visual Studio 12.0. Compiler command-line is:
Linker command-line is:
If it makes a difference I'm using my own CRT but that shouldn't affect codegen. |
Does this repro with 0.21.0 or earlier? We updated our cppvsdbg in 0.22.0 in order to support the newer C++17 language features like structured bindings (see #3197 ), which may have regressed older compilers. |
I just tried these versions:
It repros on all of them. Interestingly, where it steps varies between builds; I've had one constructor step off beyond the end of a file. I have never really paid attention to stepping into constructors before, but I do know that it works on x64/Linux. I might be able to get a simple repro. |
It's possible it could be a bug with how the pdb info is generated with that compiler, i.e. you might try a newer compiler? Our debugger team is pretty busy with other stuff, so I don't know if they'll have time to investigate a repro. |
I have the same issue with WinDbg and I'm sure this is new behaviour. |
Issue Type: Bug
Stepping into constructors seems to step elsewhere. See this example:
Actions taken:
game::Host
constructor.The only way to work around this is to put a breakpoint inside the constructor itself:
Actions taken:
In cases where the constructor has initializers the separation is worse.
It appears to be stepping through some prologue code: if I continue to press F10 in the first example it will eventually end up back at the constructor entry-point, allowing me to continue debugging.
Extension version: 0.22.1
VS Code version: Code 1.33.0 (0dd516dd412d42323fc3464531b1c715d51c4c1a, 2019-04-04T15:14:28.026Z)
OS version: Windows_NT x64 10.0.17134
System Info
checker_imaging: disabled_off
flash_3d: enabled
flash_stage3d: enabled
flash_stage3d_baseline: enabled
gpu_compositing: enabled
multiple_raster_threads: enabled_on
native_gpu_memory_buffers: disabled_software
rasterization: enabled
surface_synchronization: enabled_on
video_decode: enabled
webgl: enabled
webgl2: enabled
The text was updated successfully, but these errors were encountered: