Skip to content

breakpoints doesnt work with anonymous records in .net core sdk #6512

Description

@enricosada

Setting breakpoint if the code contains anonymous records, doesnt work

I not yet tried in VS, but with latest .net core debugger and latest .net core sdks affect vscode
Ionide doesnt matter, the debugger is in MS code and i am using the VSCode Debug tab with tasks.json and launch.json

Repro steps

create a simple program with dotnet new console -lang f#

[<EntryPoint>]
let main argv =
    printfn "Hello World from F#!"

    // let a = {| A = 1 |}

    printfn "A"

    // printfn "%A" a

    0 // return an integer exit code

and set some breakpoint at the instructions.
Running in debug, it stop on breakpoint and debug works

if i uncomment the lines, the debugger doesnt stop on any breakpoint (not just anon records)

if i set debugger to stop at entry point, it stop an entry and i can step by step, but breakpoint are not enabled

image

the debug info show it cannot bind the line to breakpoint

Breakpoint warning: No executable code of the debugger’s target code type is associated with this line.
Possible causes include: conditional compilation, compiler optimizations, or the target architecture of this line is not supported by the current debugger code type. - e:\temp\pwa\Program.fs:6

Expected behavior

breakpoints works

Actual behavior

breakpoints doesnt works

Known workarounds

stop at entry point maybe, in vscode is done at launch.json

            "stopAtEntry": true,

Related information

can repro in .NET Core 2.1.603 and 3.0.100-preview3-010431

.NET Core SDK (reflecting any global.json):
 Version:   2.1.603
 Commit:    ae71c68742

Runtime Environment:
 OS Name:     Windows
 OS Version:  10.0.17134
 OS Platform: Windows
 RID:         win10-x64
 Base Path:   C:\Program Files\dotnet\sdk\2.1.603\

Host (useful for support):
  Version: 3.0.0-preview3-27503-5
  Commit:  3844df9537

.NET Core SDKs installed:
  2.1.603 [C:\Program Files\dotnet\sdk]
  3.0.100-preview3-010431 [C:\Program Files\dotnet\sdk]

.NET Core runtimes installed:

  Microsoft.NETCore.App 2.1.8 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 2.1.10 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.NETCore.App 3.0.0-preview3-27503-5 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
  Microsoft.WindowsDesktop.App 3.0.0-preview3-27504-2 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

C# VSCode extension (who contains the debugger stuff)

Name: C#
Id: ms-vscode.csharp
Description: C# for Visual Studio Code (powered by OmniSharp).
Version: 1.18.0
Publisher: Microsoft
VS Marketplace Link: https://marketplace.visualstudio.com/items?itemName=ms-vscode.csharp

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions