Skip to content

Remove always-on language feature flag: ExtendedFixedBindings #20194

Description

@T-Gro

LanguageFeature.ExtendedFixedBindings has shipped since F# 8.0 and is enabled for every selectable language version (the minimum accepted --langversion is 8.0). Its feature flag can therefore never be turned off, so it is dead configuration. This issue removes the flag and collapses the guarded code to its enabled behaviour.

What to remove

  • The ExtendedFixedBindings case in LanguageFeatures.fs and LanguageFeatures.fsi
  • Its entry in the features map and its GetFeatureString arm
  • The featureExtendedFixedBindings string in FSComp.txt
  • Every SupportsFeature LanguageFeature.ExtendedFixedBindings / checkLanguageFeatureAndRecover … ExtendedFixedBindings guard — keep only the enabled path and delete the legacy branch
  • Adjust affected tests and baselines accordingly

Consequence: --disableLanguageFeature:ExtendedFixedBindings is no longer a recognised feature name.

Version mapping

LanguageFeature.ExtendedFixedBindings, languageVersion80

Feature string

featureExtendedFixedBindings,"extended fixed bindings for byref and GetPinnableReference"

Part of #20139

Activity

  1. added this to the Backlog milestone on Aug 4, 2026
  2. self-assigned this
    on Aug 4, 2026
  3. added a commit that references this issue on Sep 4, 2026
    f28be2b
  4. added a commit that references this issue on Oct 7, 2026
    315612f
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

Relationships

None yet

Development

No branches or pull requests

Issue actions