Skip to content

Make graph-based type-checking fully deterministic and do not auto-disable it in deterministic builds. #14734

@safesparrow

Description

@safesparrow

Graph-based parallel type-checking implemented as an experimental feature in #14494 introduces non-determinism and it gets auto-disabled in deterministic builds.

So far the non-determinism originates from two different places:

  1. PDB generation - can be disabled with --debug- or separate PDB files can be used to make the .dll file itself (more) deterministic
  2. Certain other circumstances as documented in Correct signatures. #14703 - so far those were only reproduced in the FSharp.Compiler.Service and FSharp.Core projects and not anywhere else.

This issue is to solve both and no longer auto-disable graph-based type-checking in deterministic builds.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    Status

    New

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions