Skip to content

Cubic/Exponential compilation time for very large anonymous record #11638

Open
@DedSec256

Description

@DedSec256

See current repro at end of issue


Repro steps

  1. Open Program.fs in LargeArrayRepro.zip.
    It contains a large array of constants.

  2. Try typing let vector = at the beginning and you will get a Stack Overflow in Rider and Visual Studio (16.10)

image

This is probably because the array is treated as a pattern before you write =
Stacktrace demonstrates multiple recursive calls leading to an overflow.

image

Metadata

Metadata

Assignees

No one assigned

    Labels

    Area-Compiler-PatternMatchingpattern compilation, active patterns, performance, codegenBugImpact-Medium(Internal MS Team use only) Describes an issue with moderate impact on existing code.

    Type

    Projects

    Status

    New

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions