You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I expect the debugger to not step into Bind even by pressing F11, as if it were defined in a referenced assembly with no source code available. As MSDN reads:
This attribute is provided for use by source code debuggers; the common language runtime is not affected by it. For example, the Visual Studio debugger does not stop in a method that is marked with this attribute even if a breakpoint is set in the method.
@vasily-kirichenko As so often in F#, the attribute applies to the compiled form of Bind, not the source form. The compiled form include multiple lambdas, whose Invoke methods are not marked with the attribute. So you are stepping into the Invoke method of one of these lamdas.
Right now, it isn't possible to reason about this without thinking about the compiled form
The only thought I have is that we could automatically propagate the attribute into those invoke methods.
We should find out what C# does with inner lambdas though
dsyme
changed the title
DebuggerStepThrough attribute is not respected
DebuggerStepThrough attribute is not respected for async, task and other CEs
Aug 23, 2021
I find myself here stepping with F10:
which should never happen.
The text was updated successfully, but these errors were encountered: