What problem does it solve?
F# developers hit breakpoints that never bind, missing sequence points, or incorrect .pdb output when debugging compiled code. This Skill guides you through building the F# compiler, running Visual Studio integration tests, and inspecting IL/PDB output to fix these debugging issues at the compiler level.
Core Features & Use Cases
- Build and Test Workflow: Build the compiler with
Build.cmd -c Debug and run xUnit2 VS Extensibility integration tests via the xunit console runner (not dotnet test).
- IL/PDB Inspection: Locate sequence point emission in
IlxGen.fs, PDB writing in ilwritepdb.fs, and collection lowering in LowerComputedCollections.fs.
- Use Case: A breakpoint in a
seq expression never binds in Visual Studio. Use this Skill to inspect the generated IL, find that the sequence point sits at a non-stack-empty offset, and move the debug point in IlxGen.fs rather than adding runtime instructions.
Quick Start
Ask the assistant to investigate why an F# breakpoint is not binding and have it build the compiler, run the VS integration tests, and inspect the IL sequence points.