Skip to content

Consider emitting LocalConstants in Portable debug info #12003

@dsyme

Description

@dsyme

Our Portable PDB writer doesn't emit "Local Constants" (aka "compile time values")

This information is evidently emitted by C# in some circumstances, it's not clear to me where (it's not for .NET literals, which have their own metadata). See https://github.com/dotnet/roslyn/blob/3d8acbd585a75e9cdb3509623bf6c39ceb46b2c2/src/Compilers/Core/Portable/PEWriter/MetadataWriter.PortablePdb.cs#L125

Portable PDB spec is here: https://github.com/dotnet/runtime/blob/main/docs/design/specs/PortablePdb-Metadata.md

It may be useful for F# to emit this information in some situation once we clarify what debugging experience it supports.

  • clarify user-facing debug experience this supports
  • decide if it's useful for F#
  • add code to emit this if it's useful

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status

    New

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions