-
Notifications
You must be signed in to change notification settings - Fork 844
Open
Labels
Area-Compiler-StateMachinesSequence, list, task and other state machine compilationSequence, list, task and other state machine compilationFeature ImprovementImpact-Low(Internal MS Team use only) Describes an issue with limited impact on existing code.(Internal MS Team use only) Describes an issue with limited impact on existing code.
Milestone
Description
This small example causes a stack overflow, but shouldn't:
let rec loop r = seq {
if r > 0 then
let rec unused() = unused()
yield r
yield! loop r
}
printfn "%i" (Seq.nth 10000000 (loop 1))
Removing the conditional or replacing the unused recursive definition with an unused non-recursive definition both appear to result in the expected behavior of constant stack space usage.
Metadata
Metadata
Assignees
Labels
Area-Compiler-StateMachinesSequence, list, task and other state machine compilationSequence, list, task and other state machine compilationFeature ImprovementImpact-Low(Internal MS Team use only) Describes an issue with limited impact on existing code.(Internal MS Team use only) Describes an issue with limited impact on existing code.
Type
Projects
Status
In Progress