Skip to content
  • Simon Marlow's avatar
    [project @ 2001-03-02 16:15:53 by simonmar] · 435b1086
    Simon Marlow authored
    ASSERT in updateWithIndirection() that we haven't already updated this
    object with an indirection, and fix two places in the RTS where this
    could happen.
    
    The problem only occurs when we're in a black-hole-style loop, and
    there are multiple update frames on the stack pointing to the same
    object (this is possible because of lazy black-holing).  Both stack
    squeezing and asynchronous exception raising walk down the stack and
    remove update frames, updating their contents with indirections.  If
    we don't protect against multiple updates, the mutable list in the old
    generation may get into a bogus state.
    435b1086