Skip to content
  • Sebastian Graf's avatar
    b570da84
    CorePrep: Don't speculatively evaluate recursive calls (#20836) · b570da84
    Sebastian Graf authored
    In #20836 we have optimised a terminating program into an endless loop,
    because we speculated the self-recursive call of a recursive DFun.
    Now we track the set of enclosing recursive binders in CorePrep to prevent
    speculation of such self-recursive calls.
    
    See the updates to Note [Speculative evaluation] for details.
    
    Fixes #20836.
    b570da84
    CorePrep: Don't speculatively evaluate recursive calls (#20836)
    Sebastian Graf authored
    In #20836 we have optimised a terminating program into an endless loop,
    because we speculated the self-recursive call of a recursive DFun.
    Now we track the set of enclosing recursive binders in CorePrep to prevent
    speculation of such self-recursive calls.
    
    See the updates to Note [Speculative evaluation] for details.
    
    Fixes #20836.
Loading